-
Notifications
You must be signed in to change notification settings - Fork 52
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
OEM: IONOS Cloud Images #2389
base: main
Are you sure you want to change the base?
OEM: IONOS Cloud Images #2389
Conversation
@tuunit many thanks for your contribution! Before reviewing, would you mind opening a new issue here: https://github.com/flatcar/Flatcar/issues/new?assignees=&labels=kind%2Ffeature&projects=&template=enhancement-or-feature-request.md&title=%5BRFE%5D ? For new platform we usually create a dedicated issue to track various steps (this one, the documentation, testing, etc.) EDIT: Similar to flatcar/Flatcar#1412 for example |
Build action triggered: https://github.com/flatcar/scripts/actions/runs/11454753020 |
d7f6694
to
e17c3d4
Compare
Hi @tormath1 I was going to do that in an hour or so anyways. Wasn't expecting anyone to look at these PRs so fast 😅 I intentionally kept them as Draft PRs to signal that they are not ready for review. Obviously I will provide more details and proper descriptions. Thanks anyways for already having a look at it. |
e073728
to
75c9b34
Compare
@@ -0,0 +1 @@ | |||
set linux_append="flatcar.autologin" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don’t think this is a good idea to enable autologin
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It depends on the cloud provider actually - if on Ionos you have access to the instance console you can still reboot the instance and inject the flatcar.autologin
from the Grub menu. See here for more details: #1866 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not intended to be kept. Just helps me with debugging things while I finish the setup. Sorry I shouldn't have opened the PRs yet.
1780145
to
a1f9981
Compare
sdk_container/src/third_party/coreos-overlay/sys-apps/ignition/ignition-9999.ebuild
Outdated
Show resolved
Hide resolved
a22fed7
to
a839af1
Compare
...ner/src/third_party/coreos-overlay/coreos-base/common-oem-files/common-oem-files-0-r8.ebuild
Outdated
Show resolved
Hide resolved
a839af1
to
91aecc7
Compare
I tested the build, and it works ✅ |
@@ -610,6 +621,16 @@ _run_box_fs_hook() { | |||
sudo rm -fr "${VM_TMP_ROOT}/oem/box" | |||
} | |||
|
|||
_run_ionoscloud_fs_hook() { | |||
# Prepare root partition for IONOS Cloud legacy injection | |||
# This is a workaround until the IONOS Cloud introduces a metadata server |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@tuunit can you put a date on when a metadata server will be introduced by IONOS Cloud? I wouldn't want this workaround to stay around forever, as it is likely to interfere with evolutions to the rootfs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Unfortunately not, I can ask again internally but it will most definitely stay like this for a long time. Up to a year or longer.
Provide IONOS Cloud OEM images
Implements: flatcar/Flatcar#1570
This PR adds build instructions for IONOS Cloud images.
We currently use temporary commit hashs for cloud-init and ignition support from flatcar/coreos-cloudinit#29, flatcar/init#127 and coreos/ignition#1957
How to use
Download or build the image: http://bincache.flatcar-linux.net/images/amd64/9999.0.1+feat-ionoscloud-support/flatcar_production_ionoscloud_image.qcow2
Just build the image:
Decompress and upload to your IONOS Cloud account:
https://docs.ionos.com/cloud/storage-and-backup/block-storage/images-snapshots/private-images
Testing done
The image has been built from this PR and was used to create IONOS Cloud Compute Engines (VMs) using it.
We have tested the following:
Open Issues
EGIT_COMMIT
ofsdk_container/src/third_party/coreos-overlay/coreos-base/coreos-init/coreos-init-9999.ebuild
is not respected. No idea why this happens but after manually forcing an emergeemerge-amd64-usr coreos-init
it works.~/.ssh/authorized_keys.d/
aren't respected. This is due to the same issue as above. that the system doesn't properly boots after ignition has been run and therefore the serviceupdate-ssh-keys-after-ignition
is not being triggered. After a restart the system starts properly but the conditions of the service aren't met anymore because the boot id obviously changed.Requirements
changelog/
directory (user-facing change, bug fix, security fix, update)/boot
and/usr
size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.