Commit Graph

2198 Commits

Author SHA1 Message Date
Hidde Beydals e9c3aab0c3
Merge pull request #10 from fluxcd/factor-out-ctrl-kind
Factor out kind injection into controllers
2020-04-12 23:23:36 +02:00
Hidde Beydals 4bde6bf880 Prevent delete from wiping all artifacts for kind 2020-04-12 22:07:57 +02:00
Hidde Beydals 3e0810aefe Give namespace precedence in calc artifact path 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 bb8ec6e328
Merge pull request #7 from fluxcd/helmchart
Introduce HelmChart API and controller
2020-04-12 18:55:44 +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
Stefan Prodan 7a80807893
Merge pull request #8 from fluxcd/artifact-status
Add artifact type to API
2020-04-12 18:21:13 +03: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 461c015273 Add artifact type to API 2020-04-12 17:31:25 +03:00
Stefan Prodan fa6bccbc72
Merge pull request #6 from fluxcd/git-auth
Implement Git authentication
2020-04-12 17:30:07 +03:00
stefanprodan 41d36f54ae Wrap errors in git controller 2020-04-12 17:13:50 +03:00
stefanprodan 12d25ca47a Add symlink for latest Git artifact 2020-04-12 09:56:52 +03:00
stefanprodan 786071fe3c Add symlink helper to storage 2020-04-12 09:56:03 +03:00
stefanprodan 06af12739d Implement Git SSH authentication 2020-04-11 21:30:39 +03:00
stefanprodan bbc25c3de0 Implement Git HTTP authentication 2020-04-11 12:14:16 +03:00
stefanprodan e2d28296e1 Add GitRepositoryRef type
- add commit ref field
- implement commit checkout
2020-04-11 11:21:12 +03:00
Stefan Prodan 686fdd49dc
Merge pull request #5 from fluxcd/api-v1alpha1
Introduce storage abstraction and locking mechanism
2020-04-11 09:10:24 +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 98deb3fa54 Add file lock helper to Storage
- use https://github.com/golang/go/tree/master/src/cmd/go/internal/lockedfile
2020-04-10 16:08:05 +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 ce01399c15 Refactor git controller fs operations
- use storage helper in GitRepositoryReconciler
- implement artifacts GC
- rename status artifacts to artifact
2020-04-10 12:01:06 +03:00
stefanprodan d1fb8e1ade Add storage helpers
- add storage and artifact types
- extract fs operations to storage functions
- construct artifact paths from Kubernetes objects metadata
2020-04-10 11:51:15 +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
Stefan Prodan 9bd597c846
Merge pull request #4 from fluxcd/helm-repo-index
Download Helm repository indexes w/ Helm's getter
2020-04-09 20:58:13 +03:00
Hidde Beydals 81873e7553 Download Helm repository indexes w/ Helm's getter 2020-04-09 15:53:38 +02:00
Stefan Prodan 22bbab7fe4
Merge pull request #2 from fluxcd/rename
Project naming changes
2020-04-08 16:21:47 +03:00
Hidde Beydals 4d30a82ef4 Rename project to source-controller 2020-04-08 16:12:17 +03:00
Stefan Prodan a55cae2e2c
Merge pull request #1 from fluxcd/ci-e2e
Implement CI with GitHub Actions
2020-04-08 15:22:53 +03:00
stefanprodan d4b9e17800 Move dev deploy script to Makefile 2020-04-08 15:14:32 +03:00
stefanprodan 065825c12d Add smoke tests to CI 2020-04-08 14:26:07 +03:00
stefanprodan 86c2c9f745 Implement CI with GitHub Actions 2020-04-08 14:17:06 +03:00
stefanprodan 62350a944b Implement git tag semver filter 2020-04-07 13:22:55 +03:00
stefanprodan 98901f2909 Expose git artifacts inside the cluster 2020-04-07 10:49:57 +03:00
stefanprodan d2b0653c34 Setup build and deploy manifests 2020-04-06 20:37:53 +03:00
stefanprodan 037db0bc02 Implement repository artifacts local storage 2020-04-06 19:02:46 +03:00
stefanprodan 3efd54efd1 Add git repository artifacts to API 2020-04-06 19:02:14 +03:00
stefanprodan 3deb7caf9a Implement force sync via predicates 2020-04-06 15:41:57 +03:00
stefanprodan 9ad2be5b67 Add Git and Helm samples 2020-04-06 10:43:33 +03:00
stefanprodan de55b987e8 Implement Git sync with go-git 2020-04-06 10:43:06 +03:00
stefanprodan f4e568d4b9 Add Git branch and tag to API 2020-04-06 10:42:35 +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 6b31c57ba7 Add repository status conditions 2020-04-05 15:18:43 +03:00
stefanprodan 92b7b1fe43 Scaffold repository controllers 2020-04-05 12:34:29 +03:00
Stefan Prodan b9c9650fc9
Initial commit 2020-04-05 11:55:46 +03:00