Commit Graph

24 Commits

Author SHA1 Message Date
Hidde Beydals ab3879d170 controllers: check if != nil before defering 2020-04-16 11:11:51 +02:00
Hidde Beydals 45da46216c
Merge pull request #21 from fluxcd/log-context
Use same logger during reconcile operations
2020-04-14 12:08:53 +02:00
stefanprodan 1832b2d11d Introduce source interface
- add source interface with `GetArtifact` and `GetInterval` funcs
- implement source interface for all types
- fix HelmChart requeue
2020-04-14 12:49:31 +03:00
Hidde Beydals b0f4908af0 Use same logger during reconcile operations 2020-04-14 11:36:46 +02:00
Hidde Beydals 23f0b38ac2 Add helmchart/finalizers RBAC rule for OpenShift 2020-04-13 13:12:41 +02:00
Hidde Beydals ea610829c3 Helm repository and chart HTTP and TLS auth 2020-04-13 11:47:51 +02:00
Hidde Beydals 1b391f4896 Move artifact gc to delete event predicate 2020-04-13 01:35:44 +02:00
Hidde Beydals 629da726c6 Rename RepositoryChange to SourceChange predicate 2020-04-13 01:11:07 +02:00
Hidde Beydals 4bde6bf880 Prevent delete from wiping all artifacts for kind 2020-04-12 22:07:57 +02:00
Hidde Beydals 7e99998c5f Factor out injection of kind string in controllers 2020-04-12 22:07:53 +02:00
Hidde Beydals d378bd1852 Introduce HelmChart API and controller
- Add the HelmChart types and controller
- Semver expressions are found by utilizing Helm repository index
  helpers. As Helm makes use of `masterminds/semver`, the support
  for i.e. ranges less mature than the `GitRepository` implementation.
- Recorded semver is as defined in the metadata of the chart. The
  used name for the artifact does however include the checksum of the
  chart archive, as chart maintainers may not always properly apply
  semver.
- Switches to `sigs.k8s.io/yaml` for YAML operations as this among
  other things is able to properly unmarshal embedded structures.
- Directly requeues on transient errors instead of using the defined
  interval as a back-off strategy is applied on repeated failures.
2020-04-12 18:44:37 +02:00
stefanprodan f9a35a6613 Move status condition helpers to API 2020-04-12 18:12:28 +03:00
stefanprodan 2bbcd91544 Add artifact to Git and Helm repos status
- create index.yaml symlink for Helm repos
- set symlink URL in status
2020-04-12 17:39:07 +03:00
stefanprodan d1f76995ab Add ready condition helpers 2020-04-10 22:44:09 +03:00
stefanprodan 131b9b8e33 Lock artifact on helm index download
- cleanup locks with GC
2020-04-10 16:45:23 +03:00
stefanprodan 9dae1c43d7 Use storage helper in HelmRepositoryReconciler
- move checksum and file write operations to Storage
- implement GC
2020-04-10 15:16:31 +03:00
stefanprodan 8cd8d8f6f2 Consolidate status conditions
- Use the same condition type as https://github.com/kubernetes/enhancements/pull/1624 so it can be dropped in favour of the Kubernetes type when that PR is merged
2020-04-10 08:38:40 +03:00
Hidde Beydals 81873e7553 Download Helm repository indexes w/ Helm's getter 2020-04-09 15:53:38 +02:00
Hidde Beydals 4d30a82ef4 Rename project to source-controller 2020-04-08 16:12:17 +03:00
stefanprodan 3deb7caf9a Implement force sync via predicates 2020-04-06 15:41:57 +03:00
stefanprodan f740d434dc Add repository sync interval to API 2020-04-05 18:10:30 +03:00
stefanprodan 2fadfbd6fc Prevent reconciliation loop on status updates 2020-04-05 17:49:22 +03:00
stefanprodan d9ee2ab288 Implement Helm repository readiness 2020-04-05 16:41:26 +03:00
stefanprodan 92b7b1fe43 Scaffold repository controllers 2020-04-05 12:34:29 +03:00