-
Notifications
You must be signed in to change notification settings - Fork 1.9k
OSDOCS-17704 updated create-only mode #104178
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
|
|
@@ -4,10 +4,15 @@ | |||||||
|
|
||||||||
| :_mod-docs-content-type: PROCEDURE | ||||||||
| [id="zero-trust-manager-pause-reconciliation_{context}"] | ||||||||
| = Pausing Operator reconciliation | ||||||||
|
|
||||||||
| = Pausing Operator reconciliation by annotation | ||||||||
| [role="_abstract"] | ||||||||
| Pause reconciliation of the operands by enabling `create-only` mode. This setting prevents the Operator from automatically reverting your manual changes to the desired state. You can enable this mode by updating the Operator's subscription object. | ||||||||
|
|
||||||||
| Reconciliation by annotation supports the `SpireServer`, `SpireAgent`, `SpiffeCSIDriver`, `SpireOIDCDiscoveryProvider`, and the `ZeroTrustWorkloadIdentityManager` custom resources. You can pause the reconciliation process by adding an annotation. | ||||||||
| [IMPORTANT] | ||||||||
| ==== | ||||||||
| When `create-only` mode is disabled, the Operator overwrites the resources if any conflicts exist. | ||||||||
| ==== | ||||||||
|
|
||||||||
| .Prerequisites | ||||||||
|
|
||||||||
|
|
@@ -17,11 +22,11 @@ Reconciliation by annotation supports the `SpireServer`, `SpireAgent`, `SpiffeCS | |||||||
|
|
||||||||
| .Procedure | ||||||||
|
|
||||||||
| * To pause reconciling the `SpireServer` custom resource, add the `create-only` annotation to the named `cluster` by running the following command: | ||||||||
| * To pause reconciling the operands resources managed by the Operator, add the environment variable `CREATE_ONLY_MODE`: `true` in the subscription object by running the following command: | ||||||||
| + | ||||||||
| [source,terminal] | ||||||||
| ---- | ||||||||
| $ oc annotate SpireServer cluster -n zero-trust-workload-identity-manager ztwim.openshift.io/create-only=true | ||||||||
| $ oc -n $OPERATOR_NAMESPACE patch subscription openshift-zero-trust-workload-identity-manager --type='merge' -p '{"spec":{"config":{"env":[{"name":"CREATE_ONLY_MODE","value":"true"}]}}}' | ||||||||
| ---- | ||||||||
|
|
||||||||
| .Verification | ||||||||
|
|
@@ -32,15 +37,30 @@ $ oc annotate SpireServer cluster -n zero-trust-workload-identity-manager ztwim. | |||||||
| $ oc get SpireServer cluster -o yaml | ||||||||
| ---- | ||||||||
|
|
||||||||
| .Example output | ||||||||
| The following is an example that confirms that the 'create-only' mode is active. | ||||||||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Suggested change
this is not indented properly (see the preview) |
||||||||
| [source,yaml] | ||||||||
| ---- | ||||||||
| status: | ||||||||
| conditions: | ||||||||
| - lastTransitionTime: "2025-09-03T12:13:39Z" | ||||||||
| message: Create-only mode is enabled via ztwim.openshift.io/create-only annotation | ||||||||
| - lastTransitionTime: "2025-12-23T11:36:58Z" | ||||||||
| message: All components are ready | ||||||||
| reason: Ready | ||||||||
| status: "True" | ||||||||
| type: Ready | ||||||||
| - lastTransitionTime: "2025-12-23T11:36:58Z" | ||||||||
| message: All operand CRs are ready | ||||||||
| reason: Ready | ||||||||
| status: "True" | ||||||||
| type: OperandsAvailable | ||||||||
| - lastTransitionTime: "2025-12-23T11:36:58Z" | ||||||||
| message: create-only mode enabled | ||||||||
| reason: CreateOnlyModeEnabled | ||||||||
| status: "True" | ||||||||
| type: CreateOnlyMode | ||||||||
|
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. .Verification
$ oc get zerotrustworkloadidentitymanager cluster -o yaml .Example output
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Done |
||||||||
| ---- | ||||||||
|
|
||||||||
| [IMPORTANT] | ||||||||
| ==== | ||||||||
| The Operator updates the upgradeable condition to `false` in the `operatorCondition` resource. You might not be able to upgrade the Operator when in `create-only` mode. | ||||||||
| ==== | ||||||||
|
|
||||||||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sayak-redhat Why putting these bits here? This PR is part of the 1.0.0 GA version only, obviously openshift/zero-trust-workload-identity-manager#89 hasn't merged && no release created yet. Have you mixed up the versioning which I told you early
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sorry @lunarwhite i misplaced with the github prs