-
Notifications
You must be signed in to change notification settings - Fork 130
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
Allow updating of resources managed by operator #126
Conversation
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: VaishnaviHire The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
The operator now supports both - adding custom plugins through There are two cases that need to be tested for the applyResources plugin:
Testing Steps:
Once the label is added, modify the field
Once the label is added, re-deploy the manifests. The operator checks the difference between the local and cluster resource and add fields that are not included in the cluster resource. This is when we want to update the resource during upgrades. |
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: VaishnaviHire The full list of commands accepted by this bot can be found here.
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
With your update to |
@LaVLaS I am not entirely sure about this. |
@VaishnaviHire I am trying to understand the use case for this. Is the user supposed to manually add these tags to the operator pod? After they install the operator? |
repoRef: | ||
name: manifests | ||
path: transformers/resourceApply.yaml | ||
repos: |
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.
I am not clear what this specifically does. Are we suggesting we change the Kfdef format to allow for globals:?
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.
This is required to add custom transformer. In our case its resourceApply
. The file has the config required for the plugin
The labels are added to the objects that are being changed and not the operator pod. The user is only supposed to add
|
@VaishnaviHire I'm thinking about the upgrade process where the incoming update has a manifest that contains "force-update". That part makes good sense to me. It would work as expected. But for the next update, would we need to remove the "force-update" label from the manifests? I guess I'm wondering if we need some sort of "force update only once" sort of functionality. Seems like it might be tricky to implement and I might just be overthinking it. Admittedly, I'm not entirely sure that I've thought it through, but maybe you or someone else has and can set me straight. |
@crobby I will update the comment on PR. We have updated the design details here - #123 (comment) |
Thanks. I will take a look at the updated design. |
@VaishnaviHire we do need an update to documentation telling the user how to use this feature |
Yes. I will create a doc in |
/hold need to discuss the kfdef transformer entry in the kfdef |
@nakfour When/How do you want to discuss the KFdef extension? I am fine with this in general, did not test it though |
@vpavlin We discussed this in Thursday's meeting. It was decided that since we need the Next steps would be to add this as a |
Updated the PR to include ConfigMap for adding |
This commit includes changes required to enable a kustomize plugin in the operator. Co-authored-by: vpavlin <vasek@redhat.com>
/test all |
This commit adds 'applyresources' plugin that allows users to modify resources when 'opendatahub.io/modified=true' label is added.
This commit includes changes that allows the operator to define a given plugin as a default plugin. An odh dev would need to add the config for a plugin in the 'default-plugins' configmap to make it default.
/retest |
Any ETA on this? We (Operate-First) are also interested in this, our usecase here. Would also appreciate suggestions for workarounds if they exist. |
@VaishnaviHire: PR needs rebase. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
This is slated to be in the release after v1.1.1 . A possible workaround to update any resources is to not deploy them through |
* fix: nil pointer for not getting kfdef Signed-off-by: Wen Zhou <wenzhou@redhat.com>
This commit adds a custom plugin that allows the operator to determine if an
updated resource needs to be overwritten by reconcilation. An object is not
overwritten only when it has
opendatahub.io/configurable
label in addition toopendatahub.io/modified
label added by the end user.
Jira Issue: https://issues.redhat.com/browse/ODH-375