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:
|
templates:
|
||||||
- openstack-cover-jobs
|
- openstack-cover-jobs
|
||||||
- openstack-python38-jobs
|
- openstack-python38-jobs
|
||||||
|
- openstack-python36-jobs
|
||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- openstack-tox-docs
|
- openstack-tox-docs
|
||||||
- openstack-tox-pep8
|
- openstack-tox-pep8
|
||||||
- armada-chart-build-gate
|
- armada-chart-build-gate
|
||||||
- armada-chart-build-latest-htk
|
- armada-chart-build-latest-htk
|
||||||
|
- armada-docker-build-gate-ubuntu_bionic
|
||||||
- armada-docker-build-gate-ubuntu_focal
|
- armada-docker-build-gate-ubuntu_focal
|
||||||
- armada-airskiff-deploy
|
- armada-airskiff-deploy-focal
|
||||||
|
- armada-airskiff-deploy-bionic
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- openstack-tox-docs
|
- openstack-tox-docs
|
||||||
- openstack-tox-pep8
|
- openstack-tox-pep8
|
||||||
- armada-chart-build-gate
|
- armada-chart-build-gate
|
||||||
|
- armada-docker-build-gate-ubuntu_bionic
|
||||||
- armada-docker-build-gate-ubuntu_focal
|
- armada-docker-build-gate-ubuntu_focal
|
||||||
- armada-airskiff-deploy
|
- armada-airskiff-deploy-focal
|
||||||
|
- armada-airskiff-deploy-bionic
|
||||||
post:
|
post:
|
||||||
jobs:
|
jobs:
|
||||||
|
- armada-docker-build-gate-ubuntu_bionic
|
||||||
- armada-docker-build-gate-ubuntu_focal
|
- armada-docker-build-gate-ubuntu_focal
|
||||||
- armada-docker-publish-ubuntu_focal
|
- armada-docker-publish-ubuntu_focal
|
||||||
|
- armada-docker-publish-ubuntu_bionic
|
||||||
- armada-upload-git-mirror
|
- armada-upload-git-mirror
|
||||||
promote:
|
promote:
|
||||||
jobs:
|
jobs:
|
||||||
@ -69,6 +76,19 @@
|
|||||||
vars:
|
vars:
|
||||||
HTK_COMMIT: master
|
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:
|
- job:
|
||||||
name: armada-docker-build-gate-ubuntu_focal
|
name: armada-docker-build-gate-ubuntu_focal
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
@ -82,7 +102,7 @@
|
|||||||
patch_set: true
|
patch_set: true
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: armada-airskiff-deploy
|
name: armada-airskiff-deploy-focal
|
||||||
nodeset: armada-single-node-focal
|
nodeset: armada-single-node-focal
|
||||||
description: |
|
description: |
|
||||||
Deploy Memcached using Airskiff and submitted Armada changes.
|
Deploy Memcached using Airskiff and submitted Armada changes.
|
||||||
@ -97,7 +117,8 @@
|
|||||||
- airship/treasuremap
|
- airship/treasuremap
|
||||||
vars:
|
vars:
|
||||||
CLONE_ARMADA: false
|
CLONE_ARMADA: false
|
||||||
OSH_INFRA_COMMIT: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
|
OSH_INFRA_COMMIT: 8e96a91ffae745b952c053923aa177e615b49b74
|
||||||
|
ARMADA_IMAGE_DISTRO: ubuntu_focal
|
||||||
irrelevant-files:
|
irrelevant-files:
|
||||||
- ^.*\.rst$
|
- ^.*\.rst$
|
||||||
- ^doc/.*$
|
- ^doc/.*$
|
||||||
@ -106,6 +127,33 @@
|
|||||||
- ^swagger/.*$
|
- ^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:
|
- job:
|
||||||
name: armada-docker-publish-ubuntu_focal
|
name: armada-docker-publish-ubuntu_focal
|
||||||
timeout: 1800
|
timeout: 1800
|
||||||
@ -123,6 +171,23 @@
|
|||||||
static:
|
static:
|
||||||
- latest
|
- 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:
|
- secret:
|
||||||
name: airship_armada_quay_creds
|
name: airship_armada_quay_creds
|
||||||
data:
|
data:
|
||||||
|
2
Makefile
2
Makefile
@ -78,7 +78,7 @@ check-tox:
|
|||||||
exit 2; \
|
exit 2; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
images: check-docker build_armada
|
images: check-docker build_armada run_armada
|
||||||
|
|
||||||
docs: clean build_docs
|
docs: clean build_docs
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@ RUN set -ex && \
|
|||||||
apt-get -y install \
|
apt-get -y install \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
curl \
|
curl \
|
||||||
|
git \
|
||||||
netbase \
|
netbase \
|
||||||
python3-dev \
|
python3-dev \
|
||||||
python3-setuptools \
|
python3-setuptools \
|
||||||
@ -41,7 +42,7 @@ RUN useradd -u 1000 -g users -d $(pwd) armada
|
|||||||
ENTRYPOINT ["./entrypoint.sh"]
|
ENTRYPOINT ["./entrypoint.sh"]
|
||||||
CMD ["server"]
|
CMD ["server"]
|
||||||
|
|
||||||
COPY requirements-frozen.txt ./
|
COPY requirements-frozen-bionic.txt ./requirements.txt
|
||||||
|
|
||||||
ENV LD_LIBRARY_PATH=/usr/local/lib
|
ENV LD_LIBRARY_PATH=/usr/local/lib
|
||||||
|
|
||||||
@ -60,7 +61,7 @@ RUN set -ex \
|
|||||||
' \
|
' \
|
||||||
&& apt-get -qq update \
|
&& apt-get -qq update \
|
||||||
# Keep git separate so it's not removed below
|
# 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 \
|
&& git clone https://github.com/yaml/libyaml.git \
|
||||||
&& cd libyaml \
|
&& cd libyaml \
|
||||||
&& git checkout $LIBYAML_VERSION \
|
&& git checkout $LIBYAML_VERSION \
|
||||||
@ -71,7 +72,7 @@ RUN set -ex \
|
|||||||
&& cd .. \
|
&& cd .. \
|
||||||
&& rm -fr libyaml \
|
&& rm -fr libyaml \
|
||||||
&& python3 -m pip install -U pip \
|
&& 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} \
|
&& curl -fSSL -O ${HELM_ARTIFACT_URL} \
|
||||||
&& tar -xvf $(basename ${HELM_ARTIFACT_URL}) \
|
&& tar -xvf $(basename ${HELM_ARTIFACT_URL}) \
|
||||||
&& mv linux-amd64/helm /usr/local/bin \
|
&& mv linux-amd64/helm /usr/local/bin \
|
||||||
@ -90,6 +91,8 @@ COPY . ./
|
|||||||
|
|
||||||
# Setting the version explicitly for PBR
|
# Setting the version explicitly for PBR
|
||||||
ENV PBR_VERSION 0.8.0
|
ENV PBR_VERSION 0.8.0
|
||||||
|
ENV PATH=$PATH:/usr/bin/git
|
||||||
|
ENV GIT_PYTHON_GIT_EXECUTABLE=/usr/bin/git
|
||||||
|
|
||||||
RUN \
|
RUN \
|
||||||
mv etc/armada /etc/ && \
|
mv etc/armada /etc/ && \
|
||||||
|
@ -19,6 +19,7 @@ RUN set -ex && \
|
|||||||
apt-get -y install \
|
apt-get -y install \
|
||||||
ca-certificates \
|
ca-certificates \
|
||||||
curl \
|
curl \
|
||||||
|
git \
|
||||||
netbase \
|
netbase \
|
||||||
python3-dev \
|
python3-dev \
|
||||||
python3-setuptools \
|
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
|
Operating System :: POSIX :: Linux
|
||||||
Programming Language :: Python
|
Programming Language :: Python
|
||||||
Programming Language :: Python :: 3
|
Programming Language :: Python :: 3
|
||||||
|
Programming Language :: Python :: 3.6
|
||||||
Programming Language :: Python :: 3.8
|
Programming Language :: Python :: 3.8
|
||||||
Programming Language :: Python :: 3.10
|
Programming Language :: Python :: 3.10
|
||||||
|
|
||||||
|
@ -45,7 +45,14 @@
|
|||||||
|
|
||||||
- name: Build Armada with submitted changes
|
- name: Build Armada with submitted changes
|
||||||
shell: |
|
shell: |
|
||||||
|
set -ex
|
||||||
|
export DISTRO={{ ARMADA_IMAGE_DISTRO }}
|
||||||
make images
|
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:
|
args:
|
||||||
chdir: "{{ zuul.project.src_dir }}"
|
chdir: "{{ zuul.project.src_dir }}"
|
||||||
become: yes
|
become: yes
|
||||||
|
23
tox.ini
23
tox.ini
@ -41,9 +41,30 @@ deps=
|
|||||||
-r{toxinidir}/requirements-direct.txt
|
-r{toxinidir}/requirements-direct.txt
|
||||||
commands=
|
commands=
|
||||||
rm -f requirements-frozen.txt
|
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]
|
[testenv:py38]
|
||||||
commands =
|
commands =
|
||||||
|
Loading…
Reference in New Issue
Block a user