From bb21ffadfd8a8f34b239892bc024feffb546e90d Mon Sep 17 00:00:00 2001 From: Jack Hodgkiss Date: Fri, 24 Jul 2026 16:08:04 +0100 Subject: [PATCH 1/4] feat: add support for updating cache on all systems Change-Id: I3d624ba0f73bc25bbcc08a19bec927e8ba761dc0 Signed-off-by: Jack Hodgkiss --- ansible/host-package-update.yml | 2 +- releasenotes/notes/update-dnf-cache-63b0249549118a3e.yaml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/update-dnf-cache-63b0249549118a3e.yaml diff --git a/ansible/host-package-update.yml b/ansible/host-package-update.yml index 77be7c722..6e99df86a 100644 --- a/ansible/host-package-update.yml +++ b/ansible/host-package-update.yml @@ -16,5 +16,5 @@ name: "{{ host_package_update_packages }}" security: "{{ host_package_update_security | bool if ansible_facts.os_family == 'RedHat' else omit }}" state: latest - update_cache: "{{ True if ansible_facts.os_family == 'Debian' else omit }}" + update_cache: True become: true diff --git a/releasenotes/notes/update-dnf-cache-63b0249549118a3e.yaml b/releasenotes/notes/update-dnf-cache-63b0249549118a3e.yaml new file mode 100644 index 000000000..0f16102f0 --- /dev/null +++ b/releasenotes/notes/update-dnf-cache-63b0249549118a3e.yaml @@ -0,0 +1,5 @@ +--- +features: + - | + Adds support for updating cache during host package update on all + supported systems. From 2278536c0689ad6bb4440c2df511aef1bbd180b6 Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Wed, 29 Jul 2026 09:32:04 +0200 Subject: [PATCH 2/4] CI: Install correct kernel-modules-extra version If a newer kernel than the one present in the CI image is available in upstream repositories, the installed version of kernel-modules-extra will not match the running kernel, leading to failures to apply firewall configuration. Change-Id: Iddc6e1a88cc5aa465590a01163c186ff59ecaf87 Signed-off-by: Pierre Riteau --- roles/kayobe-ci-prep/tasks/main.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/roles/kayobe-ci-prep/tasks/main.yml b/roles/kayobe-ci-prep/tasks/main.yml index faea392e8..11847e719 100644 --- a/roles/kayobe-ci-prep/tasks/main.yml +++ b/roles/kayobe-ci-prep/tasks/main.yml @@ -64,7 +64,7 @@ - name: Install kernel-modules-extra for running kernel ansible.builtin.dnf: - name: "kernel-modules-extra" + name: "kernel-modules-extra-{{ ansible_facts.kernel }}" state: present when: ansible_facts.os_family == 'RedHat' From ce6d4391f42cf3794ad046e1c0e460b64508f1f2 Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Wed, 29 Jul 2026 14:02:33 +0200 Subject: [PATCH 3/4] Fix error when failing to retrieve inspection rule The error path in case of errors other than HTTP 404 was using an undefined variable. Found by ruff: https://docs.astral.sh/ruff/rules/undefined-name/ Closes-Bug: #2162058 Change-Id: Ie926b531f17fd58ae1297b98118fa66a74a82959 Signed-off-by: Pierre Riteau --- .../library/os_ironic_inspector_rule.py | 2 +- releasenotes/notes/bug-2162058-17526c834c348df3.yaml | 5 +++++ 2 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/bug-2162058-17526c834c348df3.yaml diff --git a/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py b/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py index c84743a51..896ad793c 100644 --- a/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py +++ b/ansible/roles/ironic-inspector-rules/library/os_ironic_inspector_rule.py @@ -88,7 +88,7 @@ def _ensure_rule_present(module, client): if not response.ok: if response.status_code != 404: module.fail_json(msg="Failed retrieving Inspector rule %s: %s" - % (module.params['uuid'], repr(e))) + % (module.params['uuid'], response.text)) else: rule = response.json() # Check whether the rule differs from the request. diff --git a/releasenotes/notes/bug-2162058-17526c834c348df3.yaml b/releasenotes/notes/bug-2162058-17526c834c348df3.yaml new file mode 100644 index 000000000..37d39d83d --- /dev/null +++ b/releasenotes/notes/bug-2162058-17526c834c348df3.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - | + Fixes displaying the error when a failure to retrieve an inspection rule + occurs. `LP#2162058 `__ From 6f67922715c0e430f39b84a19fb4427611ac574b Mon Sep 17 00:00:00 2001 From: Pierre Riteau Date: Wed, 29 Jul 2026 23:05:38 +0200 Subject: [PATCH 4/4] Update guidance about install method We don't release kayobe often enough to ensure that the last stable releases are still functional. Recommend using stable branches instead. Change-Id: Ibfe365a9e916b5bf04d73b91f869e60c51cce7f0 Signed-off-by: Pierre Riteau --- doc/source/installation.rst | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/source/installation.rst b/doc/source/installation.rst index b301e8d18..a70db3854 100644 --- a/doc/source/installation.rst +++ b/doc/source/installation.rst @@ -5,9 +5,9 @@ Installation ============ Kayobe can be installed via the released Python packages on PyPI, or from -source. Installing from PyPI ensures the use of well used and tested software, -whereas installing from source allows for the use of unreleased or patched -code. Installing from a Python package is supported from Kayobe 5.0.0 onwards. +source. Installing from source using stable branches is recommended over PyPI +packages, as it provides access to bug fixes that have been merged to stable +branches since the last PyPI release. Prerequisites =============