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

upgrade: support Kubernetes components #839

Merged
merged 3 commits into from
Jan 3, 2023

Conversation

3u13r
Copy link
Member

@3u13r 3u13r commented Dec 29, 2022

Proposed change(s)

  • Rename NodeImage and friends to NodeVersion
  • Add Kubernetes components to NodeVersion
  • Let the JoinService look up the current components ConfigMap in the NodeVersion custom resource instead of having a separate k8s-version ConfigMap

Discussion: Should we announce this feature in the release notes already?
My opinion: No, since it is part of the complete upgrade feature which needs to be fully implemented, documented, and tested.

How to test:

  1. Build the JoinService and node operator from this branch and use it in versions.go
  2. Create a valid k8s-components-sha256-ABC ConfigMap (Download links and hashes need to match+work)
  3. Reference new ConfigMap in NodeVersion named node-versioin
  4. Observe the update process (see. NodeVersion CRD, PendingNode CRD, and Noes)

What works best for me is to downgrade the patch version of the Kubernetes components in the versions.go. Then create a Constellation and upgrade to the latest patch version. This version should be visible via kubectl get nodes -A -o wide.

Checklist

  • Add labels (e.g., for changelog category)
  • Link to Milestone

@3u13r 3u13r added the no changelog Change won't be listed in release changelog label Dec 29, 2022
@3u13r 3u13r added this to the v2.4.0 milestone Dec 29, 2022
@netlify
Copy link

netlify bot commented Dec 29, 2022

Deploy Preview for constellation-docs canceled.

Name Link
🔨 Latest commit 283e38b
🔍 Latest deploy log https://app.netlify.com/sites/constellation-docs/deploys/63b30509f6d83600099de747

@3u13r 3u13r force-pushed the feat/operator/updates/addK8sComponentsToVersion branch 2 times, most recently from 053d2a1 to fc8f8d6 Compare December 30, 2022 01:50
@3u13r 3u13r mentioned this pull request Dec 30, 2022
9 tasks
@3u13r 3u13r force-pushed the feat/operator/updates/addK8sComponentsToVersion branch from fc8f8d6 to c5d5f5d Compare December 30, 2022 09:23
@3u13r 3u13r force-pushed the feat/operator/updates/addK8sComponentsToVersion branch from c5d5f5d to 05611fe Compare December 30, 2022 09:28
@3u13r 3u13r marked this pull request as ready for review December 30, 2022 09:37
@3u13r 3u13r requested a review from malt3 December 30, 2022 09:37
@malt3
Copy link
Contributor

malt3 commented Jan 2, 2023

Breaking change: Renaming the custom resource from NodeImage to NodeVersion could break a cluster during upgrade. While this might work fine by correctly patching the CRDs and restarting the operator to trigger a recreation of the resources, this is something we should test.

@malt3
Copy link
Contributor

malt3 commented Jan 2, 2023

Testing works (even between two minor versions).

@malt3 malt3 self-assigned this Jan 2, 2023
Copy link
Contributor

@malt3 malt3 left a comment

Choose a reason for hiding this comment

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

LGTM

@3u13r 3u13r merged commit f14af0c into main Jan 3, 2023
@3u13r 3u13r deleted the feat/operator/updates/addK8sComponentsToVersion branch January 3, 2023 11:09
@3u13r 3u13r removed the no changelog Change won't be listed in release changelog label Jan 5, 2023
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.

2 participants