Compare commits

..

15 Commits

Author SHA1 Message Date
dependabot[bot] dadd06a17a build(deps): bump molecule from 26.4.0 to 26.6.0 in the molecule group
Bumps the molecule group with 1 update: [molecule](https://github.com/ansible-community/molecule).


Updates `molecule` from 26.4.0 to 26.6.0
- [Release notes](https://github.com/ansible-community/molecule/releases)
- [Commits](https://github.com/ansible-community/molecule/compare/v26.4.0...v26.6.0)

---
updated-dependencies:
- dependency-name: molecule
  dependency-version: 26.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: molecule
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-07-06 03:12:29 +00:00
Adesh Deshmukh 4832c44bb3 fix(tests): use kube_network_plugin in fedora43-flannel-crio test (#13350)
* fix(tests): use kube_network_plugin in fedora43-flannel-crio test

The fedora43-flannel-crio-collection-scale.yml test config set
'network_plugin: flannel', but all Kubespray roles read
'kube_network_plugin' (defaulting to 'calico'). The test silently
ran Calico instead of Flannel.

Signed-off-by: Adesh Deshmukh <adeshkd123@gmail.com>

* Update CI matrix to reflect fedora43-flannel-crio test correctly

---------

Signed-off-by: Adesh Deshmukh <adeshkd123@gmail.com>
2026-07-05 10:44:22 +00:00
Aleksandr Borisov c263d746b6 Fix Multus manifest generation with global inventory (#13309)
* Fix Multus manifest generation with global inventory

* Update roles/network_plugin/multus/tasks/main.yml

Co-authored-by: Ali Afsharzadeh <afsharzadeh8@gmail.com>

---------

Co-authored-by: Ali Afsharzadeh <afsharzadeh8@gmail.com>
2026-06-30 12:50:11 +00:00
dependabot[bot] 30e39560e5 build(deps): bump actions/setup-python from 6.2.0 to 6.3.0 (#13331)
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 6.2.0 to 6.3.0.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/a309ff8b426b58ec0e2a45f0f869d46889d02405...ece7cb06caefa5fff74198d8649806c4678c61a1)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-version: 6.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-29 09:24:10 +00:00
dependabot[bot] 8f3baa4e18 build(deps): bump actions/cache from 5.0.5 to 6.1.0 (#13330)
Bumps [actions/cache](https://github.com/actions/cache) from 5.0.5 to 6.1.0.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/27d5ce7f107fe9357f9df03efb73ab90386fccae...55cc8345863c7cc4c66a329aec7e433d2d1c52a9)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-version: 6.1.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-29 08:52:07 +00:00
Matthias Lohr 925f60247a Make cordon/uncordon confirmation prompts consistent (#13313)
Mention cordon explicitly in the pre-upgrade prompt and add the node
name plus the same continue/cancel hint to the uncordon prompt so both
prompts share consistent wording.
2026-06-24 11:38:21 +00:00
ICHx 60929432f5 flannel: set EnableNFTables when kube_proxy_mode use nftables (#13291)
* flannel: set EnableNFTables when kube_proxy_mode use nftables

* Clean up cni-flannel.yml.j2 by removing comments

Removed commented-out environment variable for cache readiness.

* update cni-flannel.yml.j2

---------

Co-authored-by: ric-mb <noreply@github.com>
2026-06-24 02:50:17 +00:00
Wren Turkal 07960e8bb6 fix: Jinja version test warning (#13322)
The jinja version test conditional uses jinja in the condition, which is
deprecated. I have removed the assertion since ansible 2.18 has a dependency
on jinja2>=3.0.0.
2026-06-23 09:38:37 +00:00
Sumit Solanki c76137d89e dependabot: ignore ansible major version updates (#13320)
Ansible major versions are upgraded manually to support multiple
OS/Python versions. Configure Dependabot to still propose minor and
patch updates while skipping semver-major bumps.

Signed-off-by: Sumit Solanki <sumit.solanki@ibm.com>
2026-06-23 07:01:33 +00:00
Sumit Solanki edeeb95f22 fix(cilium): sync operator-generic image for offline registries (#13270)
The Cilium Helm chart appends a -generic suffix to the operator image
repository for non-cloud deployments. Sync the operator-generic image
to offline registries so it matches what the chart requests.

Signed-off-by: Sumit Solanki <sumit.solanki@ibm.com>
2026-06-22 12:49:55 +00:00
dependabot[bot] 9dde36546c build(deps): update bcrypt requirement from <5 to <6 (#13318)
Updates the requirements on [bcrypt](https://github.com/pyca/bcrypt) to permit the latest version.
- [Changelog](https://github.com/pyca/bcrypt/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pyca/bcrypt/compare/v1.0.0...5.0.0)

---
updated-dependencies:
- dependency-name: bcrypt
  dependency-version: 5.0.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 06:21:41 +00:00
dependabot[bot] 99be103567 build(deps): bump actions/checkout from 6.0.3 to 7.0.0 (#13319)
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.3 to 7.0.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/df4cb1c069e1874edd31b4311f1884172cec0e10...9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-22 06:11:40 +00:00
Ali Afsharzadeh 4d8ecca4e7 Upgrade cilium from 1.19.4 to 1.19.5 (#13315)
Signed-off-by: Ali Afsharzadeh <afsharzadeh8@gmail.com>
2026-06-21 14:17:37 +00:00
Alejandro Macedo 8a5cfe8d77 Change failure condition for image container download (#12321)
When installing with `download_run_once`, nerdctl will log to stderr and
cause a failure even if the image was saved successfully. Instead we
rely on the shell exit code to detect the failure.

Signed-off-by: Alejandro Macedo <alex.macedopereira@gmail.com>
2026-06-21 10:51:41 +00:00
Nikhil Kumar 9f7ea6632c Replace injected Ansible fact variables in bootstrap_os role (#13264)
* Replace injected Ansible fact variables in bootstrap_os role

* Restore stale setup task in opensuse role
2026-06-19 11:44:49 +05:30
19 changed files with 38 additions and 45 deletions
+4
View File
@@ -12,6 +12,10 @@ updates:
patterns:
- molecule
- molecule-plugins*
ignore:
# Ansible major versions are upgraded manually to support multiple OS/Python versions.
- dependency-name: "ansible"
update-types: ["version-update:semver-major"]
- package-ecosystem: "github-actions"
directory: "/"
labels:
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
issues: write
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
- name: Parse issue form
uses: stefanbuck/github-issue-parser@cb6e97157cbf851e3a393ff8d57c93a484cc323f
+3 -3
View File
@@ -11,10 +11,10 @@ jobs:
update-patch-versions:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0
with:
ref: ${{ inputs.branch }}
- uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6.3.0
with:
python-version: '3.13'
cache: 'pip'
@@ -22,7 +22,7 @@ jobs:
- run: update-hashes
env:
API_KEY: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
with:
key: pre-commit-hook-propagate
path: |
+1 -1
View File
@@ -119,7 +119,7 @@ Note:
- Network Plugin
- [cni-plugins](https://github.com/containernetworking/plugins) 1.9.1
- [calico](https://github.com/projectcalico/calico) 3.31.5
- [cilium](https://github.com/cilium/cilium) 1.19.4
- [cilium](https://github.com/cilium/cilium) 1.19.5
- [flannel](https://github.com/flannel-io/flannel) 0.28.4
- [kube-ovn](https://github.com/alauda/kube-ovn) 1.12.21
- [kube-router](https://github.com/cloudnativelabs/kube-router) 2.1.1
+1 -1
View File
@@ -245,7 +245,7 @@ cilium_operator_extra_volume_mounts:
## Choose Cilium version
```yml
cilium_version: "1.19.4"
cilium_version: "1.19.5"
```
## Add variable to config
+1 -1
View File
@@ -30,7 +30,7 @@ debian11 | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
debian12 | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
debian13 | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
fedora42 | :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: |
fedora43 | :white_check_mark: | :x: | :x: | :x: | :x: | :x: | :x: |
fedora43 | :white_check_mark: | :x: | :x: | :white_check_mark: | :x: | :x: | :x: |
flatcar4081 | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
openeuler24 | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
rockylinux10 | :x: | :x: | :x: | :x: | :x: | :x: | :x: |
-7
View File
@@ -24,10 +24,3 @@
that: "'127.0.0.1' | ansible.utils.ipaddr == '127.0.0.1'"
tags:
- check
- name: "Check that jinja is not too old (install via pip)"
assert:
msg: "Your Jinja version is too old, install via pip"
that: "{% set test %}It works{% endset %}{{ test == 'It works' }}"
tags:
- check
+1 -1
View File
@@ -1,6 +1,6 @@
ansible==11.13.0
# Prevented passlib version conflicts
bcrypt<5
bcrypt<6
# Needed for community.crypto module
cryptography==49.0.0
# Needed for jinja2 json_query templating
+12 -12
View File
@@ -6,7 +6,7 @@
- name: Add proxy to yum.conf or dnf.conf if http_proxy is defined
community.general.ini_file:
path: "{{ ((ansible_distribution_major_version | int) < 8) | ternary('/etc/yum.conf', '/etc/dnf/dnf.conf') }}"
path: "{{ ((ansible_facts['distribution_major_version'] | int) < 8) | ternary('/etc/yum.conf', '/etc/dnf/dnf.conf') }}"
section: main
option: proxy
value: "{{ http_proxy | default(omit) }}"
@@ -20,28 +20,28 @@
- name: Install EPEL for Oracle Linux repo package
package:
name: "oracle-epel-release-el{{ ansible_distribution_major_version }}"
name: "oracle-epel-release-el{{ ansible_facts['distribution_major_version'] }}"
state: present
when:
- use_oracle_public_repo
- '''ID="ol"'' in os_release.stdout_lines'
- (ansible_distribution_version | float) >= 7.6
- (ansible_facts['distribution_version'] | float) >= 7.6
- name: Enable Oracle Linux repo
community.general.ini_file:
dest: "/etc/yum.repos.d/oracle-linux-ol{{ ansible_distribution_major_version }}.repo"
section: "ol{{ ansible_distribution_major_version }}_addons"
dest: "/etc/yum.repos.d/oracle-linux-ol{{ ansible_facts['distribution_major_version'] }}.repo"
section: "ol{{ ansible_facts['distribution_major_version'] }}_addons"
option: "{{ item.option }}"
value: "{{ item.value }}"
mode: "0644"
with_items:
- { option: "name", value: "ol{{ ansible_distribution_major_version }}_addons" }
- { option: "name", value: "ol{{ ansible_facts['distribution_major_version'] }}_addons" }
- { option: "enabled", value: "1" }
- { option: "baseurl", value: "http://yum.oracle.com/repo/OracleLinux/OL{{ ansible_distribution_major_version }}/addons/$basearch/" }
- { option: "baseurl", value: "http://yum.oracle.com/repo/OracleLinux/OL{{ ansible_facts['distribution_major_version'] }}/addons/$basearch/" }
when:
- use_oracle_public_repo
- '''ID="ol"'' in os_release.stdout_lines'
- (ansible_distribution_version | float) >= 7.6
- (ansible_facts['distribution_version'] | float) >= 7.6
- name: Enable Centos extra repo for Oracle Linux
community.general.ini_file:
@@ -51,15 +51,15 @@
value: "{{ item.value }}"
mode: "0644"
with_items:
- { option: "name", value: "CentOS-{{ ansible_distribution_major_version }} - Extras" }
- { option: "name", value: "CentOS-{{ ansible_facts['distribution_major_version'] }} - Extras" }
- { option: "enabled", value: "1" }
- { option: "gpgcheck", value: "0" }
- { option: "baseurl", value: "http://mirror.centos.org/centos/{{ ansible_distribution_major_version }}/extras/$basearch/os/" }
- { option: "baseurl", value: "http://mirror.centos.org/centos/{{ ansible_facts['distribution_major_version'] }}/extras/$basearch/os/" }
when:
- use_oracle_public_repo
- '''ID="ol"'' in os_release.stdout_lines'
- (ansible_distribution_version | float) >= 7.6
- (ansible_distribution_version | float) < 9
- (ansible_facts['distribution_version'] | float) >= 7.6
- (ansible_facts['distribution_version'] | float) < 9
# CentOS ships with python installed
+2 -2
View File
@@ -6,7 +6,7 @@
- name: Add proxy to yum.conf or dnf.conf if http_proxy is defined
community.general.ini_file:
path: "{{ ((ansible_distribution_major_version | int) < 8) | ternary('/etc/yum.conf', '/etc/dnf/dnf.conf') }}"
path: "{{ ((ansible_facts['distribution_major_version'] | int) < 8) | ternary('/etc/yum.conf', '/etc/dnf/dnf.conf') }}"
section: main
option: proxy
value: "{{ http_proxy | default(omit) }}"
@@ -71,7 +71,7 @@
- "rhel-8-for-*-appstream-rpms"
state: "{{ 'enabled' if (rhel_enable_repos | bool) else 'disabled' }}"
when:
- ansible_distribution_major_version == "8"
- ansible_facts['distribution_major_version'] == "8"
- (not rh_subscription_status.changed) or (rh_subscription_username is defined) or (rh_subscription_org_id is defined)
- name: Check presence of fastestmirror.conf
@@ -74,7 +74,6 @@
delegate_to: "{{ download_delegate }}"
delegate_facts: false
register: container_save_status
failed_when: container_save_status.stderr
run_once: true
become: "{{ user_can_become_root | default(false) or not download_localhost }}"
when:
@@ -116,7 +116,7 @@ flannel_version: 0.28.4
flannel_cni_version: 1.7.1-flannel1
cni_version: "{{ (cni_binary_checksums['amd64'] | dict2items)[0].key }}"
cilium_version: "1.19.4"
cilium_version: "1.19.5"
cilium_cli_version: "{{ (ciliumcli_binary_checksums['amd64'] | dict2items)[0].key }}"
cilium_enable_hubble: false
@@ -239,7 +239,7 @@ cilium_operator_image_tag: "v{{ cilium_version }}"
cilium_hubble_relay_image_repo: "{{ quay_image_repo }}/cilium/hubble-relay"
cilium_hubble_relay_image_tag: "v{{ cilium_version }}"
cilium_hubble_certgen_image_repo: "{{ quay_image_repo }}/cilium/certgen"
cilium_hubble_certgen_image_tag: "v0.4.3"
cilium_hubble_certgen_image_tag: "v0.4.5"
cilium_hubble_ui_image_repo: "{{ quay_image_repo }}/cilium/hubble-ui"
cilium_hubble_ui_image_tag: "v0.13.5"
cilium_hubble_ui_backend_image_repo: "{{ quay_image_repo }}/cilium/hubble-ui-backend"
@@ -596,7 +596,7 @@ downloads:
cilium_operator:
enabled: "{{ kube_network_plugin == 'cilium' or cilium_deploy_additionally }}"
container: true
repo: "{{ cilium_operator_image_repo }}"
repo: "{{ cilium_operator_image_repo }}-generic"
tag: "{{ cilium_operator_image_tag }}"
checksum: "{{ cilium_operator_digest_checksum | default(None) }}"
groups:
@@ -700,11 +700,9 @@ cri_dockerd_archive_checksums:
0.3.5: sha256:30d47bd89998526d51a8518f9e8ef10baed408ab273879ee0e30350702092938
runc_checksums:
arm64:
1.4.3: sha256:633301e2e32f8a5ad54031aab4901eb00308bec677dd15faa2751e8f9dab5ca4
1.4.2: sha256:ea54032310588e115633aa2f4bba8bf9500257f657e1deca88df5778775138db
1.4.1: sha256:80d5757c46152c35151621cf394ee08cec881716169d0fdd40f9ce124d3c85f5
1.4.0: sha256:2adbeed4c751d6f2201c642ed06269ff4370fcc4165abd3f323e19c653716c31
1.3.6: sha256:6be27a061ef89bb14c6cb495405bba80f46cea213b8f79378a6086b1bac6b747
1.3.5: sha256:bd843d75a788e612c9df286b1fa519a44fcbb7a7b8d01e2268431433cc7c718c
1.3.4: sha256:d6dcab36d1b6af1b72c7f0662e5fcf446a291271ba6006532b95c4144e19d428
1.3.3: sha256:3c9a8e9e6dafd00db61f4611692447ebab4a56388bae4f82192aed67b66df712
@@ -730,11 +728,9 @@ runc_checksums:
1.1.9: sha256:b43e9f561e85906f469eef5a7b7992fc586f750f44a0e011da4467e7008c33a0
1.1.8: sha256:7c22cb618116d1d5216d79e076349f93a672253d564b19928a099c20e4acd658
amd64:
1.4.3: sha256:f6ae8efc0fa40079e1475e97cbe9d1bd3f106a28d6af78a11d9f1bd565515e60
1.4.2: sha256:ac8a90f9e225bb9322189937b230cdc5478d5753f0e31e1bda98a5cf06bd9539
1.4.1: sha256:b6d50dad89a420cafcdc0eebf4bed132a45b161d5bc1ba4ddd8cc4422d24a983
1.4.0: sha256:c5d4995c5aec204d7e1827d9d9a6b45042602736f7f415f484252e576dcdac28
1.3.6: sha256:3f3921dbbee7723e9868f97e88e51ffc910206e3ba55646e74d93d24ea76023c
1.3.5: sha256:66fa8390be8fb3b23dfbb60c767368bb5b51f1acfa88692bbff1a82953d4d9e9
1.3.4: sha256:5966ca40b6187b30e33bfc299c5f1fe72e8c1aa01cf3fefdadf391668f47f103
1.3.3: sha256:8781ab9f71c12f314d21c8e85f13ca1a82d90cf475aa5131a7b543fcc5487543
@@ -760,11 +756,9 @@ runc_checksums:
1.1.9: sha256:b9bfdd4cb27cddbb6172a442df165a80bfc0538a676fbca1a6a6c8f4c6933b43
1.1.8: sha256:1d05ed79854efc707841dfc7afbf3b86546fc1d0b3a204435ca921c14af8385b
ppc64le:
1.4.3: sha256:9a10f813733a5bdf740e9513a210d817bec08cab6939913a25362e5c5915fbdc
1.4.2: sha256:572a4b78f7cb55569f12c4b3999fbc44e6d3c2c7e94ec0024cf7ae09922438b4
1.4.1: sha256:9758879188759989fd54fa287af3e51a78cf147309cd0336139685f026f531ed
1.4.0: sha256:9effd22d207c80ceab4816ce1736356c6b87ddf687ae1b5d9310523a7da92786
1.3.6: sha256:351188eac3222a035869048b6fe303edeca6288f8f8b58d25f172151df3df205
1.3.5: sha256:62e8f062291c2b2b29bd8ab8c983cef56409063287e256c50ab54fb54f5d98a7
1.3.4: sha256:268d9be1188f3efa82cad0d8e6b938d8da0d741427660d874ca9386c68d72937
1.3.3: sha256:c42394e7cf7cd508a91b090b72d57ff4df262effde742d5e29ea607e65f38b43
@@ -37,6 +37,9 @@ data:
{% if ipv6_stack %}
"EnableIPv6": true,
"IPv6Network": "{{ kube_pods_subnet_ipv6 }}",
{% endif %}
{% if flannel_version is version('0.25.5', '>=') %}
"EnableNFTables": {{ (kube_proxy_mode == 'nftables') | bool | to_json }},
{% endif %}
"Backend": {
"Type": "{{ flannel_backend_type }}"{% if flannel_backend_type == "vxlan" %},
+2 -2
View File
@@ -27,8 +27,8 @@
- {name: multus-daemonset-crio, file: multus-daemonset-crio.yml, type: daemonset, engine: crio }
register: multus_manifest_2
vars:
host_query: "*|[?container_manager=='{{ container_manager }}']|[0].inventory_hostname"
vars_from_node: "{{ hostvars | json_query(host_query) }}"
host_query: "[?container_manager=='{{ container_manager }}']|[0].inventory_hostname"
vars_from_node: "{{ ansible_play_hosts_all | map('extract', hostvars) | list | json_query(host_query) }}"
delegate_to: "{{ groups['kube_control_plane'][0] }}"
when:
- item.engine in container_manager_types
+1 -1
View File
@@ -14,7 +14,7 @@
- name: Confirm node uncordon
pause:
echo: true
prompt: "Ready to uncordon node {{ kube_override_hostname | default(inventory_hostname) }}?"
prompt: "Ready to uncordon node {{ kube_override_hostname | default(inventory_hostname) }}? (Press Enter to continue or Ctrl+C for other options)"
when:
- upgrade_node_post_upgrade_confirm
+1 -1
View File
@@ -3,7 +3,7 @@
- name: Confirm node upgrade
pause:
echo: true
prompt: "Ready to upgrade node {{ kube_override_hostname | default(inventory_hostname) }}? (Press Enter to continue or Ctrl+C for other options)"
prompt: "Ready to cordon and upgrade node {{ kube_override_hostname | default(inventory_hostname) }}? (Press Enter to continue or Ctrl+C for other options)"
when:
- upgrade_node_confirm
@@ -1,6 +1,6 @@
---
cloud_image: fedora-43
network_plugin: flannel
kube_network_plugin: flannel
container_manager: crio
cluster_layout:
+1 -1
View File
@@ -1,4 +1,4 @@
-r ../requirements.txt
distlib==0.4.3 # required for building collections
molecule==26.4.0
molecule==26.6.0
pytest-testinfra==10.2.2