-
Notifications
You must be signed in to change notification settings - Fork 13
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
platform: Hetzner API implementation #536
Conversation
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.
Thanks! It looks good for a first iteration. As said on Matrix, we can see to implement a firewall (or update the default one) to allow connection on port 2379 for example. In api.go
or in a network.go
file.
EDIT: Just seen your message on Matrix
Only ports 25 & 465 (SMTP) are blocked by default.
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.
LGTM with the last two nits. Feel free to rearrange your commits as you wish - ideally we could rebase and squash your commits into those commits: https://github.com/flatcar/mantle/pull/533/commits to get one initial commit for the API implementation, one initial commit for the Kola platform implementation and one for the ore
part.
I don't have a strong opinion on this, so it's up to you. :)
Tested with Flannel and Kubeadm:
=== RUN cl.flannel.vxlan
=== RUN cl.flannel.udp
=== RUN kubeadm.v1.29.2.calico.base
=== RUN kubeadm.v1.29.2.calico.base/node_readiness
=== RUN kubeadm.v1.29.2.calico.base/nginx_deployment
=== RUN kubeadm.v1.29.2.calico.base/NFS_deployment
--- PASS: cl.flannel.vxlan (208.44s)
flannel.go:121: ping from 50821554(10.254.14.0) to 50821552(10.254.47.0)
--- PASS: cl.flannel.udp (271.60s)
cluster.go:125: Timeout occurred while waiting for network connectivity.
flannel.go:121: ping from 50821692(10.254.9.0) to 50821694(10.254.54.1)
--- PASS: kubeadm.v1.29.2.calico.base (591.11s)
--- PASS: kubeadm.v1.29.2.calico.base/node_readiness (17.55s)
--- PASS: kubeadm.v1.29.2.calico.base/nginx_deployment (24.24s)
--- PASS: kubeadm.v1.29.2.calico.base/NFS_deployment (28.03s)
cluster.go:125: WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /home/core/.kube/config
cluster.go:125: WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /home/core/.kube/config
cluster.go:125: WARNING: Kubernetes configuration file is group-readable. This is insecure. Location: /home/core/.kube/config
cluster.go:125: WARNING: Kubernetes configuration file is world-readable. This is insecure. Location: /home/core/.kube/config
cluster.go:125: jq: error (at <stdin>:121): Cannot iterate over null (null)
cluster.go:125: jq: error (at <stdin>:121): Cannot iterate over null (null)
cluster.go:125: jq: error (at <stdin>:121): Cannot iterate over null (null)
PASS, output in _kola_temp/hetzner-2024-07-24-1113-35472
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com>
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com> Co-authored-by: Julian Tölle <julian.toelle97@gmail.com>
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com> Co-authored-by: Julian Tölle <julian.toelle97@gmail.com>
Signed-off-by: Mathieu Tortuyaux <mtortuyaux@microsoft.com> Co-authored-by: Julian Tölle <julian.toelle97@gmail.com>
All tests besides one work for me with this version. The failing test looks weird to me, in that it tries to parse
|
Great, thanks a lot for the cleanup. For the failing test, I suspect it's because the Flatcar does not ship the "official" cloudinit but a rewriting in Go that implements a subset of the official cloud-init. I think for now we can skip this test and we can still implement the Hetzner cloudinit support later. diff --git a/kola/tests/misc/cloudinit.go b/kola/tests/misc/cloudinit.go
index 9ef74d541..0abce80a4 100644
--- a/kola/tests/misc/cloudinit.go
+++ b/kola/tests/misc/cloudinit.go
@@ -156,7 +156,8 @@ write_files:
- path: "/foo"
content: bar`),
Distros: []string{"cl"},
- ExcludePlatforms: []string{"qemu-unpriv"},
+ // Hetzner: we need to implement coreos-cloudinit support for Hetzner.
+ ExcludePlatforms: []string{"qemu-unpriv", "hetzner"},
// This should run on all clouds
})
register.Register(®ister.Test{ The CI failure is "normal" (here: https://github.com/flatcar/mantle/actions/runs/10253573202/job/28366511620?pr=536) - it's because you pushed from a fork. |
coreos-cloudinit does not support Hetzner.
Disabled the cloudinit test in 1ce68f9. |
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.
Thanks for this implementation! Looking forward to seeing Flatcar tests running on Hetzner
Add support for the Hetzner Platform to
kola
andore
.Usage looks like: