Skip to content

Patch status sub-resource #202

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Nov 12, 2020
Merged

Patch status sub-resource #202

merged 2 commits into from
Nov 12, 2020

Conversation

stefanprodan
Copy link
Member

This PR replaces status updates with patches to avoid "the object has been modified; please apply your changes to the latest version and try again".

@stefanprodan stefanprodan added the enhancement New feature or request label Nov 12, 2020
@stefanprodan stefanprodan requested a review from hiddeco November 12, 2020 14:28
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
Signed-off-by: Stefan Prodan <stefan.prodan@gmail.com>
Copy link
Member

@hiddeco hiddeco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎉

@stefanprodan stefanprodan merged commit 5fcbfd3 into main Nov 12, 2020
@stefanprodan stefanprodan deleted the patch-status branch November 12, 2020 15:22
starlingx-github pushed a commit to starlingx/ansible-playbooks that referenced this pull request Dec 7, 2022
There are several FluxCD issues which were attempted to be fixed by
implementing recovery logic into app framework. A new issue was
observed that may be hit more often because of the recovery logic.

Flux won't attempt to finish updating a HelmRelease resource to
Ready=True but only display a message containing this signature:
'''the object has been modified...'''. The resource must be correctly
updated by Flux.
Aside from this the recovery logic was put in place for HelmChart
resources that are in Ready=False state, but this should have been
handled by Flux.

I believe the 2 issues described above map to [1] and [2].
To pull [1] and [2] updated FluxCD release to latest available [3].
Release is composed of manifests and container image used.
Update containers used: helm-controller from v0.15.0 to v0.27.0,
source-controller from v0.20.1 to v0.32.1.
Update flux crds, rbac, deployment.
Changelog claims we get k8s 1.25 support part of the upversion.

Disclaimer for tests:
1) Recovery logic concerned with flipping spec.suspend was removed.
Introduced by ongoing [4]
2) optimization by flipping spec.suspend was removed
Introduced by ongoing[4]
3) cert-manager, nginx-ingress-controller, platform-integ-apps had the
reconciliation interval decreased to 1m to allow Flux to manage the
resources by itself in a reasonable time interval.
There will be future commits per app updating reconciliation interval.

Tests on AIO-SX:
PASS: bootstrap
PASS: unlocked enabled available
PASS: apps applied
PASS: tested on k8s 1.24.4 and 1.21.8, inherit that versions between
      should be OK
PASS: delete pods and see they are recreated and no errors
PASS: inspect flux pod logs for errors
PASS: re-test known trigger for 1996747 and 1995748

[1]: fluxcd/source-controller#703
[2]: fluxcd/source-controller#202
[3]: https://github.com/fluxcd/flux2/releases/tag/v0.37.0
[4]: https://review.opendev.org/c/starlingx/config/+/866862
Related-Bug: 1995748
Related-Bug: 1996747
Closes-Bug: 1999032
Signed-off-by: Dan Voiculeasa <dan.voiculeasa@windriver.com>
Change-Id: Id295599a2946f48081e7d27e2ab8e06063c3c88d
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants