Add Ubuntu Bionic support to Pegleg
From community meeting on 04-June-2019 Ubuntu Xenial is the default image for Airship projects, but a desire was voiced to also add support for Ubuntu Bionic at the convenience of the contributors for each project. This patch: 1. Adds a new dockerfile specific to ubuntu:18.04 (bionic) 2. Updates gates to be specific about which ubuntu image is being checked. 3. Add to .zuul.yaml checks/gates/post jobs for bionic Change-Id: Ib10641656f48baffec5b03ec48bf864d67209289
This commit is contained in:
parent
fb2f62d25a
commit
bf2f3781fb
46
.zuul.yaml
46
.zuul.yaml
@ -23,16 +23,19 @@
|
|||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- openstack-tox-pep8
|
- openstack-tox-pep8
|
||||||
- airship-pegleg-docker-build-gate-ubuntu
|
- airship-pegleg-docker-build-gate-ubuntu_xenial
|
||||||
|
- airship-pegleg-docker-build-gate-ubuntu_bionic
|
||||||
- airship-pegleg-docker-build-gate-opensuse
|
- airship-pegleg-docker-build-gate-opensuse
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- openstack-tox-pep8
|
- openstack-tox-pep8
|
||||||
- airship-pegleg-docker-build-gate-ubuntu
|
- airship-pegleg-docker-build-gate-ubuntu_xenial
|
||||||
|
- airship-pegleg-docker-build-gate-ubuntu_bionic
|
||||||
- airship-pegleg-docker-build-gate-opensuse
|
- airship-pegleg-docker-build-gate-opensuse
|
||||||
post:
|
post:
|
||||||
jobs:
|
jobs:
|
||||||
- airship-pegleg-docker-publish-ubuntu
|
- airship-pegleg-docker-publish-ubuntu_xenial
|
||||||
|
- airship-pegleg-docker-publish-ubuntu_bionic
|
||||||
- airship-pegleg-docker-publish-opensuse
|
- airship-pegleg-docker-publish-opensuse
|
||||||
- pegleg-upload-git-mirror
|
- pegleg-upload-git-mirror
|
||||||
|
|
||||||
@ -43,7 +46,7 @@
|
|||||||
label: ubuntu-xenial
|
label: ubuntu-xenial
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-docker-build-gate-ubuntu
|
name: airship-pegleg-docker-build-gate-ubuntu_xenial
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
run: tools/gate/playbooks/docker-image-build.yaml
|
run: tools/gate/playbooks/docker-image-build.yaml
|
||||||
nodeset: airship-pegleg-single-node
|
nodeset: airship-pegleg-single-node
|
||||||
@ -56,6 +59,20 @@
|
|||||||
dynamic:
|
dynamic:
|
||||||
patch_set: true
|
patch_set: true
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: airship-pegleg-docker-build-gate-ubuntu_bionic
|
||||||
|
timeout: 1800
|
||||||
|
run: tools/gate/playbooks/docker-image-build.yaml
|
||||||
|
nodeset: airship-pegleg-single-node
|
||||||
|
irrelevant-files:
|
||||||
|
- '^doc/.*'
|
||||||
|
vars:
|
||||||
|
publish: false
|
||||||
|
distro: ubuntu_bionic
|
||||||
|
tags:
|
||||||
|
dynamic:
|
||||||
|
patch_set: true
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-docker-build-gate-opensuse
|
name: airship-pegleg-docker-build-gate-opensuse
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
@ -71,7 +88,7 @@
|
|||||||
patch_set: true
|
patch_set: true
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-docker-publish-ubuntu
|
name: airship-pegleg-docker-publish-ubuntu_xenial
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
run: tools/gate/playbooks/docker-image-build.yaml
|
run: tools/gate/playbooks/docker-image-build.yaml
|
||||||
nodeset: airship-pegleg-single-node
|
nodeset: airship-pegleg-single-node
|
||||||
@ -89,6 +106,25 @@
|
|||||||
static:
|
static:
|
||||||
- latest
|
- latest
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: airship-pegleg-docker-publish-ubuntu_bionic
|
||||||
|
timeout: 1800
|
||||||
|
run: tools/gate/playbooks/docker-image-build.yaml
|
||||||
|
nodeset: airship-pegleg-single-node
|
||||||
|
secrets:
|
||||||
|
- airship_pegleg_quay_creds
|
||||||
|
irrelevant-files:
|
||||||
|
- '^doc/.*'
|
||||||
|
vars:
|
||||||
|
publish: true
|
||||||
|
distro: ubuntu_bionic
|
||||||
|
tags:
|
||||||
|
dynamic:
|
||||||
|
branch: true
|
||||||
|
commit: true
|
||||||
|
static:
|
||||||
|
- latest
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-docker-publish-opensuse
|
name: airship-pegleg-docker-publish-opensuse
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
|
50
images/pegleg/Dockerfile.ubuntu_bionic
Normal file
50
images/pegleg/Dockerfile.ubuntu_bionic
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
ARG FROM=ubuntu:18.04
|
||||||
|
FROM ${FROM}
|
||||||
|
ARG CFSSLURL=https://pkg.cfssl.org/R1.2/cfssl_linux-amd64
|
||||||
|
|
||||||
|
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-pegleg.readthedocs.org'
|
||||||
|
LABEL org.opencontainers.image.source='https://opendev.org/airship/pegleg'
|
||||||
|
LABEL org.opencontainers.image.vendor='The Airship Authors'
|
||||||
|
LABEL org.opencontainers.image.licenses='Apache-2.0'
|
||||||
|
|
||||||
|
ENV LANG=C.UTF-8
|
||||||
|
ENV LC_ALL=C.UTF-8
|
||||||
|
|
||||||
|
RUN set -ex \
|
||||||
|
&& apt-get update -qq \
|
||||||
|
&& apt-get install -y --no-install-recommends \
|
||||||
|
ca-certificates \
|
||||||
|
curl \
|
||||||
|
gcc \
|
||||||
|
git \
|
||||||
|
libssl-dev \
|
||||||
|
netbase \
|
||||||
|
openssh-client \
|
||||||
|
python3-dev \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
&& python3 -m pip install -U pip \
|
||||||
|
&& apt-get autoremove -yqq --purge \
|
||||||
|
&& apt-get clean \
|
||||||
|
&& rm -rf \
|
||||||
|
/tmp/* \
|
||||||
|
/usr/share/doc \
|
||||||
|
/usr/share/doc-base \
|
||||||
|
/usr/share/man \
|
||||||
|
/var/lib/apt/lists/* \
|
||||||
|
/var/log/* \
|
||||||
|
/var/tmp/*
|
||||||
|
|
||||||
|
VOLUME /var/pegleg
|
||||||
|
WORKDIR /var/pegleg
|
||||||
|
|
||||||
|
COPY requirements.txt /opt/pegleg/requirements.txt
|
||||||
|
RUN pip3 install --no-cache-dir -r /opt/pegleg/requirements.txt
|
||||||
|
|
||||||
|
COPY tools/install-cfssl.sh /opt/pegleg/tools/install-cfssl.sh
|
||||||
|
RUN /opt/pegleg/tools/install-cfssl.sh ${CFSSLURL}
|
||||||
|
|
||||||
|
COPY . /opt/pegleg
|
||||||
|
RUN pip3 install -e /opt/pegleg
|
Loading…
x
Reference in New Issue
Block a user