Add ubuntu_xenial image build to Armada
All other Airship projects that use Ubuntu currently have a build for Xenial, and until they all move to Bionic we should support using the same version on all of them This adds an ubuntu_xenial Dockerfile in addition to the ubuntu_bionic Dockerfile, and updates the gates to add ubuntu_xenial jobs Change-Id: I63753b02cb6d6ccc40cace9dd35b6e1ba67d1e31
This commit is contained in:
parent
7137e0f281
commit
232a814f73
42
.zuul.yaml
42
.zuul.yaml
|
@ -24,18 +24,21 @@
|
|||
- openstack-tox-pep8
|
||||
- armada-chart-build-gate
|
||||
- armada-chart-build-latest-htk
|
||||
- armada-docker-build-gate-ubuntu
|
||||
- armada-docker-build-gate-ubuntu_bionic
|
||||
- armada-docker-build-gate-ubuntu_xenial
|
||||
- armada-docker-build-gate-opensuse
|
||||
- armada-airskiff-deploy
|
||||
gate:
|
||||
jobs:
|
||||
- openstack-tox-pep8
|
||||
- armada-chart-build-gate
|
||||
- armada-docker-build-gate-ubuntu
|
||||
- armada-docker-build-gate-ubuntu_bionic
|
||||
- armada-docker-build-gate-ubuntu_xenial
|
||||
- armada-docker-build-gate-opensuse
|
||||
post:
|
||||
jobs:
|
||||
- armada-docker-publish-ubuntu
|
||||
- armada-docker-publish-ubuntu_bionic
|
||||
- armada-docker-publish-ubuntu_xenial
|
||||
- armada-docker-publish-opensuse
|
||||
- armada-upload-git-mirror
|
||||
|
||||
|
@ -65,7 +68,7 @@
|
|||
HTK_COMMIT: master
|
||||
|
||||
- job:
|
||||
name: armada-docker-build-gate-ubuntu
|
||||
name: armada-docker-build-gate-ubuntu_bionic
|
||||
timeout: 1800
|
||||
run: tools/gate/playbooks/docker-image-build.yaml
|
||||
nodeset: armada-single-node
|
||||
|
@ -76,6 +79,18 @@
|
|||
dynamic:
|
||||
patch_set: true
|
||||
|
||||
- job:
|
||||
name: armada-docker-build-gate-ubuntu_xenial
|
||||
timeout: 1800
|
||||
run: tools/gate/playbooks/docker-image-build.yaml
|
||||
nodeset: armada-single-node
|
||||
vars:
|
||||
publish: false
|
||||
distro: ubuntu_xenial
|
||||
tags:
|
||||
dynamic:
|
||||
patch_set: true
|
||||
|
||||
- job:
|
||||
name: armada-docker-build-gate-opensuse
|
||||
timeout: 1800
|
||||
|
@ -116,7 +131,7 @@
|
|||
- ^swagger/.*$
|
||||
|
||||
- job:
|
||||
name: armada-docker-publish-ubuntu
|
||||
name: armada-docker-publish-ubuntu_bionic
|
||||
timeout: 1800
|
||||
run: tools/gate/playbooks/docker-image-build.yaml
|
||||
nodeset: armada-single-node
|
||||
|
@ -132,6 +147,23 @@
|
|||
static:
|
||||
- latest
|
||||
|
||||
- job:
|
||||
name: armada-docker-publish-ubuntu_xenial
|
||||
timeout: 1800
|
||||
run: tools/gate/playbooks/docker-image-build.yaml
|
||||
nodeset: armada-single-node
|
||||
secrets:
|
||||
- airship_armada_quay_creds
|
||||
vars:
|
||||
publish: true
|
||||
distro: ubuntu_xenial
|
||||
tags:
|
||||
dynamic:
|
||||
branch: true
|
||||
commit: true
|
||||
static:
|
||||
- latest
|
||||
|
||||
- job:
|
||||
name: armada-docker-publish-opensuse
|
||||
timeout: 1800
|
||||
|
|
|
@ -0,0 +1,80 @@
|
|||
ARG FROM=ubuntu:16.04
|
||||
FROM ${FROM}
|
||||
|
||||
LABEL org.opencontainers.image.authors='airship-discuss@lists.airshipit.org, irc://#airshipit@freenode'
|
||||
LABEL org.opencontainers.image.url='https://airshipit.org'
|
||||
LABEL org.opencontainers.image.documentation='https://airship-armada.readthedocs.org'
|
||||
LABEL org.opencontainers.image.source='https://opendev.org/airship/armada'
|
||||
LABEL org.opencontainers.image.vendor='The Airship Authors'
|
||||
LABEL org.opencontainers.image.licenses='Apache-2.0'
|
||||
|
||||
ENV DEBIAN_FRONTEND noninteractive
|
||||
ENV LANG=C.UTF-8
|
||||
ENV LC_ALL=C.UTF-8
|
||||
|
||||
EXPOSE 8000
|
||||
|
||||
RUN set -ex && \
|
||||
apt-get -qq update && \
|
||||
apt-get -y install \
|
||||
ca-certificates \
|
||||
curl \
|
||||
netbase \
|
||||
python3-dev \
|
||||
python3-setuptools \
|
||||
--no-install-recommends \
|
||||
&& apt-get autoremove -yqq --purge \
|
||||
&& apt-get clean \
|
||||
&& rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/tmp/* \
|
||||
/var/tmp/* \
|
||||
/usr/share/man \
|
||||
/usr/share/doc \
|
||||
/usr/share/doc-base
|
||||
|
||||
WORKDIR /armada
|
||||
|
||||
# Add armada user
|
||||
RUN useradd -u 1000 -g users -d $(pwd) armada
|
||||
|
||||
ENTRYPOINT ["./entrypoint.sh"]
|
||||
CMD ["server"]
|
||||
|
||||
COPY requirements.txt ./
|
||||
|
||||
# Build
|
||||
RUN set -ex \
|
||||
&& buildDeps=' \
|
||||
gcc \
|
||||
libssl-dev \
|
||||
make \
|
||||
python3-pip \
|
||||
' \
|
||||
&& apt-get -qq update \
|
||||
# Keep git separate so it's not removed below
|
||||
&& apt-get install -y $buildDeps git --no-install-recommends \
|
||||
&& python3 -m pip install -U pip \
|
||||
&& pip3 install -r requirements.txt --no-cache-dir \
|
||||
&& apt-get purge -y --auto-remove $buildDeps \
|
||||
&& apt-get autoremove -yqq --purge \
|
||||
&& apt-get clean \
|
||||
&& rm -rf \
|
||||
/var/lib/apt/lists/* \
|
||||
/tmp/* \
|
||||
/var/tmp/* \
|
||||
/usr/share/man \
|
||||
/usr/share/doc \
|
||||
/usr/share/doc-base
|
||||
|
||||
COPY . ./
|
||||
|
||||
# Setting the version explicitly for PBR
|
||||
ENV PBR_VERSION 0.8.0
|
||||
|
||||
RUN \
|
||||
mv etc/armada /etc/ && \
|
||||
chown -R armada:users . && \
|
||||
python3 setup.py install
|
||||
|
||||
USER armada
|
Loading…
Reference in New Issue