diff --git a/.zuul.d/project.yaml b/.zuul.d/project.yaml index 7618af0c68..9f650e7106 100644 --- a/.zuul.d/project.yaml +++ b/.zuul.d/project.yaml @@ -1,7 +1,7 @@ --- - project: templates: - - openstack-python3-jobs + - openstack-python3-jobs-kolla - openstack-python3-jobs-arm64 - openstack-cover-jobs - check-requirements diff --git a/.zuul.d/python3-jobs.yaml b/.zuul.d/python3-jobs.yaml new file mode 100644 index 0000000000..d3b182e67f --- /dev/null +++ b/.zuul.d/python3-jobs.yaml @@ -0,0 +1,22 @@ +--- +- project-template: + name: openstack-python3-jobs-kolla + # NOTE(gmann): We are using this generic template for python version + # testing. When a new development cycle starts, we need to do two things: + # 1. Update this template for the python version jobs as per the + # new development cycle tetsing runtime defined by TC + # https://governance.openstack.org/tc/reference/runtimes/ + # Use the 'branches' variant to run the applicable python version + # jobs. + # 2. Make sure the previous cycle applicable jobs continue to run for + # the new stable branch. Use the 'branches' variant to run the + # applicable python version jobs. + description: | + Runs unit tests for an OpenStack Python project under the CPython + version 3 releases designated for testing the latest release. + check: + jobs: + - openstack-tox-pep8 + - openstack-tox-py38: + voting: false + - openstack-tox-py311 diff --git a/docker/glance/glance-base/Dockerfile.j2 b/docker/glance/glance-base/Dockerfile.j2 index bb0f071801..8da968219e 100644 --- a/docker/glance/glance-base/Dockerfile.j2 +++ b/docker/glance/glance-base/Dockerfile.j2 @@ -23,6 +23,10 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build ] %} {% endif %} +{% if base_distro_tag.startswith('24.04') %} +RUN {{ macros.upper_constraints_version_change("taskflow", "5.6.0", "5.8.0") }} +{% endif %} + {{ macros.install_packages(glance_base_packages | customizable("packages")) }} ADD glance-base-archive /glance-base-source diff --git a/docker/ironic/ironic-base/Dockerfile.j2 b/docker/ironic/ironic-base/Dockerfile.j2 index 4b4681b673..3ae0484e0e 100644 --- a/docker/ironic/ironic-base/Dockerfile.j2 +++ b/docker/ironic/ironic-base/Dockerfile.j2 @@ -7,7 +7,7 @@ LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build {% import "macros.j2" as macros with context %} -{{ macros.configure_user(name='ironic') }} +{{ macros.configure_user(name='ironic', shell='/bin/bash') }} ADD ironic-base-archive /ironic-base-source ADD ironic_sudoers /etc/sudoers.d/kolla_ironic_sudoers diff --git a/docker/ironic/ironic-base/extend_start.sh b/docker/ironic/ironic-base/extend_start.sh index e3b1d4e2dc..dc6b05caaf 100644 --- a/docker/ironic/ironic-base/extend_start.sh +++ b/docker/ironic/ironic-base/extend_start.sh @@ -1,12 +1,22 @@ #!/bin/bash LOG_PATH=/var/log/kolla/ironic +METRICS_PATH=/var/lib/ironic-metrics if [[ ! -d "${LOG_PATH}" ]]; then mkdir -p "${LOG_PATH}" fi +if [[ ! -d "${METRICS_PATH}" ]]; then + sudo mkdir -p "${METRICS_PATH}" +fi if [[ $(stat -c %a "${LOG_PATH}") != "755" ]]; then chmod 755 "${LOG_PATH}" fi +if [[ $(stat -c %U:%G "${METRICS_PATH}") != "ironic:ironic" ]]; then + sudo chown ironic:ironic "${METRICS_PATH}" +fi +if [[ $(stat -c %a "${METRICS_PATH}") != "2775" ]]; then + sudo chmod 2775 "${METRICS_PATH}" +fi . /usr/local/bin/kolla_ironic_extend_start diff --git a/docker/ironic/ironic-base/ironic_sudoers b/docker/ironic/ironic-base/ironic_sudoers index 3e7c843f39..1a3f32e1af 100644 --- a/docker/ironic/ironic-base/ironic_sudoers +++ b/docker/ironic/ironic-base/ironic_sudoers @@ -1 +1,4 @@ ironic ALL = (root) NOPASSWD: /var/lib/kolla/venv/bin/ironic-rootwrap /etc/ironic/rootwrap.conf * +ironic ALL = (root) NOPASSWD: /bin/mkdir -p /var/lib/ironic-metrics, /usr/bin/mkdir -p /var/lib/ironic-metrics +ironic ALL = (root) NOPASSWD: /bin/chown ironic\:ironic /var/lib/ironic-metrics, /usr/bin/chown ironic\:ironic /var/lib/ironic-metrics +ironic ALL = (root) NOPASSWD: /bin/chmod 2755 /var/lib/ironic-metrics, /usr/bin/chmod 2775 /var/lib/ironic-metrics diff --git a/kolla/image/unbuildable.py b/kolla/image/unbuildable.py index 8a6eb52509..9fb8d334ea 100644 --- a/kolla/image/unbuildable.py +++ b/kolla/image/unbuildable.py @@ -24,6 +24,7 @@ # Issues for SHA1 keys: # https://github.com/grafana/grafana/issues/41036 'centos': { + "bifrost-base", # Failing after unmaintained switch "hacluster-pcs", # Missing crmsh package "nova-spicehtml5proxy", # Missing spicehtml5 package "ovsdpdk", # Not supported on CentOS @@ -31,11 +32,13 @@ }, 'debian': { + "bifrost-base", # Failing after unmaintained switch "openvswitch-netcontrold", # https://bugs.launchpad.net/kolla/+bug/2027668 }, 'rocky': { + "bifrost-base", # Failing after unmaintained switch "collectd", # Missing libpqos.so.4()(64bit) "hacluster-pcs", # Missing crmsh package "nova-spicehtml5proxy", # Missing spicehtml5 package @@ -44,6 +47,7 @@ }, 'ubuntu': { + "bifrost-base", # Failing after unmaintained switch }, 'ubuntu+aarch64': { diff --git a/releasenotes/notes/taskflow_bump_glance-21e7652d218767d7.yaml b/releasenotes/notes/taskflow_bump_glance-21e7652d218767d7.yaml new file mode 100644 index 0000000000..b3b00b82ba --- /dev/null +++ b/releasenotes/notes/taskflow_bump_glance-21e7652d218767d7.yaml @@ -0,0 +1,5 @@ +--- +fixes: + - | + Bump taskflow to 5.8.0 to address ``No module named 'asyncore'`` error + in Ubuntu Noble container images.