Commit Graph

25 Commits

Author SHA1 Message Date
Stefan Prodan 1badc828b4
Replace deprecated dependencies
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-11-23 14:21:21 +02:00
Rishabh Bohra b8cebd3838
chore: remove deprecated io/ioutil
Signed-off-by: Rishabh Bohra <rishabhbohra01@gmail.com>
2021-10-29 20:28:25 +05:30
Stefan Prodan 1e01d800c5
Implement reconciliation using server-side apply
Reconciler behaviour:
- Creates an inventory of objects to be applied (persisted in-cluster under `.status.inventory`).
- Applies first custom resource definitions (CRDs) and namespaces, waits for them to register and only then applies the custom resources.
- Validates all resources with server-side dry-run apply (namespaced objects must contain `metadata.namespace`, defaulting to the `default` namespace is no longer supported).
- Reconciles only the resources that drifted.
- Prunes the objects that were previously applied but are missing from the current inventory.
- Emits events for only the resources that where created, configured or deleted.

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-09-30 18:34:40 +03:00
Stefan Prodan 6672928023
Merge pull request #364 from Kissy/generic-patches
Add support for in-line generic patches to Flux Kustomization API
2021-06-14 14:28:15 +03:00
Jane Liu L 6979dbab83
Move the GC checksum from labels to annotations
Signed-off-by: Jane Liu L <jane.l.liu@ericsson.com>
2021-06-11 21:06:24 +08:00
Guillaume Le Biller b797eac907
Implement generic patches in Kustomization
Allow patching multiple resources instead of a single existing one as
StrategicMerge & JSON6902 are forced to target existing named resources.

Signed-off-by: Guillaume Le Biller <glebiller@Traveldoo.com>
2021-06-11 09:04:37 +02:00
Stefan Prodan 0711908892
Workaround for kustomize build panic
Serialize kustomize build runs to avoid kyaml OpenAPI concurrent map read/write panic
https://github.com/kubernetes-sigs/kustomize/issues/3659

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-08 20:34:14 +03:00
Stefan Prodan e5ee0367f8
Upgrade to kustomize v4
- Upgrade sigs.k8s.io/kustomize/api from v0.7.4 to v0.8.9
- Upgrade sigs.k8s.io/cli-utils from v0.22.4 to v0.25.0
- Pin sigs.k8s.io/kustomize/kyaml to v0.10.17 (cli-utils compat)
- Pin k8s.io/kube-openapi v0.0.0-20201113171705-d219536bb9fd (cli-utils compat)

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-06-08 20:34:14 +03:00
Stefan Prodan 401fec6c8d
Allow disabling var substitution for certain resources
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-02-16 10:40:01 +02:00
Stefan Prodan 0ac1f9e631
Implement var substitution from ConfigMaps and Secrets
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-02-16 09:20:00 +02:00
Stefan Prodan f3d9c36691
Add support for variable substitutions
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-02-11 18:17:53 +02:00
Hidde Beydals 7c23accfeb Use Strategic Merge and JSON 6902 patches
Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-02-03 21:52:36 +01:00
Stefan Prodan 085588b632
Disable kyaml
Workaround for upstream bug: https://github.com/kubernetes-sigs/kustomize/issues/3446

Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2021-01-18 14:14:23 +02:00
Hidde Beydals 59c24e7d38 Look for all accepted Kustomization filenames
Before this commit we only checked if a `kustomization.yaml` existed at
the root of the given directory, this caused problems when people for
example used `.yml` as the extension, as the generated
`kustomization.yaml` would conflict with the `.yml` file.

After this commit all recognized Kustomization filenames as listed by
Kustomize itself are accepted, including files _without_ an extension
(`Kustomization`).

Signed-off-by: Hidde Beydals <hello@hidde.co>
2021-01-15 15:31:20 +01:00
Michał Flendrich af358709f5 No longer treat dirs as kustomization files.
Fixes https://github.com/fluxcd/kustomize-controller/issues/223

Signed-off-by: Michał Flendrich <michal@flendrich.pro>
2020-12-24 21:04:38 +01:00
Somtochi Onyekwere 5e62583cec Implements image overrides
Signed-off-by: Somtochi Onyekwere <somtochionyekwere@gmail.com>
2020-12-10 13:23:55 +01:00
Stefan Prodan 46f828ff43
Omit checksum label if GC is disabled
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-11-03 15:22:25 +02:00
Stefan Prodan dde74d9ea5
Change copyright to Flux authors
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-10-27 18:49:02 +02:00
Stefan Prodan ec0c43d311
Validate manifests when generating kustomization.yaml
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
2020-10-15 14:18:20 +03:00
stefanprodan 50104826ae Promote API to v1beta1 2020-09-30 19:10:27 +03:00
stefanprodan e5e2cd7dcb Implement namespace overriding 2020-09-29 18:56:24 +03:00
stefanprodan fcd0155550 Add the deleted object kind to GC events 2020-09-16 10:39:34 +03:00
stefanprodan 544e7cf0eb Use manifests checksum in GC snapshot 2020-09-16 09:34:22 +03:00
stefanprodan 7e06af6d4b Refactor garbage collection 2020-09-01 13:35:05 +03:00
stefanprodan b00a841162 Refactor kustomization file generation 2020-09-01 12:34:50 +03:00