Commit Graph

126 Commits

Author SHA1 Message Date
stefanprodan f79ac6dd44 Rename syncAt annotation to reconcileAt
Use `fluxcd.io/reconcileAt` annotation across all controllers.
2020-07-13 17:14:57 +03:00
stefanprodan a69af9d57c Add last attempted revision to status 2020-07-10 09:54:45 +03:00
stefanprodan 2ebd5b6450 Implement event recording
- emit Kubernetes events for reconciliation actions
- forward events to notification controller
- remove the Profile API/CRD
2020-07-01 20:39:48 +03:00
Hidde Beydals fefa8f07cb Generate API documentation 2020-06-19 17:00:10 +02:00
Hidde Beydals fdbf69cea5 Sort dependencies with Tarjan's SCCS algorithm 2020-05-08 14:30:07 +02:00
stefanprodan 8763bbec25 Update GC API spec and examples 2020-05-05 17:19:38 +03:00
stefanprodan f96f3e326f Implement pruning based on snapshots 2020-05-05 16:56:27 +03:00
stefanprodan dbe3e69508 Introduce garbage collection based on snapshots 2020-05-05 15:42:49 +03:00
stefanprodan 04c0ba0ce9 Add snapshot types to API 2020-05-05 13:39:20 +03:00
stefanprodan 5a73ba7477 Implement SA impersonation 2020-05-01 22:13:54 +03:00
stefanprodan 86f6e84d59 Report progressing status
Set ready condition to unknown while the reconciliation is progressing.
This allows other operators to wait for a sync to complete.
2020-04-27 00:39:48 +03:00
stefanprodan 696658dcc9 Record last applied revision
- add LastAppliedRevision field to Status
- set LastAppliedRevision after a successful sync
- add Status section spec
2020-04-24 00:44:32 +03:00
stefanprodan b88626c0cc Generate label transformers for the prune selectors 2020-04-23 12:52:35 +03:00
stefanprodan da1ad5b642 Add generate flag to Kustomization API 2020-04-22 20:33:38 +03:00
stefanprodan 4895bf16cc Introduce profiles
- add Profile type to API
- add AlertProvider to Profile
2020-04-21 14:01:51 +03:00
stefanprodan fe88706613 Introduce dependencies between kustomizations
- add DependsOn field to API
- implement ordered apply of kustomizations based on dependencies and readiness status
- retry execution every half a minute for kustomizations with dependencies that do not meet the ready condition
- add interdependent kustomizations to config testdata
2020-04-19 18:27:32 +03:00
stefanprodan 508b7cca6a Refactor controller sync
- extract sync operations to dedicated functions
- add health check failed reason
2020-04-19 11:04:05 +03:00
stefanprodan 8fd0d45916 Add timeout to API
- add timeout field to API (defaults to interval duration)
- set timeout for validation, apply and heath check operations
- set concurrent reconciles to 4 (avoid health checks from delaying other operations)
2020-04-19 09:44:32 +03:00
stefanprodan 0dae17ffd6 Introduce health assessment
- add health checks to API
- implement rollout status check
2020-04-19 01:28:58 +03:00
stefanprodan a3b8bcb310 Allow kustomize execution to be suspended 2020-04-18 18:16:20 +03:00
stefanprodan 3f50c71af4 Introduce validation
- add validation field to API
- perform dry-run apply
- add validation strategies to docs
2020-04-18 14:14:51 +03:00
stefanprodan eee47333cf Implement garbage collection
- add GarbageCollect predicate
- remove the Kubernetes objects previously applied on the cluster, based on the prune label select
- add garbage collection spec to docs
2020-04-17 13:25:36 +03:00
stefanprodan c564555eb0 Use Source interface instead of Git concrete type
- use TypedLocalObjectReference instead of LocalObjectReference for referencing a source
- update docs for GitRepository kind
- update source API to 0.0.1-alpha.1
2020-04-16 18:30:18 +03:00
stefanprodan ee74f8e329 Trigger kustomization apply on source changes
- detect revision changes in Git repositories
- index kustomizations based on source
- trigger kustomizations on revision changes
2020-04-16 10:40:28 +03:00
stefanprodan a3d9a8876a Introduce kustomization API 2020-04-15 15:15:31 +03:00
stefanprodan 3df6bfebfa Init controller with kubebuilder 2020-04-15 09:58:33 +03:00