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

Hetzner: Skip operating system validation if custom image is provided #1818

Merged
merged 1 commit into from
Jun 25, 2024

Conversation

P4sca1
Copy link
Contributor

@P4sca1 P4sca1 commented Jun 20, 2024

This should make it possible to use operating systems on Hetzner Cloud, that are not natively supported, by using custom images (snapshots).

A side-effect of this commit is, that images returned by getNameForOs() are now also validated against the Hetzner API.

For reference: #1817

Requirements to use custom operating systems:

  1. Create a snapshot of the operating system you want to use on Hetzner Cloud, e.g. using https://github.com/apricote/hcloud-upload-image/
  2. Add a new OperatingSystemProfile
  3. Set the image in MachineDeployment to the name of the snapshot created in step 1

/kind bug

Special notes for your reviewer:

Does this PR introduce a user-facing change? Then add your Release Note here:

NONE

Documentation:

NONE

@kubermatic-bot kubermatic-bot added dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. sig/cluster-management Denotes a PR or issue as being assigned to SIG Cluster Management. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. do-not-merge/docs-needed Indicates that a PR should not merge because it's missing one of the documentation labels. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jun 20, 2024
@kubermatic-bot
Copy link
Contributor

Hi @P4sca1. Thanks for your PR.

I'm waiting for a kubermatic member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@kubermatic-bot kubermatic-bot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. docs/none Denotes a PR that doesn't need documentation (changes). release-note-none Denotes a PR that doesn't merit a release note. and removed do-not-merge/docs-needed Indicates that a PR should not merge because it's missing one of the documentation labels. do-not-merge/release-note-label-needed Indicates that a PR should not merge because it's missing one of the release note labels. labels Jun 20, 2024
@kubermatic-bot kubermatic-bot added dco-signoff: no Denotes that at least one commit in the pull request doesn't have a valid DCO signoff message. and removed dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. labels Jun 20, 2024
@kron4eg
Copy link
Member

kron4eg commented Jun 20, 2024

@P4sca1 hey, thanks for contribution. Please add a Signed-off-by to your commit (for example with git commit --amend --signoff).

This should make it possible to use operating systems on Hetzner Cloud, that are not natively supported, by using custom images (snapshots).

A side-effect of this commit is, that images returned by `getNameForOs()` are now also validated against the Hetzner API.

For reference: kubermatic#1817

Requirements to use custom operating systems:
1. Create a snapshot of the operating system you want to use on Hetzner Cloud, e.g. using https://github.com/apricote/hcloud-upload-image/
2. Add a new `OperatingSystemProfile`
3. Set the image in `MachineDeployment` to the name of the snapshot created in step 1

Signed-off-by: Pascal Sthamer <10992664+P4sca1@users.noreply.github.com>
@kubermatic-bot kubermatic-bot added dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. and removed dco-signoff: no Denotes that at least one commit in the pull request doesn't have a valid DCO signoff message. labels Jun 21, 2024
@P4sca1
Copy link
Contributor Author

P4sca1 commented Jun 21, 2024

I edited the file via the GitHub mobile app, which unfortunately does not sign the commits.
I force-pushed a single commit to my patch branch, which is signed and already contains the fix for the image variable.

@kron4eg
Copy link
Member

kron4eg commented Jun 21, 2024

/test all

@kron4eg
Copy link
Member

kron4eg commented Jun 21, 2024

/lgtm

@kubermatic-bot kubermatic-bot added the lgtm Indicates that a PR is ready to be merged. label Jun 21, 2024
@kubermatic-bot
Copy link
Contributor

LGTM label has been added.

Git tree hash: 6c1c5ea8999a83efc545e5f7171471950c577f3a

Copy link
Member

@ahmedwaleedmalik ahmedwaleedmalik left a comment

Choose a reason for hiding this comment

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

/approve

@kubermatic-bot kubermatic-bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jun 25, 2024
@kron4eg
Copy link
Member

kron4eg commented Jun 25, 2024

/approve

@kubermatic-bot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: ahmedwaleedmalik, kron4eg

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:
  • OWNERS [ahmedwaleedmalik,kron4eg]

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

@kubermatic-bot kubermatic-bot merged commit 9db708c into kubermatic:main Jun 25, 2024
13 checks passed
7oku added a commit to 7oku/machine-controller that referenced this pull request Jun 26, 2024
Signed-off-by: 7oku <8048380+7oku@users.noreply.github.com>
kubermatic-bot pushed a commit that referenced this pull request Jun 27, 2024
* Support for Hetzner arm64 architecture instances

Signed-off-by: 7oku <8048380+7oku@users.noreply.github.com>

* fix conflict with #1818

Signed-off-by: 7oku <8048380+7oku@users.noreply.github.com>

* remove leftovers from merge

Signed-off-by: 7oku <8048380+7oku@users.noreply.github.com>

---------

Signed-off-by: 7oku <8048380+7oku@users.noreply.github.com>
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. dco-signoff: yes Denotes that all commits in the pull request have the valid DCO signoff message. docs/none Denotes a PR that doesn't need documentation (changes). lgtm Indicates that a PR is ready to be merged. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. release-note-none Denotes a PR that doesn't merit a release note. sig/cluster-management Denotes a PR or issue as being assigned to SIG Cluster Management. 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.

4 participants