From 6e2f2dcd5f4721966b01f7d65e83854a2c8d98b8 Mon Sep 17 00:00:00 2001 From: Alex-Welsh Date: Thu, 9 Mar 2023 15:57:34 +0000 Subject: [PATCH 1/5] fix virtualenv ci failure (cherry picked from commit e36a6fb384e20d6d3d3f2c6634fca80f71cd149f) --- etc/kayobe/ansible/configure-aio-resources.yml | 9 ++++++++- etc/kayobe/environments/ci-aio/kolla/globals.yml | 3 +++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/etc/kayobe/ansible/configure-aio-resources.yml b/etc/kayobe/ansible/configure-aio-resources.yml index 78450eaeb..243472d60 100644 --- a/etc/kayobe/ansible/configure-aio-resources.yml +++ b/etc/kayobe/ansible/configure-aio-resources.yml @@ -16,7 +16,14 @@ state: present become: true - - name: Install python openstack client + - name: Ensure latest version of pip is installed + pip: + name: pip + state: latest + virtualenv: '{{ venv }}' + virtualenv_command: "/usr/bin/python3 -m venv" + + - name: Ensure python openstack client is installed pip: name: python-openstackclient virtualenv: '{{ venv }}' diff --git a/etc/kayobe/environments/ci-aio/kolla/globals.yml b/etc/kayobe/environments/ci-aio/kolla/globals.yml index 4ef594ec5..d353b4efc 100644 --- a/etc/kayobe/environments/ci-aio/kolla/globals.yml +++ b/etc/kayobe/environments/ci-aio/kolla/globals.yml @@ -11,3 +11,6 @@ openstack_service_rpc_workers: "1" docker_yum_baseurl: "{{ stackhpc_repo_docker_url }}" docker_yum_gpgkey: "https://download.docker.com/linux/centos/gpg" + +# Increase Grafana timeout +grafana_start_first_node_retries: 20 From 992e2fecb7e413137c8754a544d7aed0cd73d574 Mon Sep 17 00:00:00 2001 From: Mark Goddard Date: Mon, 13 Mar 2023 14:47:03 +0000 Subject: [PATCH 2/5] CI: Install python3-venv on Ubuntu in configure-aio-resources.yml --- etc/kayobe/ansible/configure-aio-resources.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/etc/kayobe/ansible/configure-aio-resources.yml b/etc/kayobe/ansible/configure-aio-resources.yml index 243472d60..48263c641 100644 --- a/etc/kayobe/ansible/configure-aio-resources.yml +++ b/etc/kayobe/ansible/configure-aio-resources.yml @@ -8,13 +8,16 @@ tasks: - name: Install python build dependencies package: - name: - - "{% if ansible_facts.os_family == 'RedHat' %}gcc{% else %}build-essential{% endif %}" - - "python3-dev{% if ansible_facts.os_family == 'RedHat' %}el{% endif %}" + name: "{{ packages | select | list }}" cache_valid_time: "{{ apt_cache_valid_time if ansible_facts.os_family == 'Debian' else omit }}" update_cache: "{{ True if ansible_facts.os_family == 'Debian' else omit }}" state: present become: true + vars: + packages: + - "{% if ansible_facts.os_family == 'RedHat' %}gcc{% else %}build-essential{% endif %}" + - "python3-dev{% if ansible_facts.os_family == 'RedHat' %}el{% endif %}" + - "{% if ansible_facts.os_family == 'Debian' %}python3-venv{% endif %}" - name: Ensure latest version of pip is installed pip: From cdc5a27c46124012956ef7c955a9c5027081a645 Mon Sep 17 00:00:00 2001 From: Will Szumski Date: Mon, 20 Mar 2023 14:12:33 +0000 Subject: [PATCH 3/5] Add workaround for buggy etcdgw library (#446) undefined --- etc/kayobe/kolla.yml | 10 ++++++++++ etc/kayobe/kolla/globals.yml | 4 ++-- .../fixes-broken-etcdgw-library-2af353ec0dc42109.yaml | 6 ++++++ 3 files changed, 18 insertions(+), 2 deletions(-) create mode 100644 releasenotes/notes/fixes-broken-etcdgw-library-2af353ec0dc42109.yaml diff --git a/etc/kayobe/kolla.yml b/etc/kayobe/kolla.yml index cec4425fb..15f4e243c 100644 --- a/etc/kayobe/kolla.yml +++ b/etc/kayobe/kolla.yml @@ -307,6 +307,16 @@ kolla_build_blocks: RUN sed -i 's/"pc-q35-rhel8.5.0"/"pc-q35-*"/' /usr/share/qemu/firmware/50-edk2-ovmf-cc.json {% endif %} {% endraw %} + neutron_server_footer: | + # This is a workaround for a bug in etcd3gw that was fixed in 1.0.1, but not in v0.2.3. + # https://opendev.org/openstack/etcd3gw/commit/ed899b34e464862525f76fff2377a2cceeb65af7 + {% raw %} + {% if base_distro == 'centos' %} + RUN sed -i 's/decode_unicode=True/decode_unicode=False/' /var/lib/kolla/venv/lib/python3.6/site-packages/etcd3gw/watch.py + {% elif base_distro == 'ubuntu' %} + RUN sed -i 's/decode_unicode=True/decode_unicode=False/' /var/lib/kolla/venv/lib/python3.8/site-packages/etcd3gw/watch.py + {% endif %} + {% endraw %} kolla_build_customizations_common: bifrost_base_pip_packages_append: diff --git a/etc/kayobe/kolla/globals.yml b/etc/kayobe/kolla/globals.yml index 13da6b4f8..3510739da 100644 --- a/etc/kayobe/kolla/globals.yml +++ b/etc/kayobe/kolla/globals.yml @@ -7,13 +7,13 @@ docker_yum_gpgkey: "https://download.docker.com/linux/centos/gpg" bifrost_tag: wallaby-20230207T194135 blazar_tag: wallaby-20230303T172322 caso_tag: wallaby-20230303T172322 -neutron_tag: wallaby-20230307T113517 +neutron_tag: wallaby-20230317T170927 {% else %} bifrost_tag: wallaby-20230215T160405 blazar_tag: wallaby-20230303T172458 caso_tag: wallaby-20230303T172458 keystone_tag: wallaby-20230308T104024 -neutron_tag: wallaby-20230307T121824 +neutron_tag: wallaby-20230317T170930 {% endif %} glance_tls_proxy_tag: "{% raw %}{{ haproxy_tag | default(openstack_tag) }}{% endraw %}" diff --git a/releasenotes/notes/fixes-broken-etcdgw-library-2af353ec0dc42109.yaml b/releasenotes/notes/fixes-broken-etcdgw-library-2af353ec0dc42109.yaml new file mode 100644 index 000000000..e48b16fdc --- /dev/null +++ b/releasenotes/notes/fixes-broken-etcdgw-library-2af353ec0dc42109.yaml @@ -0,0 +1,6 @@ +--- +fixes: + - | + The etcdgw library in the neutron-server container has been patched to + workaround a python3 incompatability. This affects the batching feature in + networking generic switch. From a2c3d1f26dcbc3b9846f56136e2d940873644d07 Mon Sep 17 00:00:00 2001 From: Will Szumski Date: Tue, 21 Mar 2023 09:25:12 +0000 Subject: [PATCH 4/5] Update neutron tag --- etc/kayobe/kolla/globals.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etc/kayobe/kolla/globals.yml b/etc/kayobe/kolla/globals.yml index 05afd7c27..5ac963f76 100644 --- a/etc/kayobe/kolla/globals.yml +++ b/etc/kayobe/kolla/globals.yml @@ -13,7 +13,7 @@ blazar_tag: xena-20230315T122920 caso_tag: xena-20230315T122920 ironic_tag: xena-20230316T162305 ironic_dnsmasq_tag: xena-20230214T150257 -neutron_tag: FIXME-BUILD-NEW-IMAGE +neutron_tag: xena-20230320T143013 prometheus_node_exporter_tag: xena-20230310T170439 {% else %} bifrost_tag: xena-20230215T195824 @@ -22,7 +22,7 @@ caso_tag: xena-20230315T122918 ironic_tag: xena-20230317T090705 ironic_dnsmasq_tag: xena-20230215T164524 keystone_tag: xena-20230308T120251 -neutron_tag: FIXME-BUILD-NEW-IMAGE +neutron_tag: xena-20230320T143007 prometheus_node_exporter_tag: xena-20230315T164024 {% endif %} From 320ba8b28da879917beec0ce7c4c90c478aaeaf7 Mon Sep 17 00:00:00 2001 From: Will Szumski Date: Wed, 22 Mar 2023 13:20:23 +0000 Subject: [PATCH 5/5] Switch to using a specific version of CentOS Stream (#454) * Switch to using a specific version of CentOS Stream This is to workaround the following breakage: ``` TASK [MichaelRigart.interfaces : RedHat | ensure network service is started and enabled] *** Tuesday 21 March 2023 09:43:32 +0000 (0:00:00.347) 0:02:20.016 ********* fatal: [controller0]: FAILED! => changed=false msg: |- Unable to start service network: Job for network.service failed because the control process exited with error code. See "systemctl status network.service" and "journalctl -xe" for details. ``` --- .github/workflows/stackhpc-all-in-one.yml | 2 +- terraform/aio/vm.tf | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.github/workflows/stackhpc-all-in-one.yml b/.github/workflows/stackhpc-all-in-one.yml index f819bf7e0..d76a28e8c 100644 --- a/.github/workflows/stackhpc-all-in-one.yml +++ b/.github/workflows/stackhpc-all-in-one.yml @@ -22,7 +22,7 @@ on: vm_image: description: Image for the all-in-one VM type: string - default: CentOS-stream8 + default: bb8c0a34-533f-42fb-a49b-3461e677f3f6 vm_interface: description: Default network interface name type: string diff --git a/terraform/aio/vm.tf b/terraform/aio/vm.tf index bf881e5cc..6a65cff44 100644 --- a/terraform/aio/vm.tf +++ b/terraform/aio/vm.tf @@ -33,9 +33,14 @@ variable "aio_vm_subnet" { type = string } +locals { + image_is_uuid = length(regexall("^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$", var.aio_vm_image)) > 0 +} + data "openstack_images_image_v2" "image" { name = var.aio_vm_image most_recent = true + count = local.image_is_uuid ? 0 : 1 } data "openstack_networking_subnet_v2" "network" { @@ -52,7 +57,7 @@ resource "openstack_compute_instance_v2" "kayobe-aio" { } block_device { - uuid = data.openstack_images_image_v2.image.id + uuid = local.image_is_uuid ? var.aio_vm_image: data.openstack_images_image_v2.image[0].id source_type = "image" volume_size = 100 boot_index = 0