Commit Graph

239 Commits

Author SHA1 Message Date
Jared Watts 079cc1d02b
feat: change logs: support for tracking all changes made to managed resources
Signed-off-by: Jared Watts <jbw976@gmail.com>
2024-08-11 20:34:26 -07:00
dalton hill 2d6e2aeecd Composite receiver functions for conditions.
Signed-off-by: Dalton Hill <dalton.hill.0@protonmail.com>
2024-06-26 10:36:39 -05:00
Predrag Knezevic d049fcc2e9 Address reviewer comments
Signed-off-by: Predrag Knezevic <predrag.knezevic@upbound.io>
2024-04-19 15:47:18 +02:00
Predrag Knezevic b5462b512d Add ability to expose resource reconciliation progress
* `status.observedGeneration` fields has been added to claim/composite/composed status,
  showing the latest metadata.generation which resulted in either a ready state,
  or stalled due to error it can not recover from without human intervention.
* `status.conditions[x].observedGeneration represents the .metadata.generation
  that the condition was set based upon

Signed-off-by: Predrag Knezevic <predrag.knezevic@upbound.io>
2024-04-09 11:04:31 +02:00
Nic Cope 0c7b1eb549 Bump golangci-lint, copy config from c/c
This copies the latest config from c/c and addresses all the linter
errors that config produces.

Signed-off-by: Nic Cope <nicc@rk0n.org>
2024-02-20 03:45:27 -08:00
Nic Cope fab7762d2e Generate deepcopy methodsets for Unstructured types
Removes the tests - we don't need to test generated code.

Signed-off-by: Nic Cope <nicc@rk0n.org>
2023-11-06 16:42:57 -08:00
Nic Cope d54c6046df Give unstructured types their own DeepCopy methods
Fixes https://github.com/crossplane/crossplane/issues/4970

These types all embed *unstructured.Unstructured. If they don't
implement their own DeepCopy methods, callers will end up calling those
of the embedded *Unstructured. The result is that a deepcopy isn't a
real copy - it's the wrong type (*unstructured.Unstructured).

Signed-off-by: Nic Cope <nicc@rk0n.org>
2023-11-05 14:51:44 -08:00
Dr. Stefan Schimanski 33981937cc
controller/engine: merge parent and local cache
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@upbound.io>
2023-10-13 11:48:06 +02:00
Predrag Knezevic 81b21d47fe fix(pkg/resource/composite) drop usage of ObjectReference in SetClaimReference
`spec.claimRef` schema is just subset of corev1.ObjectReference, and hence
`SetClaimReference` might get a reference that have more fields set, e.g. UID.
The fields that do not exist in claimRef schema must be not set on the underlying object,
otherwise K8s API server complains about non-existing field when client sends a patch request.

* Introduced `claim.Reference` type that corresponds to `spec.claimRef` schema.
* `composite.SetClaimReference` signature changed to accept an instance of `claim.Reference`
* appropriate tests updated/new tests added

Signed-off-by: Predrag Knezevic <predrag.knezevic@upbound.io>
2023-10-09 13:53:55 +02:00
Alper Rifat Ulucinar 95e05915a4
Do not modify the informer cache objects in resource.AnnotationChangedPredicate.Update
Signed-off-by: Alper Rifat Ulucinar <ulucinar@users.noreply.github.com>
2023-09-25 15:36:17 +03:00
Dr. Stefan Schimanski e63d00a63c
resource: add FirstNAndSomeMore helper
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@upbound.io>
2023-09-08 08:28:09 +02:00
Dr. Stefan Schimanski b069d9debb
pkg/resource: add StoreCurrentRV
Signed-off-by: Dr. Stefan Schimanski <stefan.schimanski@upbound.io>
2023-09-05 22:14:06 +02:00
Christopher Haar fd85873073 feat(remove): remove deprecated providerRef
Signed-off-by: Christopher Haar <christopher.haar@upbound.io>
2023-08-23 15:46:55 +02:00
Hasan Turken fcbb2cdeb5
Merge pull request #518 from turkenh/extend-composed-type
Extend unstructured composed package with additional methods
2023-08-17 15:59:32 +03:00
Hasan Turken 04ceabf588
Extend unstructured composed package with additional methods
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-08-14 19:49:08 +03:00
Hasan Turken 11e9468944
Cleanup deprecated stuff that are no longer used
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-08-11 13:02:54 +03:00
lsviben 73a675c82c
implement granular managementPolicies
Signed-off-by: lsviben <sviben.lovro@gmail.com>
2023-07-13 13:43:34 +02:00
Mateusz Puczyński a5a6b69c4f
Add GetLogger method to fake.Manager
Signed-off-by: Mateusz Puczyński <mati6095@gmail.com>
2023-06-09 12:39:14 +02:00
Mateusz Puczyński 920e5b1ac6
bump sigs.k8s.io/controller-runtime to v0.15.0
Signed-off-by: Mateusz Puczyński <mati6095@gmail.com>
2023-05-26 17:29:45 +02:00
Hasan Turken 4e1673b714
Merge pull request #417 from turkenh/ignore-create-annotaions
Filter out external create annotations from Desired State
2023-04-06 18:57:02 +03:00
Hasan Turken 8ad78a7b31
Avoid using reflect.DeepEqual in annotationsChangedPredicate
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-04-06 18:50:01 +03:00
Philippe Scorsolini 511b39fa56
chore: address issues reported by revive
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
2023-04-05 12:03:27 +02:00
Hasan Turken 9bb1416205
Filter out external create annotations from DesiredState
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-03-29 17:03:14 +03:00
Philippe Scorsolini 57dafafdaf
chore(linter): switching from goimports to gci enforcing imports sorting
Signed-off-by: Philippe Scorsolini <p.scorsolini@gmail.com>
2023-03-29 09:23:07 +02:00
Hasan Turken 79cb4c8ac1
Add management policy to managed
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-03-27 12:05:06 +03:00
Hasan Turken 112e9eda45
Add nolint directive for musttag on types used in unit tests
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-03-22 12:52:52 +03:00
Hasan Turken 3008beba94
Deprecate PredicateFn and helper predicate functions
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-03-17 17:27:56 +03:00
Hasan Turken c4ec21474a
Add DesiredStateChanged to filter out updates going to status
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2023-03-17 17:27:56 +03:00
Nic Cope 9e69576057 Add a test for the new subresource Create method
Signed-off-by: Nic Cope <nicc@rk0n.org>
2023-01-25 10:34:38 -08:00
Nic Cope b099031ba0 Pass GetOptions through to wrapped client
Signed-off-by: Nic Cope <nicc@rk0n.org>
2023-01-25 10:34:38 -08:00
Nic Cope 8b832430e9 Bump Kubernetes dependencies
This required some updates to our implementations of client.Client,
which now has a generic SubResource sub-client.

Signed-off-by: Nic Cope <nicc@rk0n.org>
2023-01-25 10:34:37 -08:00
Nic Cope f0fcbc0af5 Update linter config to match c/c
This repo is a little out of date relative to our latest linting
practices.

Signed-off-by: Nic Cope <nicc@rk0n.org>
2023-01-25 10:32:46 -08:00
Nic Cope 65044f0439
Merge pull request #364 from ezgidemirel/comp-rev-selector
Add composition revision selectors
2022-11-14 11:51:50 -08:00
Maximilian Blatt 39428e10f6 fix(composite): SetEnvironmentConfigReferences to correct path
Signed-off-by: Maximilian Blatt <maximilian.blatt-extern@deutschebahn.com>
(external expert on behalf of DB Netz AG)
2022-11-09 00:27:13 +01:00
ezgidemirel efc8702e31
Add composition revision selectors
Signed-off-by: ezgidemirel <ezgidemirel91@gmail.com>
2022-11-03 14:41:45 +03:00
Alper Rifat Ulucinar 31279534ed
Add omitempty json tag to fake.ConnectionDetailsLastPublishedTimer.Time field
Signed-off-by: Alper Rifat Ulucinar <ulucinar@users.noreply.github.com>
2022-10-19 23:46:07 +03:00
Nic Cope bce61005a1
Merge pull request #355 from nokia/respect_finalizers
Support foreground cascading deletion
2022-10-11 18:39:34 -07:00
Bob Haddleton da77f4e104 Add blockOwnerDeletion: true and compositeDeletePolicy
Signed-off-by: Bob Haddleton <bob.haddleton@nokia.com>
2022-10-11 09:35:04 -05:00
Maximilian Blatt dfd468741d feat(composite): Add support for EnvironmentConfigs
Signed-off-by: Maximilian Blatt <maximilian.blatt-extern@deutschebahn.com>
(external expert on behalf of DB Netz AG)
2022-09-05 22:27:26 +02:00
Aditya Sharma cd68866501 Fix lints
Signed-off-by: Aditya Sharma <git@adi.run>
2022-07-21 22:01:32 -07:00
Aditya Sharma 1deb753676 s/interface{}/any/g
Signed-off-by: Aditya Sharma <git@adi.run>
2022-07-21 21:46:18 -07:00
Hasan Turken 86fb15da2c
Extend Secret Store interface with more power
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2022-03-10 18:10:52 +03:00
Hasan Turken 2f224692a9
Use store.KeyValue in connection.store package
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2022-03-09 14:46:59 +03:00
Hasan Turken c8cc06c5fb
Implement ConnectionPropagator in connection.DetailsManager
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2022-03-09 12:43:53 +03:00
Hasan Turken 60059a2241
Add PublishConnectionDetailsTo to Composition types
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2022-03-09 12:43:53 +03:00
Hasan Turken 3ce0d92570
Refactor packages for connection details types and interfaces
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2022-03-09 12:43:52 +03:00
Hasan Turken e0edbc592f
Define types for using ESS with composition
Signed-off-by: Hasan Turken <turkenh@gmail.com>
2022-03-09 12:43:52 +03:00
fahed dorgaa 7b45316e5b add NewNopFinalizer
Signed-off-by: fahed dorgaa <fahed.dorgaa@gmail.com>
2021-11-08 12:49:03 +01:00
Nic Cope af4e148a11 Replace github.com/pkg/errors with our own pkg/errors.
Signed-off-by: Nic Cope <negz@rk0n.org>
2021-09-09 07:50:57 +00:00
Nic Cope cb68ff958f Add composition revision support to XRs and XRCs
Signed-off-by: Nic Cope <negz@rk0n.org>
2021-07-22 00:51:16 +00:00