Skip to content

fix(eso): remove argocd/annotations from example/dependencies base kustomization#63

Merged
pinikomarov merged 1 commit into
openstack-k8s-operators:mainfrom
pinikomarov:fix/eso-skip-dry-run-direct-annotation
Jun 30, 2026
Merged

fix(eso): remove argocd/annotations from example/dependencies base kustomization#63
pinikomarov merged 1 commit into
openstack-k8s-operators:mainfrom
pinikomarov:fix/eso-skip-dry-run-direct-annotation

Conversation

@pinikomarov

@pinikomarov pinikomarov commented Jun 29, 2026

Copy link
Copy Markdown
Contributor
fix(eso): remove argocd/annotations from example/dependencies base kustomization

When the argocd/annotations component is included in both the base
kustomization (example/dependencies) and the ArgoCD Application spec
(spec.source.kustomize.components), kustomize deduplicates it and only
processes it once — during base processing — before any app-level
components (e.g. ESO) add their resources. Patches targeting those
app-level resources become no-ops, causing SkipDryRunOnMissingResource
and sync-wave annotations to never be applied to ExternalSecretsConfig.

Without SkipDryRunOnMissingResource=true, ArgoCD fails the pre-sync
dry-run for ExternalSecretsConfig because the ESO CRD does not exist
yet (the ESO operator subscription is in sync-wave -10). The entire
sync is aborted before any wave runs.

Fix: remove the argocd/annotations component from the base kustomization.
Consumers using the rhoso-apps helm chart already inject it via
spec.source.kustomize.components, where it runs after all app-level
components and patches apply correctly. A comment is added to prevent
re-introduction of the component in the base.

Also revert the externalsecretsconfig.yaml comment to reflect the
correct design: annotations are applied via the component patch,
not embedded directly in the resource.

@pinikomarov pinikomarov marked this pull request as ready for review June 29, 2026 22:28
@pinikomarov

Copy link
Copy Markdown
Contributor Author

Tested to fix the issue on pipeline, commented on issue

@pinikomarov pinikomarov self-assigned this Jun 29, 2026
@pinikomarov pinikomarov requested a review from cjeanner June 29, 2026 22:31
@pinikomarov pinikomarov force-pushed the fix/eso-skip-dry-run-direct-annotation branch from 736e2e9 to 2fc4a47 Compare June 30, 2026 07:42
…stomization

When the argocd/annotations component is included in both the base
kustomization (example/dependencies) and the ArgoCD Application spec
(spec.source.kustomize.components), kustomize deduplicates it and only
processes it once — during base processing — before any app-level
components (e.g. ESO) add their resources. Patches targeting those
app-level resources become no-ops, causing SkipDryRunOnMissingResource
and sync-wave annotations to never be applied to ExternalSecretsConfig.

Without SkipDryRunOnMissingResource=true, ArgoCD fails the pre-sync
dry-run for ExternalSecretsConfig because the ESO CRD does not exist
yet (the ESO operator subscription is in sync-wave -10). The entire
sync is aborted before any wave runs.

Fix: remove the argocd/annotations component from the base kustomization.
Consumers using the rhoso-apps helm chart already inject it via
spec.source.kustomize.components, where it runs after all app-level
components and patches apply correctly. A comment is added to prevent
re-introduction of the component in the base.

Also revert the externalsecretsconfig.yaml comment to reflect the
correct design: annotations are applied via the component patch,
not embedded directly in the resource.

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
@pinikomarov pinikomarov force-pushed the fix/eso-skip-dry-run-direct-annotation branch from 2fc4a47 to db01bd8 Compare June 30, 2026 11:50
@pinikomarov pinikomarov changed the title fix(eso): set SkipDryRunOnMissingResource and sync-wave directly in E… fix(eso): remove argocd/annotations from example/dependencies base kustomization Jun 30, 2026
@pinikomarov pinikomarov merged commit 3ca9a7d into openstack-k8s-operators:main Jun 30, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants