This reverts commit c4a666991207f9434a819da9bac8b3603ad3d66e.
The change was originally reverted because it broke testing on Jammy.
Jammy broke because it was attempting to install cri-o using the Bionic
method via a PPA. This is no longer valid for newer Ubuntu, and Focal
uses a different process too. We update the cri-o installation for Jammy
to match Focal and make this method the default so that new Ubuntu
releases default to modern installation methods. Bionic continues to
install from a PPA.
Additionally we bump the cri-o version from 1.15 to 1.24 to get a
version that has packages for both Focal and Jammy. This new version
requires we also install cri-o-runc separately as they don't seem to
have proper package dependencies in place between these two packages.
The crio systemd service fails to start without cri-o-runc installed.
Change-Id: Ic29576e26be094744cc1b169a3c8f0bca814f089
This was apparently not tested on Ubuntu jammy and has broken
Nodepool testing.
https://zuul.opendev.org/t/zuul/build/9ae631c37a384b4bb63515c6c5f04a00
Revert "ensure-kubernetes: pull cri-dockerd systemd from tag"
This reverts commit ad0ea28b6a2cbc8d68ee1a05e6a1d2712102dca4.
Revert "ensure-kubernetes: install cri-dockerd; fix networking"
This reverts commit 08c922fd988e98bd93d5a6d488a98e5b76797e18.
Change-Id: Ic20b8840c478b6d81626f728b8661ef5946e12d4
For ... reasons ... kubernetes deprecated docker as a container
runtime, and requires this cri-dockerd daemon to make docker cri-ish
enough to work. Install and start it so the docker path keeps
working, although long-term I guess they're saying to move away from
this (from what I read it the "none" driver will also have problems
with cgroupsv2, which makes it's future on Jaunty look interesting).
Honestly I don't really know why the cri-o now needs the
--network-plugin flag. Without it I get
X Exiting due to RUNTIME_ENABLE: unknown network plugin:
which isn't described anywhere I can see. Improvements welcome :)
Change-Id: I8ff34fa116aca14abee7e71f510bc49ffc547524
There was some recent changes to Minikube that added a hard
dependency on that file being there which are not caught by
upstream testing since they don't test with the "none" VM
driver.
This adds the file to workaround the issue so that it can
complete the bootstrap of the cluster.
Change-Id: I3869350ae620721ea4e755e50facd0291a7772d3
Minikube provides addons and we can enable specific addons by passing the --addons arg when using minikube cli
Change-Id: I8d10e3a3dde1070b5c79406285035dacb59dddc8
The minikube v1.10.x is appending the systemd-resolved conf always.
So to workaround this problem, do a patch after deployment.
Change-Id: I813151761ebeb24b3d78f2a5a6c96ca6ffd81f21
This patch refactors ensure-kubernetes to use the new generic role
to allow it to be cross-platform in the future.
Change-Id: Ic90c8973431823814c7e6b122f4ef25a67d64c2f
This adds a custom ansible-lint rule at .rules/ZuulJobsNamespaceLoopVar.py
that enforces the loop var policy described at:
https://zuul-ci.org/docs/zuul-jobs/policy.html#ansible-loops-in-roles
It also updates existing roles to follow the policy.
Change-Id: I92b2ff56a1c2702542fc07b316f1809087a4c92f