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

🌱 ci: bump Flatcar tested version #1713

Merged
merged 1 commit into from
Oct 10, 2023

Conversation

tormath1
Copy link
Contributor

@tormath1 tormath1 commented Oct 6, 2023

What this PR does / why we need it: Test a new Flatcar major Stable

Special notes for your reviewer: As discussed previously, let's bump Flatcar tested version only for new major. I followed these instructions: https://gist.github.com/tormath1/acbae5c6cd12420bb8ea137e25655c99 (if the tests are green one maintainer could upload the Flatcar image to the CAPO GCS bucket 🙏 , thanks!)

TODOs:

  • squashed commits
  • if necessary:
    • includes documentation
    • adds unit tests

/hold

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Oct 6, 2023
@netlify
Copy link

netlify bot commented Oct 6, 2023

Deploy Preview for kubernetes-sigs-cluster-api-openstack ready!

Name Link
🔨 Latest commit 021a72f
🔍 Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-cluster-api-openstack/deploys/652555192640b000083456d7
😎 Deploy Preview https://deploy-preview-1713--kubernetes-sigs-cluster-api-openstack.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Oct 6, 2023
@k8s-ci-robot k8s-ci-robot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Oct 6, 2023
Copy link
Contributor

@wwentland wwentland left a comment

Choose a reason for hiding this comment

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

Thank you, looking forward to testing the current stable version.

FWIW, I've used that version in my own clusters already and did not run into issues.

@@ -138,7 +138,7 @@
# https://docs.openstack.org/glance/latest/admin/quotas.html
/opt/stack/devstack/tools/upload_image.sh https://storage.googleapis.com/artifacts.k8s-staging-capi-openstack.appspot.com/test/cirros/2022-12-05/cirros-0.6.1-x86_64-disk.img
/opt/stack/devstack/tools/upload_image.sh https://storage.googleapis.com/artifacts.k8s-staging-capi-openstack.appspot.com/test/ubuntu/2023-01-14/focal-server-cloudimg-amd64.img
/opt/stack/devstack/tools/upload_image.sh https://storage.googleapis.com/artifacts.k8s-staging-capi-openstack.appspot.com/test/flatcar/flatcar-stable-3510.2.4-kube-v1.27.2.img
/opt/stack/devstack/tools/upload_image.sh https://storage.googleapis.com/tormath1-flatcar/flatcar-stable-3602.2.0-kube-v1.27.2.img
Copy link
Contributor

Choose a reason for hiding this comment

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

Is there any way in which we wouldn't have to switch between artifacts.k8s-staging-capi-openstack.appspot.com/test and tormath1-flatcar whenever a new flatcar image is being made available?

I appreciate that an automatic process would be best (cf. #1502), but maybe we can find a different solution in the interim?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, it's not ideal and it creates bottleneck: one needs to generate the image with the image-builder and one with CAPO GCS Bucket write access needs to upload it.
That said, it's not everyday that a new major Stable is released so I think it's still manageable.
One different approach would be to remove the image-builder dependency and to use plain Flatcar image:

Suggested change
/opt/stack/devstack/tools/upload_image.sh https://storage.googleapis.com/tormath1-flatcar/flatcar-stable-3602.2.0-kube-v1.27.2.img
/opt/stack/devstack/tools/upload_image.sh https://stable.release.flatcar-linux.net/amd64-usr/3602.2.0/flatcar_production_openstack_image.img.gz

In the Flatcar template, using Ignition, we could pull Kubernetes dependencies using systemd-sysext: here's a demo with CAPO that I presented during August Flatcar office hours: https://www.youtube.com/live/omppbFNxSDU?si=W74sLp2IH1cL1hCS&t=210

I am planning to write an "experimental" template in the next weeks for folks interested - we discussed about this during a previous CAPO office hours with @mdbooth

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, it's not ideal and it creates bottleneck: one needs to generate the image with the image-builder and one with CAPO GCS Bucket write access needs to upload it.

Indeed, that's exactly what I was wondering we could achieve here: Find a person with the permissions above or grant them.

One different approach would be to remove the image-builder dependency and to use plain Flatcar image: [...] In the Flatcar template, using Ignition, we could pull Kubernetes dependencies using systemd-sysext:

I am very much looking forward to utilising that functionality in all my clusters and, quite likely, in the context of tests here. How far has that feature progressed by now? My impression was that it is still quite experimental. But, if we can make it work, I'd very much like that. Until then, my preference would be for tests to mirror the setup that most users would use.

On that note: Please give me a shout if you need any help in getting the templates ready.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@wwentland most of the time, a maintainer takes care of the uploading once the CI is green (see: #1524 (comment) for example).

Regarding sysext: as you mentioned, we should continue to test the image produced by the image-builder using the CAPO released template; that's why we could introduce an experimental-flatcar.yaml or equivalent that would consume systemd-sysext images.

Now, regarding the feature itself, it's pretty stable - for example on Flatcar, we started to convert the OEM resources to systemd-sysext images (AWS, OpenStack, etc.): those sysext images are part of the release artifacts now and we continue to collaborate with the upstream to improve the experience.

That would be really helpful to get your feedback on such a template - I'll ping you on the Slack CAPO channel once I'll have something to try. ❤️

Copy link
Contributor

Choose a reason for hiding this comment

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

I still think the ideal situation here is to generate them directly in the CI. Incidentally, the 'OpenStack' packer builder is vastly quicker and more reliable than the qemu builder. The only problem with it is you need an OpenStack to run it against. That's hurting us.

@mdbooth
Copy link
Contributor

mdbooth commented Oct 9, 2023

@tormath1 I've copied the new image to our storage bucket. I'm happy to merge this once you've bumped the location. Thanks!

/approve

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: mdbooth, tormath1

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

The pull request process is described here

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 added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Oct 9, 2023
Copy link
Contributor

@wwentland wwentland left a comment

Choose a reason for hiding this comment

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

That's great, thanks again!

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 9, 2023
@jichenjc
Copy link
Contributor

/hold cancel
/lgtm

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Oct 10, 2023
@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. labels Oct 10, 2023
@tormath1
Copy link
Contributor Author

/retest

1 similar comment
@wwentland
Copy link
Contributor

/retest

@wwentland
Copy link
Contributor

I guess that the preferred course of action is to get #1718 merged and to rebase this one? That would ensure that we really only change the Flatcar image here, while CI issues are addressed elsewhere.

There is a new major, let's test it.

Signed-off-by: Mathieu Tortuyaux <[email protected]>
@k8s-ci-robot k8s-ci-robot added size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Oct 10, 2023
Copy link
Contributor

@wwentland wwentland left a comment

Choose a reason for hiding this comment

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

Cheers!

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Oct 10, 2023
@k8s-ci-robot k8s-ci-robot merged commit f006db4 into kubernetes-sigs:main Oct 10, 2023
9 checks passed
@tormath1 tormath1 deleted the tormath1/flatcar branch October 10, 2023 15:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants