From 2ffe7f6fd7f6ed4800177c24b36169d04c6a2e07 Mon Sep 17 00:00:00 2001 From: Michal Nasiadka Date: Fri, 24 Apr 2026 10:07:21 +0200 Subject: prechecks: Add a precheck if using test images (quay.io/openstack.kolla) Change-Id: I2babda3d1388f1ee825fa79a1d85d3113b5ecbd4 Signed-off-by: Michal Nasiadka --- ansible/roles/prechecks/defaults/main.yml | 3 +++ ansible/roles/prechecks/tasks/main.yml | 3 +++ ansible/roles/prechecks/tasks/registry_checks.yml | 8 ++++++++ kolla_ansible/cli/commands.py | 12 ++++++++++++ roles/kolla-ansible-deploy/tasks/deploy.yml | 1 + roles/kolla-ansible-reconfigure/tasks/main.yml | 1 + roles/kolla-ansible-upgrade/tasks/main.yml | 1 + 7 files changed, 29 insertions(+) create mode 100644 ansible/roles/prechecks/tasks/registry_checks.yml diff --git a/ansible/roles/prechecks/defaults/main.yml b/ansible/roles/prechecks/defaults/main.yml index f05d1116c..108f8e7d0 100644 --- a/ansible/roles/prechecks/defaults/main.yml +++ b/ansible/roles/prechecks/defaults/main.yml @@ -4,3 +4,6 @@ prechecks_enable_host_os_checks: true # Whether to enable checks for a host NTP daemon. prechecks_enable_host_ntp_checks: true + +# Whether test images (i.e. quay.io/openstack.kolla) are allowed. +kolla_test_images: false diff --git a/ansible/roles/prechecks/tasks/main.yml b/ansible/roles/prechecks/tasks/main.yml index 23a05b256..c0d8dc4c4 100644 --- a/ansible/roles/prechecks/tasks/main.yml +++ b/ansible/roles/prechecks/tasks/main.yml @@ -30,3 +30,6 @@ - name: Import tasks from database_checks.yml ansible.builtin.import_tasks: database_checks.yml + +- name: Import tasks from registry_checks.yml + ansible.builtin.import_tasks: registry_checks.yml diff --git a/ansible/roles/prechecks/tasks/registry_checks.yml b/ansible/roles/prechecks/tasks/registry_checks.yml new file mode 100644 index 000000000..c6ed8fef3 --- /dev/null +++ b/ansible/roles/prechecks/tasks/registry_checks.yml @@ -0,0 +1,8 @@ +--- +- name: Check if using quay.io/openstack.kolla images + ansible.builtin.assert: + that: not (docker_registry == "quay.io" and docker_namespace == "openstack.kolla") + fail_msg: >- + Kolla images from quay.io/openstack.kolla namespace are meant only for testing purposes, + if you want to continue using them please use --use-test-images CLI argument + when: not kolla_test_images | bool diff --git a/kolla_ansible/cli/commands.py b/kolla_ansible/cli/commands.py index 7b79b64ea..15e82f02c 100644 --- a/kolla_ansible/cli/commands.py +++ b/kolla_ansible/cli/commands.py @@ -99,11 +99,23 @@ class InstallDeps(KollaAnsibleMixin, Command): class Prechecks(KollaAnsibleMixin, Command): """Do pre-deployment checks for hosts""" + def get_parser(self, prog_name): + parser = super().get_parser(prog_name) + group = parser.add_argument_group("Prechecks action") + group.add_argument( + "--use-test-images", + action="store_true", + help="Allow use of test images (i.e. quay.io/openstack.kolla)", + ) + return parser + def take_action(self, parsed_args): self.app.LOG.info("Pre-deployment checking") extra_vars = {} extra_vars["kolla_action"] = "precheck" + if parsed_args.use_test_images: + extra_vars["kolla_test_images"] = "yes" playbooks = _choose_playbooks(parsed_args,) diff --git a/roles/kolla-ansible-deploy/tasks/deploy.yml b/roles/kolla-ansible-deploy/tasks/deploy.yml index eb7637bd4..3e0dda3f3 100644 --- a/roles/kolla-ansible-deploy/tasks/deploy.yml +++ b/roles/kolla-ansible-deploy/tasks/deploy.yml @@ -4,6 +4,7 @@ cmd: > . {{ kolla_ansible_venv_path }}/bin/activate && kolla-ansible prechecks + {% if not is_upgrade %}--use-test-images{% endif %} -i /etc/kolla/inventory -vvv >/tmp/logs/ansible/deploy-prechecks 2>&1 diff --git a/roles/kolla-ansible-reconfigure/tasks/main.yml b/roles/kolla-ansible-reconfigure/tasks/main.yml index a610e7a43..3d0c0aedc 100644 --- a/roles/kolla-ansible-reconfigure/tasks/main.yml +++ b/roles/kolla-ansible-reconfigure/tasks/main.yml @@ -4,6 +4,7 @@ cmd: > . {{ kolla_ansible_venv_path }}/bin/activate && kolla-ansible prechecks + --use-test-images -i /etc/kolla/inventory -vvv >/tmp/logs/ansible/reconfigure-prechecks 2>&1 diff --git a/roles/kolla-ansible-upgrade/tasks/main.yml b/roles/kolla-ansible-upgrade/tasks/main.yml index 87b3c8fae..e8a0660dc 100644 --- a/roles/kolla-ansible-upgrade/tasks/main.yml +++ b/roles/kolla-ansible-upgrade/tasks/main.yml @@ -25,6 +25,7 @@ cmd: > . {{ kolla_ansible_venv_path }}/bin/activate && kolla-ansible prechecks + --use-test-images -i /etc/kolla/inventory -vvv >/tmp/logs/ansible/upgrade-prechecks 2>&1 -- cgit v1.2.3