-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
[ansible] add support for ansible 5 (ansible-core 2.12) #8512
Conversation
I can't quite explain this error in the CI: https://gitlab.com/kargo-ci/kubernetes-sigs-kubespray/-/jobs/2061094210#L63 On pypi the current ansible version is 5.3.0 (https://pypi.org/project/ansible/5.3.0/) and I successfully tested on a local env. Are we using some sort of cache in the CI that needs to be updated? |
Not that I know of, I'll try to check it |
So even with explicit archive for ansible 5.3.0 we still have a failure on the ansible-core package, this is really weird. /cc @floryut any chance you can take a look at the CI worker and see why pypi is serving us an outdated package index? |
I'll do better than that and provide you access to it, as soon as I got time today (maybe tonight or during lunch) |
e1cf24a
to
db8e62b
Compare
c865136
to
a4095b0
Compare
After some investigation (thanks @floryut!) it turns out this is due to our docker image which is used as the base of our CI jobs. The docker image is based on ubuntu:18.04 which ships with python 3.6. Newer versions of ansible (5+) have dropped support for python < 3.8 and thus we need to rebase the image on ubuntu 20.04 and release an updated 2.18.1 version since the master branch CI jobs use the latest released docker image. Relevant PRs have been pushed to prepare this change. |
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.
Thank you @cristicalin
I can't help but wonder if all those ansible version checks should not be in a dedicated stage during nightly jobs for ex, not sure we need to validate every ansible version for each PR
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: cristicalin, floryut 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:
Approvers can indicate their approval by writing |
The new packet_ubuntu20-calico-aio-ansible-2_12 is succeeded. /lgtm |
I would move the ansible 2.9 and 2.10 jobs to nightly and make 2.12 the new default so we can live in the modern age. |
* master: (21 commits) Fix quotation of nerdctl_extra_flags (kubernetes-sigs#8668) fix: uninstall contailer engine if service is running (kubernetes-sigs#8662) fix disk controller type in Vagrantfile (kubernetes-sigs#8656) Add ETCD_EXPERIMENTAL_INITIAL_CORRUPT_CHECK flag to etcd config (kubernetes-sigs#8664) Update vagrant.md (kubernetes-sigs#8663) Add missing 2.10 ansible test (kubernetes-sigs#8665) [ansible] make ansible 5.x the new default version (kubernetes-sigs#8660) Run 0100-dhclient-hooks if dhcpclient is enabled (kubernetes-sigs#8658) terrform/openstack: Fix templating of ansible_ssh_common_args in no_floating.yml if used as TF module (kubernetes-sigs#8646) [ansible] add support for ansible 5 (ansible-core 2.12) (kubernetes-sigs#8512) [etcd] add 0 hash for arm v3.5.2 to prevent deployment failures Update cert-manager to v1.7.2 (kubernetes-sigs#8648) fix vagrant parameter (kubernetes-sigs#8650) Remove centos7 molecule while opensuse mirror is flaky Remove k8s module for ns creation Update kubernetes image to 2.18.1 Vagrantfile: add var to set ansible verbosity level (kubernetes-sigs#8639) Have ingress_controller and external_provisioner in upgrade-cluster.yml (kubernetes-sigs#8640) [sysctl] set fs.may_detach_mounts=1 even when CRIs don't set it themselves (kubernetes-sigs#8635) Fixed cluster roles for openstack cloud controller (kubernetes-sigs#8638) ...
Hmm... I think this will drop RHEL7/CentOS7 support for ansible node, because it does not have Python 3.8. |
…ndency, no longer needed
What type of PR is this?
/kind feature
What this PR does / why we need it:
This PR adds support for ansible 5 (ansible-core 2.12) and adds basic coverage for it in the CI.
Which issue(s) this PR fixes:
Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?: