From b16e29083a008b91f56880445d86caf9da15e3cd Mon Sep 17 00:00:00 2001 From: Ian Wienand Date: Wed, 9 Feb 2022 10:36:20 +1100 Subject: [PATCH] base-test: fail centos-8 if pointing to centos-8-stream image type As noted inline, this fails the job if using the centos-8 label (see If32d0c4c503e11285fdcb7c45188568a5dc010bf) that actually points at a centos-8-stream node. This should encourage people to fix the node usage. This adds the job to base-test. I602f2c48fa4845288d72de0cf1d46149815d1cbc adds it to production. Change-Id: I84fe5bca76884d8f258a292d0814ad43ac7f2be1 --- playbooks/base-test/pre.yaml | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/playbooks/base-test/pre.yaml b/playbooks/base-test/pre.yaml index a7d0ccd..bf4d8fd 100644 --- a/playbooks/base-test/pre.yaml +++ b/playbooks/base-test/pre.yaml @@ -4,6 +4,29 @@ zuul_log_path_shard_build: true - log-inventory +# NOTE(ianw) 2022-02-09 : centos8 had a hard shutdown at upstream EOL +# that some were not prepared for. We can't remove the node-type +# because that gives a Zuul error, preventing projects merging changes +# to update their node types (see +# 2c05c44c32db895d2a793265fb86b6bf662c32d0). We've removed all the +# CentOS 8 builds in nodepool and the centos-8 node label is pointing +# at centos-8-stream. But to get people moving off this, we fail jobs +# explicitly using the default nodeset with a name of "centos-8" that +# points to a image of type "centos-8-stream". +# +# This way people can set their jobs non-voting as they merge changes +# to explicitly move away from centos-8 node type. We obviously hope +# to remove this hack ASAP. +- hosts: all + tasks: + - name: Fail CentOS 8 nodes + fail: + msg: "The centos-8 node type is no longer supported. You need to switch this job to use a centos-8-stream node type." + when: + - "{{ item }} == 'centos-8'" + - "hostvars[item]['nodepool']['label'] == 'centos-8-stream'" + loop: "{{ query('inventory_hostnames', 'all,!localhost') }}" + - hosts: all pre_tasks: # NOTE(pabelanger): Until we hit the validate-host role, we have a minimal