From f543332804b24c641c7d373a10bb3ec921bfe696 Mon Sep 17 00:00:00 2001 From: astebenkova Date: Fri, 17 May 2024 14:59:54 +0300 Subject: [PATCH] [images] Upgrade distro version to Ubuntu Jammy + add python3-netifaces for successful pip packages compilation and orphan-sysvinit-scripts to install /etc/init.d/rsyslog script in Jammy + build specific image instead of all in airship-porthole-images-* jobs Change-Id: I5c9b3bf81db95a03bd623d3c46f37f37bd595504 --- .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../values_overrides/images-ubuntu_jammy.yaml | 5 ++ .../calicoctl-utility/Dockerfile.ubuntu_jammy | 53 +++++++++++++ .../Dockerfile_calicoq_calicoctl.ubuntu_jammy | 61 ++++++++++++++ images/ceph-utility/Dockerfile.ubuntu_jammy | 66 ++++++++++++++++ .../compute-utility/Dockerfile.ubuntu_jammy | 53 +++++++++++++ .../etcdctl-utility/Dockerfile.ubuntu_jammy | 60 ++++++++++++++ .../Dockerfile.ubuntu_jammy | 67 ++++++++++++++++ .../openstack-utility/Dockerfile.ubuntu_jammy | 44 +++++++++++ .../Dockerfile.ubuntu_jammy | 57 +++++++++++++ tools/deployment/004-make-images.sh | 4 +- tools/gate/playbooks/docker-image-build.yaml | 5 +- .../roles/airship-run-script/tasks/main.yaml | 1 + .../roles/upgrade-host/tasks/main.yaml | 2 +- zuul.d/base.yaml | 79 +++++++++++++------ zuul.d/calicoctl-utility.yaml | 68 +++++++++------- zuul.d/ceph-utility.yaml | 68 +++++++++------- zuul.d/compute-utility.yaml | 67 +++++++++------- zuul.d/etcdctl-utility.yaml | 69 +++++++++------- zuul.d/mysqlclient-utility.yaml | 68 +++++++++------- zuul.d/openstack-utility.yaml | 67 +++++++++------- zuul.d/postgresql-utility.yaml | 67 +++++++++------- 27 files changed, 841 insertions(+), 220 deletions(-) create mode 100644 charts/calicoctl-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 charts/ceph-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 charts/compute-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 charts/etcdctl-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 charts/mysqlclient-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 charts/openstack-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 charts/postgresql-utility/values_overrides/images-ubuntu_jammy.yaml create mode 100644 images/calicoctl-utility/Dockerfile.ubuntu_jammy create mode 100644 images/calicoctl-utility/Dockerfile_calicoq_calicoctl.ubuntu_jammy create mode 100644 images/ceph-utility/Dockerfile.ubuntu_jammy create mode 100644 images/compute-utility/Dockerfile.ubuntu_jammy create mode 100644 images/etcdctl-utility/Dockerfile.ubuntu_jammy create mode 100644 images/mysqlclient-utility/Dockerfile.ubuntu_jammy create mode 100644 images/openstack-utility/Dockerfile.ubuntu_jammy create mode 100644 images/postgresql-utility/Dockerfile.ubuntu_jammy diff --git a/charts/calicoctl-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/calicoctl-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..24011e22 --- /dev/null +++ b/charts/calicoctl-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + calicoctl_utility: localhost:5000/porthole-calicoctl-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/charts/ceph-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/ceph-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..092db3f9 --- /dev/null +++ b/charts/ceph-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + ceph_utility: localhost:5000/porthole-ceph-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/charts/compute-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/compute-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..084ae7d5 --- /dev/null +++ b/charts/compute-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + compute_utility: localhost:5000/porthole-compute-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/charts/etcdctl-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/etcdctl-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..83ff0eed --- /dev/null +++ b/charts/etcdctl-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + etcdctl_utility: localhost:5000/porthole-etcdctl-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/charts/mysqlclient-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/mysqlclient-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..d1a6226f --- /dev/null +++ b/charts/mysqlclient-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + mysqlclient_utility: localhost:5000/porthole-mysqlclient-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/charts/openstack-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/openstack-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..15662ac3 --- /dev/null +++ b/charts/openstack-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + openstack_utility: localhost:5000/porthole-openstack-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/charts/postgresql-utility/values_overrides/images-ubuntu_jammy.yaml b/charts/postgresql-utility/values_overrides/images-ubuntu_jammy.yaml new file mode 100644 index 00000000..25c122f2 --- /dev/null +++ b/charts/postgresql-utility/values_overrides/images-ubuntu_jammy.yaml @@ -0,0 +1,5 @@ +--- +images: + tags: + postgresql_utility: localhost:5000/porthole-postgresql-utility:latest-ubuntu_jammy +... \ No newline at end of file diff --git a/images/calicoctl-utility/Dockerfile.ubuntu_jammy b/images/calicoctl-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..b6841e64 --- /dev/null +++ b/images/calicoctl-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,53 @@ +ARG FROM=docker.io/ubuntu:jammy +ARG DOCKER_REGISTRY=quay.io +ARG CALICOCTL_IMAGE_PREFIX=calico/ctl +ARG CALICOCTL_VERSION=v3.27.3 +ARG CALICOCTL_IMAGE="${DOCKER_REGISTRY}/${CALICOCTL_IMAGE_PREFIX}:${CALICOCTL_VERSION}" + +FROM ${CALICOCTL_IMAGE} as stage_calicoctl + +FROM ${FROM} + +ARG CALICOCTL_VERSION + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' \ + org.projectcalico.calicoctl.version="${CALICOCTL_VERSION}" + +RUN set -xe \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends \ + bash \ + locales \ + moreutils \ + sudo \ + socat \ + python3.10 \ + python3-pip \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + oslo.rootwrap==7.0.1 \ + && apt-get clean -y \ + && rm -rf /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +COPY --from=stage_calicoctl /calicoctl /usr/local/bin/calicoctl + +RUN set -xe \ + && chmod 0754 /usr/local/bin/calicoctl \ + && chmod 0754 /usr/bin/socat + +WORKDIR /tmp + +CMD ["/bin/bash"] diff --git a/images/calicoctl-utility/Dockerfile_calicoq_calicoctl.ubuntu_jammy b/images/calicoctl-utility/Dockerfile_calicoq_calicoctl.ubuntu_jammy new file mode 100644 index 00000000..1ddb5dae --- /dev/null +++ b/images/calicoctl-utility/Dockerfile_calicoq_calicoctl.ubuntu_jammy @@ -0,0 +1,61 @@ +ARG FROM=docker.io/ubuntu:jammy +ARG DOCKER_REGISTRY=quay.io +ARG CALICOCTL_IMAGE_PREFIX=tigera/calicoctl +ARG CALICOCTL_VERSION=v3.27.3 +ARG CALICOCTL_IMAGE="${DOCKER_REGISTRY}/${CALICOCTL_IMAGE_PREFIX}:${CALICOCTL_VERSION}" +ARG CALICOQ_IMAGE_PREFIX=tigera/calicoq +ARG CALICOQ_VERSION=v3.27.3 +ARG CALICOQ_IMAGE="${DOCKER_REGISTRY}/${CALICOQ_IMAGE_PREFIX}:${CALICOQ_VERSION}" + +FROM ${CALICOCTL_IMAGE} as stage_calicoctl +FROM ${CALICOQ_IMAGE} as stage_calicoq + +FROM ${FROM} + +ARG CALICOCTL_VERSION +ARG CALICOQ_VERSION + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' \ + io.tigera.calicoctl.version="${CALICOCTL_VERSION}" \ + io.tigera.calicoq.version="${CALICOQ_VERSION}" + +RUN set -xe \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get -y upgrade \ + && apt-get install -y --no-install-recommends \ + bash \ + locales \ + moreutils \ + sudo \ + socat \ + python3.10 \ + python3-pip \ + && pip3 install --upgrade pip \ + && pip3 install \ + oslo.rootwrap==7.0.1 \ + && apt-get clean -y \ + && rm -rf /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +COPY --from=stage_calicoctl /calicoctl /usr/local/bin/calicoctl +COPY --from=stage_calicoq /calicoq /usr/local/bin/calicoq + +RUN set -xe \ + && chmod 0754 /usr/local/bin/calicoctl \ + && chmod 0754 /usr/local/bin/calicoq \ + && chmod 0754 /usr/bin/socat + +WORKDIR /tmp + +CMD ["/bin/bash"] diff --git a/images/ceph-utility/Dockerfile.ubuntu_jammy b/images/ceph-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..85dcadbe --- /dev/null +++ b/images/ceph-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,66 @@ +ARG FROM=docker.io/ubuntu:jammy +FROM ${FROM} + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' + +# Reef 18.2.1 +ARG CEPH_RELEASE=reef +ARG CEPH_RELEASE_TAG=18.2.1-1jammy +ARG KUBE_VERSION=1.29.5 + +ARG CEPH_REPO=https://mirror.mirantis.com/acicd/ceph-reef/ +ARG CEPH_KEY=https://mirror.mirantis.com/acicd/ceph-reef/release.asc + +ADD ${CEPH_KEY} /etc/apt/ceph-${CEPH_RELEASE}.key +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends curl apt-transport-https ca-certificates gnupg \ + && apt-key add /etc/apt/ceph-${CEPH_RELEASE}.key \ + && rm -f /etc/apt/ceph-${CEPH_RELEASE}.key \ + && echo "deb ${CEPH_REPO} jammy main" | tee /etc/apt/sources.list.d/ceph.list \ + && apt-get update \ + && apt-get install -y --no-install-recommends \ + bash \ + moreutils \ + vim \ + sudo \ + screen \ + ceph=${CEPH_RELEASE_TAG} \ + ceph-common=${CEPH_RELEASE_TAG} \ + python3-rbd \ + radosgw=${CEPH_RELEASE_TAG} \ + hexedit \ + jq \ + s3cmd \ + rsyslog \ + rsync \ + xz-utils \ + iperf \ + python3.10 \ + python3-pip \ + orphan-sysvinit-scripts \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + oslo.rootwrap==7.0.1 \ + && curl --silent -L https://dl.k8s.io/v${KUBE_VERSION}/kubernetes-client-linux-amd64.tar.gz \ + | tar -zC /usr/bin --strip-components=3 --wildcards -x "*/*/*/kubectl" \ + && apt-get purge --autoremove -y apt-transport-https \ + && apt-get clean \ + && rm -rf \ + /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +CMD ["/bin/bash"] diff --git a/images/compute-utility/Dockerfile.ubuntu_jammy b/images/compute-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..2b195af7 --- /dev/null +++ b/images/compute-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,53 @@ +ARG FROM=docker.io/ubuntu:jammy +FROM ${FROM} + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' + +ARG KUBE_VERSION=1.29.5 + +ARG DEBIAN_FRONTEND=noninteractive + +RUN set -xe \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends \ + bash \ + ca-certificates \ + openvswitch-switch \ + curl \ + gnupg \ + hexedit \ + iperf \ + iproute2 \ + jq \ + moreutils \ + radosgw \ + rsyslog \ + s3cmd \ + rsync \ + sudo \ + xz-utils \ + python3.10 \ + python3-pip \ + orphan-sysvinit-scripts \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + oslo.rootwrap==7.0.1 \ + && curl --silent -L https://dl.k8s.io/v${KUBE_VERSION}/kubernetes-client-linux-amd64.tar.gz \ + | tar -zC /usr/bin --strip-components=3 --wildcards -x "*/*/*/kubectl" \ + && apt-get clean \ + && rm -rf /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +CMD ["/bin/bash"] diff --git a/images/etcdctl-utility/Dockerfile.ubuntu_jammy b/images/etcdctl-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..8d125ce0 --- /dev/null +++ b/images/etcdctl-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,60 @@ +ARG FROM=docker.io/ubuntu:jammy +FROM ${FROM} + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' + +ARG ETCDCTL_VERSION=v3.5.13 +ARG KUBE_VERSION=1.29.5 + +ENV GOOGLE_URL=https://storage.googleapis.com/etcd +ENV GITHUB_URL=https://github.com/etcd-io/etcd/releases/download +ENV DOWNLOAD_URL=${GITHUB_URL} + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends \ + curl \ + jq \ + locales \ + ca-certificates \ + gnupg \ + bash \ + moreutils \ + sudo \ + rsyslog \ + python3.10 \ + python3-pip \ + python3-netifaces \ + orphan-sysvinit-scripts \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + munch \ + oslo.rootwrap==7.0.1 \ + python-openstackclient==6.2.0 \ + python-swiftclient==4.2.0 \ + && curl --silent -L "${DOWNLOAD_URL}/${ETCDCTL_VERSION}/etcd-${ETCDCTL_VERSION}-linux-amd64.tar.gz" \ + | tar -zC /usr/local/bin --strip-components=1 --wildcards -x "*/etcdctl" \ + && curl --silent -L https://dl.k8s.io/v${KUBE_VERSION}/kubernetes-client-linux-amd64.tar.gz \ + | tar -zC /usr/bin --strip-components=3 --wildcards -x "*/*/*/kubectl" \ + && curl -o /tmp/rclone.deb https://downloads.rclone.org/rclone-current-linux-amd64.deb \ + && apt-get install -y --no-install-recommends /tmp/rclone.deb \ + && apt-get clean -y \ + && rm -rf \ + /tmp/* \ + /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +CMD ["/bin/bash"] diff --git a/images/mysqlclient-utility/Dockerfile.ubuntu_jammy b/images/mysqlclient-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..0b8b69fd --- /dev/null +++ b/images/mysqlclient-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,67 @@ +ARG FROM=docker.io/ubuntu:jammy +FROM ${FROM} + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' + +ARG KUBE_VERSION=1.29.5 +ARG MARIADB_VERSION=10.6 +ARG PERCONA_TOOLKIT_VERSION=3.5.7 + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update \ + && apt-get install -y --no-install-recommends curl apt-transport-https ca-certificates gnupg \ + && curl -LsS -O https://downloads.mariadb.com/MariaDB/mariadb_repo_setup \ + && bash mariadb_repo_setup --mariadb-server-version=${MARIADB_VERSION} \ + && apt-get update && apt-get upgrade -y \ + && apt-get install -y --no-install-recommends \ + bash \ + sudo \ + rsyslog \ + pwgen \ + curl \ + jq \ + libdbi-perl \ + libdbd-mysql-perl \ + moreutils \ + mariadb-client \ + mariadb-server \ + python3.10 \ + python3-pip \ + python3-netifaces \ + orphan-sysvinit-scripts \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + munch \ + oslo.rootwrap==7.0.1 \ + python-openstackclient==6.2.0 \ + python-swiftclient==4.2.0 \ + && sed -i 's/$PrivDropToUser syslog/$PrivDropToUser nobody/' /etc/rsyslog.conf \ + && curl --silent -L https://dl.k8s.io/v${KUBE_VERSION}/kubernetes-client-linux-amd64.tar.gz \ + | tar -zC /usr/bin --strip-components=3 --wildcards -x "*/*/*/kubectl" \ + && curl --silent -L https://downloads.percona.com/downloads/percona-toolkit/${PERCONA_TOOLKIT_VERSION}/binary/tarball/percona-toolkit-${PERCONA_TOOLKIT_VERSION}_$(arch).tar.gz \ + | tar -zC /usr/local/bin/ --strip-components=2 --wildcards -x "*/*/pt-show-grants" \ + && curl -o /tmp/rclone.deb https://downloads.rclone.org/rclone-current-linux-amd64.deb \ + && apt-get install -y --no-install-recommends /tmp/rclone.deb \ + && apt-get purge --autoremove -y apt-transport-https \ + && apt-get clean -y \ + && rm -rf \ + /tmp/* \ + /var/cache/debconf/* \ + /var/lib/apt/lists/* \ + /var/tmp/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +CMD ["/bin/bash"] diff --git a/images/openstack-utility/Dockerfile.ubuntu_jammy b/images/openstack-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..73590b8b --- /dev/null +++ b/images/openstack-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,44 @@ +ARG FROM=docker.io/ubuntu:jammy +FROM ${FROM} + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' + +ARG DEBIAN_FRONTEND=noninteractive + +RUN set -xe \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get upgrade -y \ + && apt-get install --no-install-recommends -y \ + bash \ + sudo \ + rsyslog \ + python3.10 \ + python3-pip \ + python3-netifaces \ + orphan-sysvinit-scripts \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + munch \ + oslo.rootwrap==7.0.1 \ + python-openstackclient==6.2.0 \ + python-glanceclient==4.3.0 \ + python-novaclient==18.3.0 \ + python-neutronclient==9.0.0 \ + python-cinderclient==9.3.0 \ + python-heatclient==3.2.0 \ + && apt-get clean -y \ + && rm -rf /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +CMD ["/bin/bash"] diff --git a/images/postgresql-utility/Dockerfile.ubuntu_jammy b/images/postgresql-utility/Dockerfile.ubuntu_jammy new file mode 100644 index 00000000..721c3d62 --- /dev/null +++ b/images/postgresql-utility/Dockerfile.ubuntu_jammy @@ -0,0 +1,57 @@ +ARG FROM=docker.io/ubuntu:jammy +FROM ${FROM} + +LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode' \ + org.opencontainers.image.url='https://airshipit.org' \ + org.opencontainers.image.documentation='https://opendev.org/airship/porthole' \ + org.opencontainers.image.source='https://opendev.org/airship/porthole' \ + org.opencontainers.image.vendor='The Airship Authors' \ + org.opencontainers.image.licenses='Apache-2.0' + +ARG KUBE_VERSION=1.29.5 + +RUN set -xe \ + && export DEBIAN_FRONTEND=noninteractive \ + && sed -i '/nobody/d' /etc/passwd \ + && echo "nobody:x:65534:65534:nobody:/nonexistent:/bin/bash" >> /etc/passwd \ + && apt-get update && apt-get upgrade -y \ + && apt-get install --no-install-recommends -y curl ca-certificates gnupg \ + && echo "deb https://apt.postgresql.org/pub/repos/apt jammy-pgdg main" > /etc/apt/sources.list.d/pgdg.list \ + && curl -o /etc/apt/trusted.gpg.d/postgresql_release_signing_key.asc 'https://www.postgresql.org/media/keys/ACCC4CF8.asc' \ + && apt-get update \ + && apt-get install --no-install-recommends -y \ + bash \ + moreutils \ + rsyslog \ + screen \ + sudo \ + jq \ + postgresql-client \ + postgresql-common \ + python3.10 \ + python3-pip \ + python3-netifaces \ + orphan-sysvinit-scripts \ + && pip3 install --no-cache-dir --upgrade pip \ + && pip3 install --no-cache-dir \ + munch \ + oslo.rootwrap==7.0.1 \ + python-openstackclient==6.2.0 \ + python-swiftclient==4.2.0 \ + && curl --silent -L https://dl.k8s.io/v${KUBE_VERSION}/kubernetes-client-linux-amd64.tar.gz \ + | tar -zC /usr/bin --strip-components=3 --wildcards -x "*/*/*/kubectl" \ + && curl -o /tmp/rclone.deb https://downloads.rclone.org/rclone-current-linux-amd64.deb \ + && apt-get install -y --no-install-recommends /tmp/rclone.deb \ + && apt-get clean -y \ + && rm -rf \ + /tmp/* \ + /var/cache/debconf/* \ + /var/lib/apt/lists/* + +RUN PYTHON_LOCATION=$(pip3 show oslo.rootwrap|grep Location|awk '{print $2}') \ + && sed -i "/rootwrap_logger.setLevel/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/handler.setFormatter/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/os.path.basename/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py \ + && sed -i "/rootwrap_logger.addHandler/s/.*/#&/" $PYTHON_LOCATION/oslo_rootwrap/wrapper.py + +CMD ["/bin/bash"] diff --git a/tools/deployment/004-make-images.sh b/tools/deployment/004-make-images.sh index 86e0c8f8..ac57925b 100755 --- a/tools/deployment/004-make-images.sh +++ b/tools/deployment/004-make-images.sh @@ -14,7 +14,7 @@ set -x - : "${DISTRO="ubuntu_focal"}" +: "${DISTRO:="ubuntu_focal"}" env make images @@ -38,4 +38,4 @@ docker push localhost:5000/porthole-compute-utility:latest-${DISTRO} docker push localhost:5000/porthole-etcdctl-utility:latest-${DISTRO} docker push localhost:5000/porthole-mysqlclient-utility:latest-${DISTRO} docker push localhost:5000/porthole-openstack-utility:latest-${DISTRO} -docker push localhost:5000/porthole-postgresql-utility:latest-${DISTRO} \ No newline at end of file +docker push localhost:5000/porthole-postgresql-utility:latest-${DISTRO} diff --git a/tools/gate/playbooks/docker-image-build.yaml b/tools/gate/playbooks/docker-image-build.yaml index a13d92bb..70068da9 100644 --- a/tools/gate/playbooks/docker-image-build.yaml +++ b/tools/gate/playbooks/docker-image-build.yaml @@ -61,10 +61,13 @@ - name: Make images - verbosive when: not publish shell: | - make images + make build args: chdir: "{{ zuul.project.src_dir }}" executable: /bin/bash + environment: + DISTRO_SUFFIX: "{{ distro_suffix }}" + IMAGE_NAME: "{{ image_name }}" become: True - name: Make images diff --git a/tools/gate/playbooks/roles/airship-run-script/tasks/main.yaml b/tools/gate/playbooks/roles/airship-run-script/tasks/main.yaml index 43a2cc48..d87663c3 100644 --- a/tools/gate/playbooks/roles/airship-run-script/tasks/main.yaml +++ b/tools/gate/playbooks/roles/airship-run-script/tasks/main.yaml @@ -20,6 +20,7 @@ args: chdir: "{{ zuul.project.src_dir }}/{{ gate_scripts_relative_path }}" environment: + DISTRO: "{{ distro_suffix | default('') }}" CEPH_OSD_DATA_DEVICE: "{{ ceph_osd_data_device }}" POD_NETWORK_CIDR: "{{ kubeadm.pod_network_cidr }}" zuul_site_mirror_fqdn: "{{ zuul_site_mirror_fqdn }}" diff --git a/tools/gate/playbooks/roles/upgrade-host/tasks/main.yaml b/tools/gate/playbooks/roles/upgrade-host/tasks/main.yaml index dacf92f7..a1fdedea 100644 --- a/tools/gate/playbooks/roles/upgrade-host/tasks/main.yaml +++ b/tools/gate/playbooks/roles/upgrade-host/tasks/main.yaml @@ -23,7 +23,7 @@ vars: packages: deb: - - linux-generic-hwe-20.04 + - 'linux-generic-hwe-{{ ansible_distribution_version }}' - name: Reboot Host following kernel upgrade shell: sleep 2 && reboot become: yes diff --git a/zuul.d/base.yaml b/zuul.d/base.yaml index 6102b68e..1effb8c2 100644 --- a/zuul.d/base.yaml +++ b/zuul.d/base.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -11,7 +12,6 @@ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. -# - project: check: @@ -21,17 +21,25 @@ - openstack-tox-docs # - airship-porthole-openstack-tox-py38 # - airship-porthole-openstack-tox-cover - - airship-porthole-images-focal-build-gate-calicoctl-utility - - airship-porthole-images-focal-build-gate-ceph-utility - - airship-porthole-images-focal-build-gate-compute-utility - - airship-porthole-images-focal-build-gate-etcdctl-utility - - airship-porthole-images-focal-build-gate-mysqlclient-utility - - airship-porthole-images-focal-build-gate-openstack-utility - - airship-porthole-images-focal-build-gate-postgresql-utility + - airship-porthole-images-focal-build-calicoctl-utility + - airship-porthole-images-focal-build-ceph-utility + - airship-porthole-images-focal-build-compute-utility + - airship-porthole-images-focal-build-etcdctl-utility + - airship-porthole-images-focal-build-mysqlclient-utility + - airship-porthole-images-focal-build-openstack-utility + - airship-porthole-images-focal-build-postgresql-utility + - airship-porthole-images-jammy-build-calicoctl-utility + - airship-porthole-images-jammy-build-ceph-utility + - airship-porthole-images-jammy-build-compute-utility + - airship-porthole-images-jammy-build-etcdctl-utility + - airship-porthole-images-jammy-build-mysqlclient-utility + - airship-porthole-images-jammy-build-openstack-utility + - airship-porthole-images-jammy-build-postgresql-utility # - airship-porthole-deploy-functional-tests-ubuntu_focal - airship-porthole-openstack-tox-py38-kubeadm - airship-porthole-openstack-tox-cover-kubeadm - airship-porthole-deploy-functional-tests-ubuntu_focal-kubeadm + - airship-porthole-deploy-functional-tests-ubuntu_jammy-kubeadm gate: @@ -41,26 +49,39 @@ - openstack-tox-docs - airship-porthole-openstack-tox-py38-kubeadm - airship-porthole-openstack-tox-cover-kubeadm - - airship-porthole-deploy-functional-tests-ubuntu_focal-kubeadm - - airship-porthole-images-focal-build-gate-calicoctl-utility - - airship-porthole-images-focal-build-gate-ceph-utility - - airship-porthole-images-focal-build-gate-compute-utility - - airship-porthole-images-focal-build-gate-etcdctl-utility - - airship-porthole-images-focal-build-gate-mysqlclient-utility - - airship-porthole-images-focal-build-gate-openstack-utility - - airship-porthole-images-focal-build-gate-postgresql-utility + - airship-porthole-images-focal-build-calicoctl-utility + - airship-porthole-images-focal-build-ceph-utility + - airship-porthole-images-focal-build-compute-utility + - airship-porthole-images-focal-build-etcdctl-utility + - airship-porthole-images-focal-build-mysqlclient-utility + - airship-porthole-images-focal-build-openstack-utility + - airship-porthole-images-focal-build-postgresql-utility + - airship-porthole-images-jammy-build-calicoctl-utility + - airship-porthole-images-jammy-build-ceph-utility + - airship-porthole-images-jammy-build-compute-utility + - airship-porthole-images-jammy-build-etcdctl-utility + - airship-porthole-images-jammy-build-mysqlclient-utility + - airship-porthole-images-jammy-build-openstack-utility + - airship-porthole-images-jammy-build-postgresql-utility post: jobs: - - airship-porthole-images-publish-calicoctl-utility - - airship-porthole-images-publish-ceph-utility - - airship-porthole-images-publish-compute-utility - - airship-porthole-images-publish-etcdctl-utility - - airship-porthole-images-publish-mysqlclient-utility - - airship-porthole-images-publish-openstack-utility - - airship-porthole-images-publish-postgresql-utility + - airship-porthole-images-focal-publish-calicoctl-utility + - airship-porthole-images-focal-publish-ceph-utility + - airship-porthole-images-focal-publish-compute-utility + - airship-porthole-images-focal-publish-etcdctl-utility + - airship-porthole-images-focal-publish-mysqlclient-utility + - airship-porthole-images-focal-publish-openstack-utility + - airship-porthole-images-focal-publish-postgresql-utility + - airship-porthole-images-jammy-publish-calicoctl-utility + - airship-porthole-images-jammy-publish-ceph-utility + - airship-porthole-images-jammy-publish-compute-utility + - airship-porthole-images-jammy-publish-etcdctl-utility + - airship-porthole-images-jammy-publish-mysqlclient-utility + - airship-porthole-images-jammy-publish-openstack-utility + - airship-porthole-images-jammy-publish-postgresql-utility - nodeset: @@ -382,6 +403,17 @@ args: chdir: ../porthole +- job: + name: airship-porthole-deploy-functional-tests-ubuntu_jammy-kubeadm + parent: airship-porthole-deploy-functional-tests-kubeadm + vars: + distro_suffix: ubuntu_jammy + osh_params: + openstack_release: "2023.2" + container_distro_name: ubuntu + container_distro_version: jammy + args: + chdir: ../porthole # - job: # name: airship-porthole-deploy-functional-tests @@ -442,3 +474,4 @@ JXcwlGoK6kvXmYaG2c7yEiH2xNtTzVTai10fsalubQWR4FTmJA5LU9+HatHBa46XLy4gS vMHs2uJudmxhqLIhs5Er248FVjfxw7le5dPun3ir4J7Mjgypu5y8eLCMZAFIwpeqlJrVU uih8ByaTlSEh6FBzle7Hb330RjSztC4pX6xiNAmtkpxhF2rEEFS66B/ixwCphQ= +... diff --git a/zuul.d/calicoctl-utility.yaml b/zuul.d/calicoctl-utility.yaml index 20a77937..8fda1b67 100644 --- a/zuul.d/calicoctl-utility.yaml +++ b/zuul.d/calicoctl-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,11 +14,11 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-calicoctl-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-calicoctl-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-calicoctl-utility - distro_suffix: ubuntu_focal + image_name: porthole-calicoctl-utility files: - ^charts/calicoctl-utility/.*$ - ^images/calicoctl-utility/.*$ @@ -27,44 +28,55 @@ - job: name: airship-porthole-images-publish-calicoctl-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-calicoctl-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-calicoctl-utility - parent: *parent + name: airship-porthole-images-jammy-build-calicoctl-utility + parent: airship-porthole-images-build-calicoctl-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-calicoctl-utility + parent: airship-porthole-images-publish-calicoctl-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-calicoctl-utility + parent: airship-porthole-images-build-calicoctl-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-calicoctl-utility + parent: airship-porthole-images-publish-calicoctl-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-calicoctl-utility + parent: airship-porthole-images-build-calicoctl-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^charts/calicoctl-utility/.*$ - - ^images/calicoctl-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-calicoctl-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-calicoctl-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true - +... \ No newline at end of file diff --git a/zuul.d/ceph-utility.yaml b/zuul.d/ceph-utility.yaml index c16f25ef..d6fb4974 100644 --- a/zuul.d/ceph-utility.yaml +++ b/zuul.d/ceph-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,11 +14,11 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-ceph-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-ceph-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-ceph-utility - distro_suffix: ubuntu_focal + image_name: porthole-ceph-utility files: - ^charts/ceph-utility/.*$ - ^images/ceph-utility/.*$ @@ -27,44 +28,55 @@ - job: name: airship-porthole-images-publish-ceph-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-ceph-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-ceph-utility - parent: *parent + name: airship-porthole-images-jammy-build-ceph-utility + parent: airship-porthole-images-build-ceph-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-ceph-utility + parent: airship-porthole-images-publish-ceph-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-ceph-utility + parent: airship-porthole-images-build-ceph-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-ceph-utility + parent: airship-porthole-images-publish-ceph-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-ceph-utility + parent: airship-porthole-images-build-ceph-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^charts/ceph-utility/.*$ - - ^images/ceph-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-ceph-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-ceph-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true - +... \ No newline at end of file diff --git a/zuul.d/compute-utility.yaml b/zuul.d/compute-utility.yaml index fb8dec1e..7130eb97 100644 --- a/zuul.d/compute-utility.yaml +++ b/zuul.d/compute-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,11 +14,11 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-compute-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-compute-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-compute-utility - distro_suffix: ubuntu_focal + image_name: porthole-compute-utility files: - ^charts/compute-utility/.*$ - ^images/compute-utility/.*$ @@ -27,43 +28,55 @@ - job: name: airship-porthole-images-publish-compute-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-compute-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-compute-utility - parent: *parent + name: airship-porthole-images-jammy-build-compute-utility + parent: airship-porthole-images-build-compute-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-compute-utility + parent: airship-porthole-images-publish-compute-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-compute-utility + parent: airship-porthole-images-build-compute-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-compute-utility + parent: airship-porthole-images-publish-compute-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-compute-utility + parent: airship-porthole-images-build-compute-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^charts/compute-utility/.*$ - - ^images/compute-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-compute-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-compute-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true +... \ No newline at end of file diff --git a/zuul.d/etcdctl-utility.yaml b/zuul.d/etcdctl-utility.yaml index 3b02e501..40f74116 100644 --- a/zuul.d/etcdctl-utility.yaml +++ b/zuul.d/etcdctl-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,57 +14,69 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-etcdctl-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-etcdctl-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-etcdctl-utility - distro_suffix: ubuntu_focal + image_name: porthole-etcdctl-utility files: - - ^images/etcdctl-utility/.*$ - ^charts/etcdctl-utility/.*$ + - ^images/etcdctl-utility/.*$ - ^Makefile$ - ^tools/.*$ - ^zuul.d/.*$ - job: name: airship-porthole-images-publish-etcdctl-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-etcdctl-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-etcdctl-utility - parent: *parent + name: airship-porthole-images-jammy-build-etcdctl-utility + parent: airship-porthole-images-build-etcdctl-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-etcdctl-utility + parent: airship-porthole-images-publish-etcdctl-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-etcdctl-utility + parent: airship-porthole-images-build-etcdctl-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-etcdctl-utility + parent: airship-porthole-images-publish-etcdctl-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-etcdctl-utility + parent: airship-porthole-images-build-etcdctl-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^images/etcdctl-utility/.*$ - - ^charts/etcdctl-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-etcdctl-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-etcdctl-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true +... \ No newline at end of file diff --git a/zuul.d/mysqlclient-utility.yaml b/zuul.d/mysqlclient-utility.yaml index 2ac29b86..0b3157df 100644 --- a/zuul.d/mysqlclient-utility.yaml +++ b/zuul.d/mysqlclient-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,11 +14,11 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-mysqlclient-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-mysqlclient-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-mysqlclient-utility - distro_suffix: ubuntu_focal + image_name: porthole-mysqlclient-utility files: - ^charts/mysqlclient-utility/.*$ - ^images/mysqlclient-utility/.*$ @@ -27,44 +28,55 @@ - job: name: airship-porthole-images-publish-mysqlclient-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-mysqlclient-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-mysqlclient-utility - parent: *parent + name: airship-porthole-images-jammy-build-mysqlclient-utility + parent: airship-porthole-images-build-mysqlclient-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-mysqlclient-utility + parent: airship-porthole-images-publish-mysqlclient-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-mysqlclient-utility + parent: airship-porthole-images-build-mysqlclient-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-mysqlclient-utility + parent: airship-porthole-images-publish-mysqlclient-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-mysqlclient-utility + parent: airship-porthole-images-build-mysqlclient-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^charts/mysqlclient-utility/.*$ - - ^images/mysqlclient-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-mysqlclient-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-mysqlclient-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true - +... \ No newline at end of file diff --git a/zuul.d/openstack-utility.yaml b/zuul.d/openstack-utility.yaml index 5b4d0e9b..f7f7193e 100644 --- a/zuul.d/openstack-utility.yaml +++ b/zuul.d/openstack-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,11 +14,11 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-openstack-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-openstack-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-openstack-utility - distro_suffix: ubuntu_focal + image_name: porthole-openstack-utility files: - ^charts/openstack-utility/.*$ - ^images/openstack-utility/.*$ @@ -27,43 +28,55 @@ - job: name: airship-porthole-images-publish-openstack-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-openstack-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-openstack-utility - parent: *parent + name: airship-porthole-images-jammy-build-openstack-utility + parent: airship-porthole-images-build-openstack-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-openstack-utility + parent: airship-porthole-images-publish-openstack-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-openstack-utility + parent: airship-porthole-images-build-openstack-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-openstack-utility + parent: airship-porthole-images-publish-openstack-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-openstack-utility + parent: airship-porthole-images-build-openstack-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^charts/openstack-utility/.*$ - - ^images/openstack-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-openstack-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-openstack-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true +... \ No newline at end of file diff --git a/zuul.d/postgresql-utility.yaml b/zuul.d/postgresql-utility.yaml index fc98673e..c911c627 100644 --- a/zuul.d/postgresql-utility.yaml +++ b/zuul.d/postgresql-utility.yaml @@ -1,3 +1,4 @@ +--- # Copyright 2019 AT&T Intellectual Property. All other rights reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,11 +14,11 @@ # limitations under the License. - job: - name: airship-porthole-images-focal-build-gate-postgresql-utility - parent: &parent airship-porthole-images + name: airship-porthole-images-build-postgresql-utility + parent: airship-porthole-images + abstract: true vars: - image_name: &image_name porthole-postgresql-utility - distro_suffix: ubuntu_focal + image_name: porthole-postgresql-utility files: - ^charts/postgresql-utility/.*$ - ^images/postgresql-utility/.*$ @@ -27,43 +28,55 @@ - job: name: airship-porthole-images-publish-postgresql-utility - parent: *parent - secrets: + parent: airship-porthole-images + abstract: true + secrets: &secrets - name: quay_credentials secret: quay_credentials pass-to-parent: true vars: - image_name: *image_name - distro_suffix: ubuntu_focal + image_name: porthole-postgresql-utility publish: true tags: dynamic: commit: true - job: - name: airship-porthole-images-bionic-build-gate-postgresql-utility - parent: *parent + name: airship-porthole-images-jammy-build-postgresql-utility + parent: airship-porthole-images-build-postgresql-utility + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-jammy-publish-postgresql-utility + parent: airship-porthole-images-publish-postgresql-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_jammy + +- job: + name: airship-porthole-images-focal-build-postgresql-utility + parent: airship-porthole-images-build-postgresql-utility + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-focal-publish-postgresql-utility + parent: airship-porthole-images-publish-postgresql-utility + secrets: *secrets + vars: + distro_suffix: ubuntu_focal + +- job: + name: airship-porthole-images-bionic-build-postgresql-utility + parent: airship-porthole-images-build-postgresql-utility vars: - image_name: *image_name distro_suffix: ubuntu_bionic - files: - - ^charts/postgresql-utility/.*$ - - ^images/postgresql-utility/.*$ - - ^Makefile$ - - ^tools/.*$ - - ^zuul.d/.*$ - job: name: airship-porthole-images-bionic-publish-postgresql-utility - parent: *parent - secrets: - - name: quay_credentials - secret: quay_credentials - pass-to-parent: true + parent: airship-porthole-images-publish-postgresql-utility + secrets: *secrets vars: - image_name: *image_name distro_suffix: ubuntu_bionic - publish: true - tags: - dynamic: - commit: true +... \ No newline at end of file