mirror of
https://github.com/kubernetes-sigs/kubespray.git
synced 2026-10-29 22:03:22 -02:30
* Enable AlmaLinux 8 and Rocky Linux 8 Calico CI Install Python 3.12 with yum before gathering facts when the interpreter selected by Ansible is missing or older than Python 3.9, and add bootstrap_os_install_python to control distribution-specific Python bootstrap installation. EL8 only ships the libselinux Python bindings for the distribution Python 3.6, so ansible.posix.selinux fails once Kubespray runs with Python 3.12. Keep using the module when the bindings are importable and otherwise set the policy in /etc/selinux/config and apply the runtime state with setenforce. Enable rockylinux8-calico in regular PR CI, add almalinux8-calico as a manual job, and document the RHEL 8 family lifecycle. Signed-off-by: Kay Yan <kay.yan@daocloud.io> * Fix EL8 containerd compatibility and SELinux runtime transitions Signed-off-by: Kay Yan <kay.yan@daocloud.io> --------- Signed-off-by: Kay Yan <kay.yan@daocloud.io>
178 lines
5.4 KiB
YAML
178 lines
5.4 KiB
YAML
---
|
|
.kubevirt:
|
|
extends: .job-moderated
|
|
interruptible: true
|
|
script:
|
|
- ansible-playbook tests/cloud_playbooks/create-kubevirt.yml
|
|
-e @"tests/files/${TESTCASE}.yml"
|
|
- ./tests/scripts/testcases_run.sh
|
|
variables:
|
|
ANSIBLE_TIMEOUT: "120"
|
|
tags:
|
|
- ffci
|
|
needs:
|
|
- pipeline-image
|
|
|
|
# TODO: generate testcases matrixes from the files in tests/files/
|
|
# this is needed to avoid the need for PR rebasing when a job was added or removed in the target branch
|
|
# (currently, a removed job in the target branch breaks the tests, because the
|
|
# pipeline definition is parsed by gitlab before the rebase.sh script)
|
|
# CI template for PRs
|
|
pr:
|
|
stage: deploy-part1
|
|
rules:
|
|
- if: $PR_LABELS =~ /.*ci-short.*/
|
|
when: manual
|
|
allow_failure: true
|
|
- if: $CI_COMMIT_BRANCH =~ /^pr-.*$/
|
|
when: on_success
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $CI_PIPELINE_SCHEDULE_DESCRIPTION == "daily-ci"
|
|
when: on_success
|
|
- when: manual
|
|
allow_failure: true
|
|
extends: .kubevirt
|
|
parallel:
|
|
matrix:
|
|
- TESTCASE:
|
|
- almalinux9-crio
|
|
- almalinux9-kube-ovn
|
|
- debian12-cilium
|
|
- debian13-calico-collection
|
|
- debian13-cilium
|
|
- fedora44-calico
|
|
- fedora44-kube-router
|
|
- fedora43-flannel-crio-collection-scale
|
|
- fedora43-kube-router
|
|
- opensuse-leap16-calico
|
|
- rockylinux10-cilium
|
|
- rockylinux8-calico
|
|
- rockylinux9-cilium
|
|
- ubuntu22-calico-all-in-one
|
|
- ubuntu22-calico-all-in-one-upgrade
|
|
- ubuntu24-calico-all-in-one-hardening
|
|
- ubuntu24-calico-etcd-datastore
|
|
- ubuntu24-cilium-sep
|
|
- ubuntu24-crio-scale
|
|
- ubuntu24-crio-upgrade
|
|
- ubuntu24-flannel-collection
|
|
- ubuntu24-ha-separate-etcd
|
|
- ubuntu24-kube-router-sep
|
|
- ubuntu24-kube-router-svc-proxy
|
|
- ubuntu26-calico-all-in-one
|
|
|
|
# This is for flakey test so they don't disrupt the PR worklflow too much.
|
|
# Jobs here MUST have a open issue so we don't lose sight of them
|
|
pr-flakey:
|
|
extends: pr
|
|
rules:
|
|
- if: $PR_LABELS =~ /.*(ci-extended|ci-full).*/
|
|
when: on_success
|
|
retry: 2
|
|
parallel:
|
|
matrix:
|
|
- TESTCASE:
|
|
- flatcar4081-calico
|
|
|
|
# The ubuntu24-calico-all-in-one jobs are meant as early stages to prevent running the full CI if something is horribly broken
|
|
ubuntu24-calico-all-in-one:
|
|
stage: deploy-part1
|
|
extends: .kubevirt
|
|
variables:
|
|
TESTCASE: ubuntu24-calico-all-in-one
|
|
rules:
|
|
- if: $CI_COMMIT_BRANCH =~ /^pr-.*$/
|
|
when: on_success
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $CI_PIPELINE_SCHEDULE_DESCRIPTION == "daily-ci"
|
|
when: on_success
|
|
- when: manual
|
|
allow_failure: true
|
|
|
|
pr_full:
|
|
extends: .kubevirt
|
|
stage: deploy-extended
|
|
rules:
|
|
- if: $PR_LABELS =~ /.*ci-full.*/
|
|
when: on_success
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $CI_PIPELINE_SCHEDULE_DESCRIPTION == "daily-ci"
|
|
when: on_success
|
|
# Else run as manual
|
|
- when: manual
|
|
allow_failure: true
|
|
parallel:
|
|
matrix:
|
|
- TESTCASE:
|
|
- almalinux9-calico-ha-ebpf
|
|
- almalinux9-calico-nodelocaldns-secondary
|
|
- debian13-custom-cni
|
|
- debian13-kubelet-csr-approver
|
|
- debian12-custom-cni-helm
|
|
- fedora44-calico-swap-selinux
|
|
- fedora44-crio
|
|
- fedora43-calico-swap-selinux
|
|
- fedora43-crio
|
|
- openeuler24-calico # https://github.com/kubernetes-sigs/kubespray/issues/12877
|
|
- ubuntu24-calico-ha-wireguard
|
|
- ubuntu24-flannel-ha
|
|
- ubuntu24-flannel-ha-once
|
|
|
|
# Experimental OS coverage and images needing maintenance.
|
|
manual:
|
|
extends: pr_full
|
|
parallel:
|
|
matrix:
|
|
- TESTCASE:
|
|
- almalinux8-calico
|
|
# Needs a schema v2 update to quay.io/kubespray/vm-amazon-linux-2:latest.
|
|
- amazon-linux-2-all-in-one
|
|
rules:
|
|
- when: manual
|
|
allow_failure: true
|
|
|
|
pr_extended:
|
|
extends: .kubevirt
|
|
stage: deploy-extended
|
|
rules:
|
|
- if: $PR_LABELS =~ /.*(ci-extended|ci-full).*/
|
|
when: on_success
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $CI_PIPELINE_SCHEDULE_DESCRIPTION == "daily-ci"
|
|
when: on_success
|
|
- when: manual
|
|
allow_failure: true
|
|
parallel:
|
|
matrix:
|
|
- TESTCASE:
|
|
- almalinux9-calico
|
|
- almalinux9-calico-remove-node
|
|
- almalinux9-docker
|
|
- debian12-calico
|
|
- debian12-docker
|
|
- debian13-calico
|
|
- opensusemicroos-calico
|
|
- rockylinux9-calico
|
|
- rockylinux10-calico
|
|
- ubuntu22-all-in-one-docker
|
|
- ubuntu24-all-in-one-docker
|
|
- ubuntu24-calico-all-in-one
|
|
- ubuntu24-calico-etcd-kubeadm
|
|
- ubuntu24-flannel
|
|
|
|
# TODO: migrate to pr-full, fix the broken ones
|
|
periodic:
|
|
allow_failure: true
|
|
extends: .kubevirt
|
|
rules:
|
|
- if: $CI_PIPELINE_SOURCE == "schedule" && $CI_PIPELINE_SCHEDULE_DESCRIPTION == "daily-ci"
|
|
when: on_success
|
|
parallel:
|
|
matrix:
|
|
- TESTCASE:
|
|
- debian13-calico-upgrade
|
|
- debian13-calico-upgrade-once
|
|
- debian12-cilium-svc-proxy
|
|
- fedora44-calico-selinux
|
|
- fedora43-calico-selinux
|
|
- fedora43-docker-calico
|
|
- ubuntu24-calico-etcd-kubeadm-upgrade-ha
|
|
- ubuntu24-calico-ha-recover
|
|
- ubuntu24-calico-ha-recover-noquorum
|