Skip to content
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

feat: add support for server-side apply #8123

Closed
wants to merge 1 commit into from

Conversation

sathieu
Copy link
Contributor

@sathieu sathieu commented Jan 8, 2022

Fixes: #2267
Requires: argoproj/gitops-engine#363

Checklist:

  • Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this does not need to be in the release notes.
  • The title of the PR states what changed and the related issues number (used for the release note).
  • I've included "Closes [ISSUE #]" or "Fixes [ISSUE #]" in the description to automatically close the associated issue.
  • I've updated both the CLI and UI to expose my feature, or I plan to submit a second PR with them.
  • Does this PR require documentation updates?
  • I've updated documentation as required by this PR.
  • Optional. My organization is added to USERS.md.
  • I have signed off all my commits as required by DCO
  • I have written unit and/or e2e tests for my change. PRs without these are unlikely to be merged.
  • My build is green (troubleshooting builds).

Fixes: argoproj#2267
Requires: argoproj/gitops-engine#363
Signed-off-by: Mathieu Parent <math.parent@gmail.com>
@jannfis
Copy link
Member

jannfis commented Jan 21, 2022

Thanks a lot for this effort, @sathieu.

We have discussed this in yesterday's contributors meeting and came to the conclusion that we may need some more design thoughts around integrating SSA into Argo CD. Many people are waiting for Server Side Apply feature for various use-cases, and therefore we should look at all the known requirements before we pull it into Argo CD. Worst case at a quick shot would be that we may end up in a situation having to introduce breaking changes for going forward.

Would you be willing to collaborate with us in this design, and then adapt the PRs to reflect the design decisions?

@sathieu
Copy link
Contributor Author

sathieu commented Jan 21, 2022

@jannfis I would happily collaborate for the design, and I'll try to find some time to update the PR 🚀.

@hikhvar
Copy link

hikhvar commented Feb 28, 2022

Any updates on the design? Can one participate or give feedback on the design somewhere?

@leoluz
Copy link
Collaborator

leoluz commented Mar 1, 2022

Any updates on the design? Can one participate or give feedback on the design somewhere?

@hikhvar
I'm planning to work writing the design proposal soon. Once that is done, I'm going to share the document here and in the #argo-contributors channel (CNCF slack) so people in the community can follow up/comment. You are more than welcome to participate and provide feedback if you want.

@leoluz
Copy link
Collaborator

leoluz commented Mar 18, 2022

@hikhvar The design proposal is available here

@sathieu This PR and the gitops-engine one are already implementing good part of the proposal. Do you want/have time to continue to work on this feature?

@sathieu
Copy link
Contributor Author

sathieu commented Mar 18, 2022

@leoluz Thanks for the info. I won't have the time to work on this soon. The priority is now lower (we have workarounds).

@bradj
Copy link

bradj commented Jun 17, 2022

Hey, @sathieu !

We're running into issues that are solved by serverside-apply. Wondering what your workarounds are?

@sathieu
Copy link
Contributor Author

sathieu commented Jun 17, 2022

@bradj My workaround for prometheus CRD being too big when applied with argocd is here: https://gitlab.com/kubitus-project/kubitus-installer/-/commit/9edaf429bb7181d2b79a81fe14ce154fbdcdc93c.

@asafhm
Copy link

asafhm commented Jun 23, 2022

Would really love to see this PR gets merged, regardless of the workaround :)

@sathieu
Copy link
Contributor Author

sathieu commented Jun 24, 2022

@asafhm Actually, argoproj/gitops-engine#363 was merged and is in gitops-engine 0.7 which is in argocd 2.4.2. So the annotation probably works already.

@Jacobious52
Copy link

@sathieu I gave this a try using the ServerSideApply=true annotation with 2.4.3 and sync fails with

PatchOptions.meta.k8s.io "" is invalid: fieldManager: Required value: is required for apply patch

@leoluz
Copy link
Collaborator

leoluz commented Jul 25, 2022

Closing this PR as SSA is being implemented as part of #9711

@leoluz leoluz closed this Jul 25, 2022
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.

Option to perform K8s v1.16 server-side apply
7 participants