Restored ubuntu_bionic image build
This PS restores image build for ubuntu_bionic and adds appropriate gates to keep it tested by appropriate functional and integratinal tests. Also the latest osh-infra commit was used with kubernetes 1.27.1 or integration tests. Make images section of Makefile was enriched with run_armada step in order to quicktest the freshly built images - this is vital for focal and bionic images differences. Change-Id: Ida43eebd4aa51fff6261ac9cf5f8259359bc99a9
This commit is contained in:
parent
fa0af775d5
commit
966742ec74
73
.zuul.yaml
73
.zuul.yaml
@ -14,25 +14,32 @@
|
||||
templates:
|
||||
- openstack-cover-jobs
|
||||
- openstack-python38-jobs
|
||||
- openstack-python36-jobs
|
||||
check:
|
||||
jobs:
|
||||
- openstack-tox-docs
|
||||
- openstack-tox-pep8
|
||||
- armada-chart-build-gate
|
||||
- armada-chart-build-latest-htk
|
||||
- armada-docker-build-gate-ubuntu_bionic
|
||||
- armada-docker-build-gate-ubuntu_focal
|
||||
- armada-airskiff-deploy
|
||||
- armada-airskiff-deploy-focal
|
||||
- armada-airskiff-deploy-bionic
|
||||
gate:
|
||||
jobs:
|
||||
- openstack-tox-docs
|
||||
- openstack-tox-pep8
|
||||
- armada-chart-build-gate
|
||||
- armada-docker-build-gate-ubuntu_bionic
|
||||
- armada-docker-build-gate-ubuntu_focal
|
||||
- armada-airskiff-deploy
|
||||
- armada-airskiff-deploy-focal
|
||||
- armada-airskiff-deploy-bionic
|
||||
post:
|
||||
jobs:
|
||||
- armada-docker-build-gate-ubuntu_bionic
|
||||
- armada-docker-build-gate-ubuntu_focal
|
||||
- armada-docker-publish-ubuntu_focal
|
||||
- armada-docker-publish-ubuntu_bionic
|
||||
- armada-upload-git-mirror
|
||||
promote:
|
||||
jobs:
|
||||
@ -69,6 +76,19 @@
|
||||
vars:
|
||||
HTK_COMMIT: master
|
||||
|
||||
- job:
|
||||
name: armada-docker-build-gate-ubuntu_bionic
|
||||
timeout: 1800
|
||||
run: tools/gate/playbooks/docker-image-build.yaml
|
||||
nodeset: armada-single-node
|
||||
vars:
|
||||
publish: false
|
||||
distro: ubuntu_bionic
|
||||
tags:
|
||||
dynamic:
|
||||
patch_set: true
|
||||
|
||||
|
||||
- job:
|
||||
name: armada-docker-build-gate-ubuntu_focal
|
||||
timeout: 1800
|
||||
@ -82,7 +102,7 @@
|
||||
patch_set: true
|
||||
|
||||
- job:
|
||||
name: armada-airskiff-deploy
|
||||
name: armada-airskiff-deploy-focal
|
||||
nodeset: armada-single-node-focal
|
||||
description: |
|
||||
Deploy Memcached using Airskiff and submitted Armada changes.
|
||||
@ -97,7 +117,8 @@
|
||||
- airship/treasuremap
|
||||
vars:
|
||||
CLONE_ARMADA: false
|
||||
OSH_INFRA_COMMIT: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
|
||||
OSH_INFRA_COMMIT: 8e96a91ffae745b952c053923aa177e615b49b74
|
||||
ARMADA_IMAGE_DISTRO: ubuntu_focal
|
||||
irrelevant-files:
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
@ -106,6 +127,33 @@
|
||||
- ^swagger/.*$
|
||||
|
||||
|
||||
- job:
|
||||
name: armada-airskiff-deploy-bionic
|
||||
nodeset: armada-single-node-focal
|
||||
description: |
|
||||
Deploy Memcached using Airskiff and submitted Armada changes.
|
||||
timeout: 9600
|
||||
voting: true
|
||||
pre-run:
|
||||
- tools/gate/playbooks/airskiff-reduce-site.yaml
|
||||
- tools/gate/playbooks/git-config.yaml
|
||||
run: tools/gate/playbooks/airskiff-deploy.yaml
|
||||
post-run: tools/gate/playbooks/debug-report.yaml
|
||||
required-projects:
|
||||
- airship/treasuremap
|
||||
vars:
|
||||
CLONE_ARMADA: false
|
||||
OSH_INFRA_COMMIT: 8e96a91ffae745b952c053923aa177e615b49b74
|
||||
ARMADA_IMAGE_DISTRO: ubuntu_bionic
|
||||
irrelevant-files:
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- ^examples/.*$
|
||||
- ^releasenotes/.*$
|
||||
- ^swagger/.*$
|
||||
|
||||
|
||||
|
||||
- job:
|
||||
name: armada-docker-publish-ubuntu_focal
|
||||
timeout: 1800
|
||||
@ -123,6 +171,23 @@
|
||||
static:
|
||||
- latest
|
||||
|
||||
- job:
|
||||
name: armada-docker-publish-ubuntu_bionic
|
||||
timeout: 1800
|
||||
run: tools/gate/playbooks/docker-image-build.yaml
|
||||
nodeset: armada-single-node
|
||||
secrets:
|
||||
- airship_armada_quay_creds
|
||||
vars:
|
||||
publish: true
|
||||
distro: ubuntu_bionic
|
||||
tags:
|
||||
dynamic:
|
||||
branch: true
|
||||
commit: true
|
||||
static:
|
||||
- latest
|
||||
|
||||
- secret:
|
||||
name: airship_armada_quay_creds
|
||||
data:
|
||||
|
2
Makefile
2
Makefile
@ -78,7 +78,7 @@ check-tox:
|
||||
exit 2; \
|
||||
fi
|
||||
|
||||
images: check-docker build_armada
|
||||
images: check-docker build_armada run_armada
|
||||
|
||||
docs: clean build_docs
|
||||
|
||||
|
@ -19,6 +19,7 @@ RUN set -ex && \
|
||||
apt-get -y install \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
netbase \
|
||||
python3-dev \
|
||||
python3-setuptools \
|
||||
@ -41,7 +42,7 @@ RUN useradd -u 1000 -g users -d $(pwd) armada
|
||||
ENTRYPOINT ["./entrypoint.sh"]
|
||||
CMD ["server"]
|
||||
|
||||
COPY requirements-frozen.txt ./
|
||||
COPY requirements-frozen-bionic.txt ./requirements.txt
|
||||
|
||||
ENV LD_LIBRARY_PATH=/usr/local/lib
|
||||
|
||||
@ -60,7 +61,7 @@ RUN set -ex \
|
||||
' \
|
||||
&& apt-get -qq update \
|
||||
# Keep git separate so it's not removed below
|
||||
&& apt-get install -y $buildDeps git --no-install-recommends \
|
||||
&& apt-get install -y $buildDeps --no-install-recommends \
|
||||
&& git clone https://github.com/yaml/libyaml.git \
|
||||
&& cd libyaml \
|
||||
&& git checkout $LIBYAML_VERSION \
|
||||
@ -71,7 +72,7 @@ RUN set -ex \
|
||||
&& cd .. \
|
||||
&& rm -fr libyaml \
|
||||
&& python3 -m pip install -U pip \
|
||||
&& pip3 install -r requirements-frozen.txt --no-cache-dir \
|
||||
&& pip3 install -r requirements.txt --no-cache-dir \
|
||||
&& curl -fSSL -O ${HELM_ARTIFACT_URL} \
|
||||
&& tar -xvf $(basename ${HELM_ARTIFACT_URL}) \
|
||||
&& mv linux-amd64/helm /usr/local/bin \
|
||||
@ -90,6 +91,8 @@ COPY . ./
|
||||
|
||||
# Setting the version explicitly for PBR
|
||||
ENV PBR_VERSION 0.8.0
|
||||
ENV PATH=$PATH:/usr/bin/git
|
||||
ENV GIT_PYTHON_GIT_EXECUTABLE=/usr/bin/git
|
||||
|
||||
RUN \
|
||||
mv etc/armada /etc/ && \
|
||||
|
@ -19,6 +19,7 @@ RUN set -ex && \
|
||||
apt-get -y install \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
netbase \
|
||||
python3-dev \
|
||||
python3-setuptools \
|
||||
|
92
requirements-frozen-bionic.txt
Normal file
92
requirements-frozen-bionic.txt
Normal file
@ -0,0 +1,92 @@
|
||||
alabaster==0.7.13
|
||||
attrs==22.2.0
|
||||
Babel==2.11.0
|
||||
bcrypt==4.0.1
|
||||
cachetools==4.2.4
|
||||
certifi==2023.5.7
|
||||
chardet==3.0.4
|
||||
click==8.0.4
|
||||
configparser==5.2.0
|
||||
debtcollector==2.5.0
|
||||
decorator==5.1.1
|
||||
deepdiff==5.7.0
|
||||
docutils==0.17
|
||||
dogpile.cache==1.2.0
|
||||
dulwich==0.20.50
|
||||
falcon==3.1.1
|
||||
gitdb==4.0.9
|
||||
GitPython==3.1.18
|
||||
google-auth==2.18.1
|
||||
idna==2.10
|
||||
imagesize==1.4.1
|
||||
importlib-metadata==2.1.3
|
||||
importlib-resources==5.4.0
|
||||
iso8601==1.1.0
|
||||
Jinja2==3.0.3
|
||||
jsonschema==3.2.0
|
||||
keystoneauth1==5.1.1
|
||||
keystonemiddleware==9.5.0
|
||||
kubernetes==26.1.0
|
||||
MarkupSafe==2.0.1
|
||||
msgpack==1.0.5
|
||||
netaddr==0.8.0
|
||||
netifaces==0.11.0
|
||||
nose==1.3.7
|
||||
oauthlib==3.2.2
|
||||
ordered-set==4.0.2
|
||||
os-service-types==1.7.0
|
||||
oslo.cache==2.11.0
|
||||
oslo.config==8.7.1
|
||||
oslo.context==4.1.0
|
||||
oslo.i18n==5.1.0
|
||||
oslo.log==4.6.0
|
||||
oslo.middleware==4.4.0
|
||||
oslo.policy==3.10.1
|
||||
oslo.serialization==4.3.0
|
||||
oslo.utils==4.12.3
|
||||
packaging==21.3
|
||||
Paste==3.5.3
|
||||
PasteDeploy==2.1.1
|
||||
pbr==5.11.1
|
||||
pip==21.3.1
|
||||
prometheus-client==0.8.0
|
||||
py==1.11.0
|
||||
pyasn1==0.5.0
|
||||
pyasn1-modules==0.3.0
|
||||
pycadf==3.1.1
|
||||
Pygments==2.14.0
|
||||
pylibyaml==0.1.0
|
||||
pyparsing==3.0.9
|
||||
pyrsistent==0.18.0
|
||||
python-dateutil==2.8.1
|
||||
python-keystoneclient==4.5.0
|
||||
pytz==2023.3
|
||||
PyYAML==5.4.1
|
||||
reno==4.0.0
|
||||
requests==2.23.0
|
||||
requests-oauthlib==1.3.1
|
||||
retry==0.9.2
|
||||
rfc3986==1.5.0
|
||||
rsa==4.9
|
||||
setuptools==45.2.0
|
||||
six==1.16.0
|
||||
smmap==5.0.0
|
||||
snowballstemmer==2.2.0
|
||||
Sphinx==3.3.1
|
||||
sphinx-rtd-theme==0.5.0
|
||||
sphinxcontrib-applehelp==1.0.2
|
||||
sphinxcontrib-devhelp==1.0.2
|
||||
sphinxcontrib-htmlhelp==2.0.0
|
||||
sphinxcontrib-jsmath==1.0.1
|
||||
sphinxcontrib-qthelp==1.0.3
|
||||
sphinxcontrib-serializinghtml==1.1.5
|
||||
statsd==4.0.1
|
||||
stevedore==3.5.2
|
||||
typing_extensions==4.1.1
|
||||
urllib3==1.25.11
|
||||
uWSGI==2.0.21
|
||||
WebOb==1.8.7
|
||||
websocket-client==1.3.1
|
||||
wheel==0.37.1
|
||||
wrapt==1.15.0
|
||||
zipp==3.6.0
|
@ -14,6 +14,7 @@ classifier =
|
||||
Operating System :: POSIX :: Linux
|
||||
Programming Language :: Python
|
||||
Programming Language :: Python :: 3
|
||||
Programming Language :: Python :: 3.6
|
||||
Programming Language :: Python :: 3.8
|
||||
Programming Language :: Python :: 3.10
|
||||
|
||||
|
@ -45,7 +45,14 @@
|
||||
|
||||
- name: Build Armada with submitted changes
|
||||
shell: |
|
||||
set -ex
|
||||
export DISTRO={{ ARMADA_IMAGE_DISTRO }}
|
||||
make images
|
||||
if test "${DISTRO}" = 'ubuntu_bionic'
|
||||
then
|
||||
# this trick is needed to use bionic image instead of focal in airskiff deployment test
|
||||
docker tag quay.io/airshipit/armada:latest-ubuntu_bionic quay.io/airshipit/armada:latest-ubuntu_focal
|
||||
fi
|
||||
args:
|
||||
chdir: "{{ zuul.project.src_dir }}"
|
||||
become: yes
|
||||
|
23
tox.ini
23
tox.ini
@ -41,9 +41,30 @@ deps=
|
||||
-r{toxinidir}/requirements-direct.txt
|
||||
commands=
|
||||
rm -f requirements-frozen.txt
|
||||
sh -c "pip freeze --all | grep -vE 'deckhand|pyinotify|pkg-resources==0.0.0' > requirements-frozen.txt"
|
||||
sh -c "pip freeze --all | grep -vE 'armada|pyinotify|pkg-resources==0.0.0' > requirements-frozen.txt"
|
||||
|
||||
|
||||
[testenv:freeze-bionic]
|
||||
basepython=python3
|
||||
recreate = True
|
||||
allowlist_externals=
|
||||
rm
|
||||
sh
|
||||
deps=
|
||||
-r{toxinidir}/requirements-direct.txt
|
||||
commands=
|
||||
rm -f requirements-frozen-bionic.txt
|
||||
sh -c "pip freeze --all | grep -vE 'armada|pyinotify|pkg-resources==0.0.0' > requirements-frozen-bionic.txt"
|
||||
|
||||
|
||||
[testenv:py36]
|
||||
deps=
|
||||
-r{toxinidir}/requirements-frozen-bionic.txt
|
||||
-r{toxinidir}/test-requirements.txt
|
||||
commands =
|
||||
{[testenv]commands}
|
||||
stestr run {posargs}
|
||||
stestr slowest
|
||||
|
||||
[testenv:py38]
|
||||
commands =
|
||||
|
Loading…
Reference in New Issue
Block a user