From 1c5f657f976dc307e3dfa1227efded586a67846d Mon Sep 17 00:00:00 2001 From: Arthur Outhenin-Chalandre Date: Tue, 8 Aug 2023 10:54:15 +0200 Subject: [PATCH] tests/packet-ci: sanitize branch name for kubernetes labels (#10315) '/' doesn't work in kubernetes label so we replace it. Signed-off-by: Arthur Outhenin-Chalandre --- tests/cloud_playbooks/roles/packet-ci/defaults/main.yml | 3 +++ .../cloud_playbooks/roles/packet-ci/tasks/cleanup-old-vms.yml | 2 +- tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml | 2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/tests/cloud_playbooks/roles/packet-ci/defaults/main.yml b/tests/cloud_playbooks/roles/packet-ci/defaults/main.yml index aad35de0e..17dd3d8b9 100644 --- a/tests/cloud_playbooks/roles/packet-ci/defaults/main.yml +++ b/tests/cloud_playbooks/roles/packet-ci/defaults/main.yml @@ -6,6 +6,9 @@ vm_cpu_sockets: 1 vm_cpu_threads: 2 vm_memory: 2048Mi +# Replace invalid characters so that we can use the branch name in kubernetes labels +branch_name_sane: "{{ branch | regex_replace('/', '-') }}" + # Request/Limit allocation settings cpu_allocation_ratio: 0.5 diff --git a/tests/cloud_playbooks/roles/packet-ci/tasks/cleanup-old-vms.yml b/tests/cloud_playbooks/roles/packet-ci/tasks/cleanup-old-vms.yml index cf81e81b5..052a44fd1 100644 --- a/tests/cloud_playbooks/roles/packet-ci/tasks/cleanup-old-vms.yml +++ b/tests/cloud_playbooks/roles/packet-ci/tasks/cleanup-old-vms.yml @@ -6,7 +6,7 @@ kind: Namespace label_selectors: - cijobs = true - - branch = {{ branch }} + - branch = {{ branch_name_sane }} register: namespaces - name: Delete older namespaces diff --git a/tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml b/tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml index 688b580cd..4070b2402 100644 --- a/tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml +++ b/tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml @@ -3,7 +3,7 @@ - name: "Create CI namespace {{ test_name }} for test vms" shell: |- kubectl create namespace {{ test_name }} && - kubectl label namespace {{ test_name }} cijobs=true branch="{{ branch }}" pipeline_id="{{ pipeline_id }}" + kubectl label namespace {{ test_name }} cijobs=true branch="{{ branch_name_sane }}" pipeline_id="{{ pipeline_id }}" changed_when: false - name: "Create temp dir /tmp/{{ test_name }} for CI files"