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

H4HIP: Server Side Apply support #312

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

gjenkins8
Copy link
Member

@gjenkins8 gjenkins8 commented Aug 10, 2023

HIP for Helm to support SSA

@gjenkins8 gjenkins8 force-pushed the server_side_apply_hip branch from 95e4e59 to 3c11723 Compare August 10, 2023 05:00
@gjenkins8 gjenkins8 changed the title HIP: Server side apply support HIP: Server Side Apply support Aug 10, 2023
hips/hip-00XX.md Outdated

#### Special

- `--dry-run=client` doesn't work with SSA enabled
Copy link
Member Author

Choose a reason for hiding this comment

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

@mattfarina points out that this will make it difficult for user's to preview changes

hips/hip-00XX.md Outdated

#### Conflicts and forcing

It is possible when Helm upgrades a chart, that there will be a field conflict with another field manager. In this case, Helm should report the error to the user.
Copy link
Member Author

Choose a reason for hiding this comment

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

TODO: verify we can abort atomically across multiple objects (Ian Z points this out)

hips/hip-00XX.md Outdated Show resolved Hide resolved
@morremeyer
Copy link

@gjenkins8 I think this HIP as written would apply to the release secret itself, too. Am I correct with this understanding?

We're running into the issue that the release secret is > 1MB in https://github.com/community-tooling/charts because of the kubectl.kubernetes.io/last-applied-configuration containing the whole config again. Using SSA, that would/could be avoided as far as I'm aware.

Signed-off-by: George Jenkins <[email protected]>
@gjenkins8 gjenkins8 force-pushed the server_side_apply_hip branch from 028f45f to 82b28b6 Compare November 14, 2024 22:10
Signed-off-by: George Jenkins <[email protected]>
@gjenkins8 gjenkins8 changed the title HIP: Server Side Apply support H4HIP: Server Side Apply support Dec 27, 2024
Signed-off-by: George Jenkins <[email protected]>
Signed-off-by: George Jenkins <[email protected]>
Allowing Helm to update objects which have been modified by other processes.
Kubernetes now offers a similar server-side process that has several advantages over the client-side apply (CSA) methods that Helm and `kubectl` (for example) have traditionally utilized.

## Motivation
Copy link
Member Author

@gjenkins8 gjenkins8 Dec 28, 2024

Choose a reason for hiding this comment

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

Perhaps also include that client-side validation is now largely unsupported (need to read up on the details):

kubernetes/kubectl#1625

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants