Skip to content
This repository was archived by the owner on Feb 22, 2022. It is now read-only.

[stable/mariadb] fix upgrading existing statefulsets - #18704

Merged
k8s-ci-robot merged 1 commit into
helm:masterfrom
sameersbn:mariadb-upgrade-fix
Nov 8, 2019
Merged

k8s-ci-robot merged 1 commit into
helm:masterfrom
sameersbn:mariadb-upgrade-fix

Conversation

@sameersbn

@sameersbn sameersbn commented Nov 8, 2019 •

Copy link
Copy Markdown
Contributor

What this PR does / why we need it:

Helm performs a lookup for the object based on its group (apps), version (v1), and kind (Deployment). Also known as its GroupVersionKind, or GVK. Changing the GVK is considered a compatibility breaker from Kubernetes' point of view, so you cannot "upgrade" those objects to the new GVK in-place. Earlier versions of Helm 3 did not perform the lookup correctly which has since been fixed to match the spec.

In #17308 the apiVersion of the statefulset resources was updated to apps/v1 in tune with the api's deprecated, resulting in compatibility breakage.

This major version bump signifies this change.

Checklist

[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

  • DCO signed
  • Chart Version bumped
  • Variables are documented in the README.md
  • Title of the PR starts with chart name (e.g. [stable/mychartname])

@alemorcuq alemorcuq left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Users with 6.13.0 and k8s < 1.16 won't be able to upgrade, right?

Helm performs a lookup for the object based on its group (apps), version (v1), and kind (Deployment).
Also known as its GroupVersionKind, or GVK. Changing the GVK is considered a compatibility breaker
from Kubernetes' point of view, so you cannot "upgrade" those objects to the new GVK in-place.
Earlier versions of Helm 3 did not perform the lookup correctly which has since been fixed to match the spec.

In helm#17308 the `apiVersion` of the statefulset resources was
updated to `apps/v1` in tune with the api's deprecated, resulting in compatibility breakage.

In this PR we have bumped the chart major version to signify this and also added the mariadb.statefulset.apiVersion`
helper that returns the correct `apiVersion` to use depending on the k8s version

Signed-off-by: Sameer Naik <sameersbn@vmware.com>
@sameersbn
sameersbn force-pushed the mariadb-upgrade-fix branch from cc7eb5e to c81b02a Compare November 8, 2019 13:17

@juan131 juan131 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

/ok-to-test
/lgtm

@juan131

juan131 commented Nov 8, 2019

Copy link
Copy Markdown
Collaborator

Thanks so much for taking care of this @sameersbn !

@k8s-ci-robot k8s-ci-robot added the lgtm Indicates that a PR is ready to be merged. label Nov 8, 2019
@k8s-ci-robot

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: juan131, sameersbn

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot
k8s-ci-robot merged commit 906620c into helm:master Nov 8, 2019
JoseAlban pushed a commit to JoseAlban/charts that referenced this pull request Nov 22, 2019
Helm performs a lookup for the object based on its group (apps), version (v1), and kind (Deployment).
Also known as its GroupVersionKind, or GVK. Changing the GVK is considered a compatibility breaker
from Kubernetes' point of view, so you cannot "upgrade" those objects to the new GVK in-place.
Earlier versions of Helm 3 did not perform the lookup correctly which has since been fixed to match the spec.

In helm#17308 the `apiVersion` of the statefulset resources was
updated to `apps/v1` in tune with the api's deprecated, resulting in compatibility breakage.

In this PR we have bumped the chart major version to signify this and also added the mariadb.statefulset.apiVersion`
helper that returns the correct `apiVersion` to use depending on the k8s version

Signed-off-by: Sameer Naik <sameersbn@vmware.com>
hakman pushed a commit to hakman/charts that referenced this pull request Dec 5, 2019
Helm performs a lookup for the object based on its group (apps), version (v1), and kind (Deployment).
Also known as its GroupVersionKind, or GVK. Changing the GVK is considered a compatibility breaker
from Kubernetes' point of view, so you cannot "upgrade" those objects to the new GVK in-place.
Earlier versions of Helm 3 did not perform the lookup correctly which has since been fixed to match the spec.

In helm#17308 the `apiVersion` of the statefulset resources was
updated to `apps/v1` in tune with the api's deprecated, resulting in compatibility breakage.

In this PR we have bumped the chart major version to signify this and also added the mariadb.statefulset.apiVersion`
helper that returns the correct `apiVersion` to use depending on the k8s version

Signed-off-by: Sameer Naik <sameersbn@vmware.com>
dargolith pushed a commit to dargolith/charts that referenced this pull request Jan 10, 2020
Helm performs a lookup for the object based on its group (apps), version (v1), and kind (Deployment).
Also known as its GroupVersionKind, or GVK. Changing the GVK is considered a compatibility breaker
from Kubernetes' point of view, so you cannot "upgrade" those objects to the new GVK in-place.
Earlier versions of Helm 3 did not perform the lookup correctly which has since been fixed to match the spec.

In helm#17308 the `apiVersion` of the statefulset resources was
updated to `apps/v1` in tune with the api's deprecated, resulting in compatibility breakage.

In this PR we have bumped the chart major version to signify this and also added the mariadb.statefulset.apiVersion`
helper that returns the correct `apiVersion` to use depending on the k8s version

Signed-off-by: Sameer Naik <sameersbn@vmware.com>
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. Contribution Allowed If the contributor has signed the DCO or the CNCF CLA (prior to the move to a DCO). lgtm Indicates that a PR is ready to be merged. ok-to-test size/S Denotes a PR that changes 10-29 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants