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

OEM: IONOS Cloud Images #29

Open
wants to merge 1 commit into
base: flatcar-master
Choose a base branch
from

Conversation

tuunit
Copy link

@tuunit tuunit commented Oct 22, 2024

Adds IONOS Cloud custom provider

This aims to keep supporting basic Cloud-Init functionality with Flatcar by introducing the IONOS Cloud provider. As the IONOS Cloud was built on top of the idea of cloud-init all of our utilities and customers use it. Therefore we want to have basic feature support to not force everyone to switch to ignition

How to use

Use the IONOS Cloud Flatcar image to create a VM and inject Cloud-Init User Data:

https://docs.ionos.com/cloud/storage-and-backup/block-storage/images-snapshots/boot-cloud-init

Use the #cloud-config directive!

Testing done

Used the Image built from flatcar/scripts#2389 and inject a basic cloud-config script:

#cloud-config

write_files:
  - path: /hello
    content: |
        world!

And checked if the file exists after the first boot.

PR Requirements

  • Changelog entries added in the respective changelog/ directory (user-facing change, bug fix, security fix, update)
  • Inspected CI output for image differences: /boot and /usr size, packages, list files for any missing binaries, kernel modules, config files, kernel modules, etc.

@tuunit tuunit changed the title add ionoscloud support OEM: IONOS Cloud Images Oct 23, 2024
@tuunit tuunit closed this Nov 4, 2024
@tuunit tuunit reopened this Nov 4, 2024
@tuunit tuunit marked this pull request as ready for review November 4, 2024 12:17
}

metadata.SSHPublicKeys = m.SSHPublicKeys
metadata.NetworkConfig, _ = ic.tryReadFile(networkconfig)
Copy link
Contributor

Choose a reason for hiding this comment

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

I would catch the error here.

Suggested change
metadata.NetworkConfig, _ = ic.tryReadFile(networkconfig)
metadata.NetworkConfig, err = ic.tryReadFile(networkconfig)

ConditionKernelCommandLine=!coreos.oem.id=openstack
ConditionKernelCommandLine=!flatcar.oem.id=openstack
ConditionKernelCommandLine=!coreos.oem.id=ionoscloud
Copy link
Contributor

Choose a reason for hiding this comment

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

This is for old systems (backward compatibility) - we can just use flatcar.oem.id here.

Suggested change
ConditionKernelCommandLine=!coreos.oem.id=ionoscloud

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