Pegleg focal upgrade
Change-Id: I5c4c519dc725cfb8c7b4e14756347c9336028aff
This commit is contained in:
parent
770cf4256e
commit
70521a9681
39
.zuul.yaml
39
.zuul.yaml
@ -13,7 +13,7 @@
|
|||||||
- project:
|
- project:
|
||||||
templates:
|
templates:
|
||||||
- docs-on-readthedocs
|
- docs-on-readthedocs
|
||||||
- openstack-python36-jobs
|
- openstack-python38-jobs
|
||||||
- openstack-cover-jobs
|
- openstack-cover-jobs
|
||||||
- release-notes-jobs-python3
|
- release-notes-jobs-python3
|
||||||
vars:
|
vars:
|
||||||
@ -26,25 +26,26 @@
|
|||||||
docker_registry_login_url: "https://quay.io/api/v1/"
|
docker_registry_login_url: "https://quay.io/api/v1/"
|
||||||
deb_docker_repo: "{{ zuul_site_mirror_fqdn }}/deb-docker/{{ ansible_distribution_release }}"
|
deb_docker_repo: "{{ zuul_site_mirror_fqdn }}/deb-docker/{{ ansible_distribution_release }}"
|
||||||
image_prefix: "airshipit"
|
image_prefix: "airshipit"
|
||||||
|
base_image_focal: "ubuntu:20.04"
|
||||||
base_image_bionic: "ubuntu:18.04"
|
base_image_bionic: "ubuntu:18.04"
|
||||||
base_image_opensuse: "opensuse/leap:15.1"
|
base_image_opensuse: "opensuse/leap:15.1"
|
||||||
base_image_xenial: "ubuntu:16.04"
|
base_image_xenial: "ubuntu:16.04"
|
||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- openstack-tox-pep8-bionic
|
- openstack-tox-pep8-focal
|
||||||
- pegleg-dependency-vulnerability-check
|
- pegleg-dependency-vulnerability-check
|
||||||
- airship-pegleg-docker-build-gate-ubuntu_bionic
|
- airship-pegleg-docker-build-gate-ubuntu_focal
|
||||||
- airship-pegleg-lint-yaml
|
- airship-pegleg-lint-yaml
|
||||||
|
|
||||||
gate:
|
gate:
|
||||||
jobs:
|
jobs:
|
||||||
- openstack-tox-pep8-bionic
|
- openstack-tox-pep8-focal
|
||||||
- pegleg-dependency-vulnerability-check
|
- pegleg-dependency-vulnerability-check
|
||||||
- airship-pegleg-docker-build-gate-ubuntu_bionic
|
- airship-pegleg-docker-build-gate-ubuntu_focal
|
||||||
- airship-pegleg-lint-yaml
|
- airship-pegleg-lint-yaml
|
||||||
post:
|
post:
|
||||||
jobs:
|
jobs:
|
||||||
- airship-pegleg-docker-publish-ubuntu_bionic
|
- airship-pegleg-docker-publish-ubuntu_focal
|
||||||
- pegleg-upload-git-mirror
|
- pegleg-upload-git-mirror
|
||||||
|
|
||||||
- nodeset:
|
- nodeset:
|
||||||
@ -54,22 +55,22 @@
|
|||||||
label: ubuntu-xenial
|
label: ubuntu-xenial
|
||||||
|
|
||||||
- nodeset:
|
- nodeset:
|
||||||
name: airship-pegleg-single-node-bionic
|
name: airship-pegleg-single-node-focal
|
||||||
nodes:
|
nodes:
|
||||||
- name: primary
|
- name: primary
|
||||||
label: ubuntu-bionic
|
label: ubuntu-focal
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: openstack-tox-pep8-bionic
|
name: openstack-tox-pep8-focal
|
||||||
parent: openstack-tox-pep8
|
parent: openstack-tox-pep8
|
||||||
nodeset: openstack-single-node-bionic
|
nodeset: openstack-single-node-focal
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-lint-yaml
|
name: airship-pegleg-lint-yaml
|
||||||
voting: true
|
voting: true
|
||||||
timeout: 600
|
timeout: 600
|
||||||
run: tools/gate/playbooks/lint-yaml.yaml
|
run: tools/gate/playbooks/lint-yaml.yaml
|
||||||
nodeset: ubuntu-bionic
|
nodeset: ubuntu-focal
|
||||||
irrelevant-files:
|
irrelevant-files:
|
||||||
- ^.*\.rst$
|
- ^.*\.rst$
|
||||||
- ^doc/.*$
|
- ^doc/.*$
|
||||||
@ -79,37 +80,37 @@
|
|||||||
parent: tox-py36
|
parent: tox-py36
|
||||||
voting: false
|
voting: false
|
||||||
timeout: 600
|
timeout: 600
|
||||||
nodeset: ubuntu-bionic
|
nodeset: ubuntu-focal
|
||||||
vars:
|
vars:
|
||||||
tox_envlist: safety
|
tox_envlist: safety
|
||||||
bindep_profile: test py36
|
bindep_profile: test py38
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-docker-build-gate-ubuntu_bionic
|
name: airship-pegleg-docker-build-gate-ubuntu_focal
|
||||||
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-bionic
|
nodeset: airship-pegleg-single-node-focal
|
||||||
irrelevant-files:
|
irrelevant-files:
|
||||||
- '^doc/.*'
|
- '^doc/.*'
|
||||||
vars:
|
vars:
|
||||||
publish: false
|
publish: false
|
||||||
distro: ubuntu_bionic
|
distro: ubuntu_focal
|
||||||
tags:
|
tags:
|
||||||
dynamic:
|
dynamic:
|
||||||
patch_set: true
|
patch_set: true
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: airship-pegleg-docker-publish-ubuntu_bionic
|
name: airship-pegleg-docker-publish-ubuntu_focal
|
||||||
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-bionic
|
nodeset: airship-pegleg-single-node-focal
|
||||||
secrets:
|
secrets:
|
||||||
- airship_pegleg_quay_creds
|
- airship_pegleg_quay_creds
|
||||||
irrelevant-files:
|
irrelevant-files:
|
||||||
- '^doc/.*'
|
- '^doc/.*'
|
||||||
vars:
|
vars:
|
||||||
publish: true
|
publish: true
|
||||||
distro: ubuntu_bionic
|
distro: ubuntu_focal
|
||||||
tags:
|
tags:
|
||||||
dynamic:
|
dynamic:
|
||||||
branch: true
|
branch: true
|
||||||
|
4
Makefile
4
Makefile
@ -27,9 +27,9 @@ PUSH_IMAGE ?= false
|
|||||||
# use this variable for image labels added in internal build process
|
# use this variable for image labels added in internal build process
|
||||||
LABEL ?= org.airshipit.build=community
|
LABEL ?= org.airshipit.build=community
|
||||||
COMMIT ?= $(shell git rev-parse HEAD)
|
COMMIT ?= $(shell git rev-parse HEAD)
|
||||||
DISTRO ?= ubuntu_bionic
|
DISTRO ?= ubuntu_focal
|
||||||
IMAGE ?= $(DOCKER_REGISTRY)/$(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG)-${DISTRO}
|
IMAGE ?= $(DOCKER_REGISTRY)/$(IMAGE_PREFIX)/$(IMAGE_NAME):$(IMAGE_TAG)-${DISTRO}
|
||||||
PYTHON_BASE_IMAGE ?= python:3.6
|
PYTHON_BASE_IMAGE ?= python:3.8
|
||||||
BASE_IMAGE ?=
|
BASE_IMAGE ?=
|
||||||
|
|
||||||
export
|
export
|
||||||
|
34
Pipfile
34
Pipfile
@ -17,22 +17,22 @@ hacking = ">=1.1.0"
|
|||||||
flake8-import-order = ">=0.18.1"
|
flake8-import-order = ">=0.18.1"
|
||||||
|
|
||||||
[packages]
|
[packages]
|
||||||
click = ">=6.7"
|
click = "*"
|
||||||
jsonschema = ">=3.0.1,<4"
|
jsonschema = "*"
|
||||||
cryptography = ">=2.7"
|
cryptography = "*"
|
||||||
python-dateutil = ">=2.8.1"
|
python-dateutil = "*"
|
||||||
GitPython = "~=2.1.11"
|
GitPython = "*"
|
||||||
docker = ">=3.7.2"
|
docker = "*"
|
||||||
pylibyaml = "~=0.1"
|
pylibyaml = "*"
|
||||||
PyYAML = "~=5.1"
|
PyYAML = "*"
|
||||||
deckhand = {git = "https://opendev.org/airship/deckhand.git",ref = "5cd799cc5d04527ac782270008ff647b3779ff05"}
|
deckhand = {git = "https://opendev.org/airship/deckhand.git",ref = "13c5199f18664d66ccdd3a1e54bb40ad2c293d1a"}
|
||||||
shipyard-client = {git = "https://opendev.org/airship/shipyard.git",ref = "e3e71f7d1632c0dc13b436a32c238f9da76d6d88",subdirectory = "src/bin/shipyard_client"}
|
shipyard-client = {git = "https://opendev.org/airship/shipyard.git",ref = "3f9fcff91d92ab9bd8ae48169142e49746620e96",subdirectory = "src/bin/shipyard_client"}
|
||||||
promenade = {git = "https://opendev.org/airship/promenade.git",ref = "c10165c144e0a18137596a3c89f1339d6ed30d0c"}
|
promenade = {git = "https://opendev.org/airship/promenade.git",ref = "97e3721a03ca48d312891694972b827a53714bf9"}
|
||||||
"oslo.i18n" = "~=3.24.0"
|
"oslo.i18n" = "*"
|
||||||
"oslo.utils" = ">=3.42.1"
|
"oslo.utils" = "*"
|
||||||
six = ">=1.15.0"
|
six = "*"
|
||||||
debtcollector = "~=1.22.0"
|
debtcollector = "*"
|
||||||
zipp = "~=3.6.0"
|
zipp = "*"
|
||||||
|
|
||||||
[requires]
|
[requires]
|
||||||
python_version = "3.6"
|
python_version = "3.8"
|
||||||
|
2326
Pipfile.lock
generated
2326
Pipfile.lock
generated
File diff suppressed because it is too large
Load Diff
10
bindep.txt
Normal file
10
bindep.txt
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
# This is a cross-platform list tracking distribution packages needed by tests;
|
||||||
|
# see http://docs.openstack.org/infra/bindep/ for additional information.
|
||||||
|
|
||||||
|
libffi-dev [test platform:dpkg]
|
||||||
|
libkrb5-dev [platform:dpkg]
|
||||||
|
libpq-dev [platform:dpkg]
|
||||||
|
libsasl2-dev [platform:dpkg]
|
||||||
|
libssl-dev [platform:dpkg]
|
||||||
|
libre2-dev [platform:dpkg]
|
||||||
|
libzmq3-dev [platform:dpkg]
|
@ -3,13 +3,15 @@
|
|||||||
# process, which may cause wedges in the gate later.
|
# process, which may cause wedges in the gate later.
|
||||||
|
|
||||||
# Documentation
|
# Documentation
|
||||||
sphinx>=3.1.0
|
sphinx>=3.3.1
|
||||||
oslosphinx>=4.18.0 # Apache-2.0
|
oslosphinx # Apache-2.0
|
||||||
sphinx_rtd_theme>=0.4.3
|
sphinx_rtd_theme~=0.5.0
|
||||||
docutils>=0.17.1
|
docutils~=0.17
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# UML image generation
|
# UML image generation
|
||||||
plantuml>=0.3.0
|
plantuml
|
||||||
|
|
||||||
# Releasenotes
|
# Releasenotes
|
||||||
reno>=3.1.0 # Apache-2.0
|
reno~=4.0.0 # Apache-2.0
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 37 KiB After Width: | Height: | Size: 42 KiB |
75
images/pegleg/Dockerfile.ubuntu_focal
Normal file
75
images/pegleg/Dockerfile.ubuntu_focal
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
ARG FROM=ubuntu:20.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
|
||||||
|
ARG DECKHAND_VERSION=branch/master
|
||||||
|
ARG SHIPYARD_VERSION=branch/master
|
||||||
|
ARG PROMENADE_VERSION=branch/master
|
||||||
|
|
||||||
|
RUN set -ex \
|
||||||
|
&& apt update -qq \
|
||||||
|
&& apt install -y --no-install-recommends \
|
||||||
|
automake \
|
||||||
|
ca-certificates \
|
||||||
|
curl \
|
||||||
|
build-essential \
|
||||||
|
git \
|
||||||
|
gpg \
|
||||||
|
gpg-agent \
|
||||||
|
libssl-dev \
|
||||||
|
libtool \
|
||||||
|
make \
|
||||||
|
netbase \
|
||||||
|
openssh-client \
|
||||||
|
python3-dev \
|
||||||
|
python3-pip \
|
||||||
|
python3-setuptools \
|
||||||
|
&& python3 -m pip install -U pip \
|
||||||
|
&& apt autoremove -yqq --purge \
|
||||||
|
&& apt clean \
|
||||||
|
&& rm -rf \
|
||||||
|
/tmp/* \
|
||||||
|
/usr/share/doc \
|
||||||
|
/usr/share/doc-base \
|
||||||
|
/usr/share/man \
|
||||||
|
/var/lib/apt/lists/* \
|
||||||
|
/var/log/* \
|
||||||
|
/var/tmp/*
|
||||||
|
|
||||||
|
ENV LD_LIBRARY_PATH=/usr/local/lib
|
||||||
|
|
||||||
|
ARG LIBYAML_VERSION=0.2.5
|
||||||
|
RUN set -ex \
|
||||||
|
&& git clone https://github.com/yaml/libyaml.git \
|
||||||
|
&& cd libyaml \
|
||||||
|
&& git checkout $LIBYAML_VERSION \
|
||||||
|
&& ./bootstrap \
|
||||||
|
&& ./configure \
|
||||||
|
&& make \
|
||||||
|
&& make install \
|
||||||
|
&& cd .. \
|
||||||
|
&& rm -fr libyaml
|
||||||
|
|
||||||
|
VOLUME /var/pegleg
|
||||||
|
WORKDIR /var/pegleg
|
||||||
|
|
||||||
|
COPY requirements.txt /opt/pegleg/requirements.txt
|
||||||
|
RUN pip3 install -r https://opendev.org/airship/deckhand/raw/${DECKHAND_VERSION}/requirements.txt \
|
||||||
|
&& pip3 install -r https://opendev.org/airship/promenade/raw/${PROMENADE_VERSION}/requirements.txt \
|
||||||
|
&& pip3 install -r https://opendev.org/airship/shipyard/raw/${SHIPYARD_VERSION}/src/bin/shipyard_client/requirements.txt \
|
||||||
|
&& 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 --use-pep517
|
261
requirements.txt
261
requirements.txt
@ -1,126 +1,175 @@
|
|||||||
-i https://pypi.org/simple
|
-i https://pypi.org/simple
|
||||||
alembic==1.0.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
alabaster==0.7.13 ; python_version >= '3.6'
|
||||||
amqp==2.6.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
alembic==1.4.3 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
argparse==1.4.0
|
amqp==2.6.1 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
asn1crypto==1.3.0
|
argcomplete==3.0.8 ; python_version >= '3.6'
|
||||||
babel==2.8.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
arrow==0.17.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
beaker==1.10.0
|
attrs==23.1.0 ; python_version >= '3.7'
|
||||||
cachetools==4.1.0; python_version ~= '3.5'
|
autopage==0.5.1 ; python_version >= '3.6'
|
||||||
certifi==2020.4.5.2
|
babel==2.12.1 ; python_version >= '3.7'
|
||||||
cffi==1.14.0
|
bcrypt==4.0.1 ; python_version >= '3.6'
|
||||||
|
beaker==1.12.0
|
||||||
|
cachetools==5.3.0 ; python_version ~= '3.7'
|
||||||
|
certifi==2022.12.7 ; python_version >= '3.6'
|
||||||
|
cffi==1.15.1
|
||||||
chardet==3.0.4
|
chardet==3.0.4
|
||||||
|
charset-normalizer==3.1.0 ; python_full_version >= '3.7.0'
|
||||||
click==6.7
|
click==6.7
|
||||||
cliff==3.1.0; python_version >= '3.5'
|
click-default-group==1.2
|
||||||
cmd2==0.8.9
|
cliff==3.10.1 ; python_version >= '3.6'
|
||||||
cryptography>=2.7
|
cmd2==2.4.3 ; python_version >= '3.6'
|
||||||
debtcollector==1.22.0
|
configparser==5.3.0 ; python_version >= '3.7'
|
||||||
decorator==4.4.2
|
coverage==7.2.4 ; python_version >= '3.7'
|
||||||
deepdiff==3.3.0
|
cryptography==3.4.8
|
||||||
dnspython==1.16.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
debtcollector==2.5.0
|
||||||
docker-pycreds==0.4.0
|
git+https://opendev.org/airship/deckhand.git@13c5199f18664d66ccdd3a1e54bb40ad2c293d1a#egg=deckhand
|
||||||
docker==3.7.2
|
decorator==5.1.1 ; python_version >= '3.5'
|
||||||
dogpile.cache==0.9.2
|
deepdiff==5.8.1 ; python_version >= '3.6'
|
||||||
eventlet==0.25.2
|
distlib==0.3.6
|
||||||
|
dnspython==2.3.0 ; python_version >= '3.7' and python_version < '4.0'
|
||||||
|
docker==5.0.3
|
||||||
|
docutils==0.17 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
|
dogpile.cache==1.2.0 ; python_version >= '3.6'
|
||||||
|
dulwich==0.21.3 ; python_version >= '3.7'
|
||||||
|
eventlet==0.33.3
|
||||||
extras==1.0.0
|
extras==1.0.0
|
||||||
falcon==1.4.1
|
falcon==3.1.1 ; python_version >= '3.5'
|
||||||
fasteners==0.15
|
fasteners==0.18 ; python_version >= '3.6'
|
||||||
|
filelock==3.12.0 ; python_version >= '3.7'
|
||||||
fixtures==3.0.0
|
fixtures==3.0.0
|
||||||
flake8==3.7.9
|
flake8==3.8.4 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
futurist==2.2.0; python_version >= '3.6'
|
futurist==2.4.1 ; python_version >= '3.6'
|
||||||
git+https://opendev.org/airship/deckhand.git@5cd799cc5d04527ac782270008ff647b3779ff05#egg=deckhand
|
gitdb==4.0.10 ; python_version >= '3.7'
|
||||||
git+https://opendev.org/airship/promenade.git@c10165c144e0a18137596a3c89f1339d6ed30d0c#egg=promenade
|
gitpython==3.1.31
|
||||||
git+https://opendev.org/airship/shipyard.git@e3e71f7d1632c0dc13b436a32c238f9da76d6d88#egg=shipyard-client&subdirectory=src/bin/shipyard_client
|
google-auth==2.17.3 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'
|
||||||
gitpython==2.1.15
|
greenlet==2.0.2 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
setuptools==40.4.3
|
hacking==4.1.0 ; python_version >= '3.5'
|
||||||
google-auth==1.16.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
html5lib==0.9999999
|
||||||
greenlet==0.4.16
|
httpexceptor==1.4.0
|
||||||
hacking>=3.0.1,<3.1.0
|
idna==2.10 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
idna==2.8
|
imagesize==1.4.1 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
importlib-metadata==1.6.1; python_version < '3.8'
|
importlib-metadata==2.1.3 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
ipaddress==1.0.23
|
iso8601==1.1.0 ; python_full_version >= '3.6.2' and python_version < '4.0'
|
||||||
iso8601==0.1.12
|
jinja2==3.0.3 ; python_version >= '3.6'
|
||||||
jinja2==2.10
|
jsonpath-ng==1.5.3
|
||||||
jsonpath-ng==1.4.3
|
jsonpath-rw==1.4.0
|
||||||
|
jsonpath-rw-ext==1.2.2
|
||||||
jsonpickle==1.4.1 ; python_version >= '2.7'
|
jsonpickle==1.4.1 ; python_version >= '2.7'
|
||||||
jsonschema>=3.0.1,<4
|
jsonschema==3.2.0
|
||||||
keystoneauth1>=3.18.0
|
keystoneauth1==5.1.1
|
||||||
keystonemiddleware==5.3.0
|
keystonemiddleware==10.2.0 ; python_version >= '3.8'
|
||||||
kombu==4.6.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
kombu==4.6.11 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
kubernetes~=24.2.0; python_version >= '3.6'
|
kubernetes==26.1.0 ; python_version >= '3.6'
|
||||||
linecache2==1.0.0
|
mako==1.2.4 ; python_version >= '3.7'
|
||||||
mako==1.1.3; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
markupsafe==2.0.1 ; python_version >= '3.6'
|
||||||
markupsafe==1.1.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
|
||||||
mccabe==0.6.1
|
mccabe==0.6.1
|
||||||
monotonic==1.5
|
mock==5.0.2 ; python_version >= '3.6'
|
||||||
msgpack==1.0.0
|
msgpack==1.0.5
|
||||||
netaddr==0.7.19
|
netaddr==0.8.0
|
||||||
netifaces==0.10.9
|
netifaces==0.11.0
|
||||||
networkx==2.2
|
networkx==3.1 ; python_version >= '3.8'
|
||||||
|
nose==1.3.7
|
||||||
|
oauthlib==3.2.2 ; python_version >= '3.6'
|
||||||
|
ordered-set==4.1.0 ; python_version >= '3.7'
|
||||||
os-service-types==1.7.0
|
os-service-types==1.7.0
|
||||||
oslo.cache==1.38.1
|
oslo.cache==2.10.1 ; python_version >= '3.6'
|
||||||
oslo.concurrency==3.28.1
|
oslo.concurrency==5.1.1 ; python_version >= '3.8'
|
||||||
oslo.config==7.0.0
|
oslo.config==8.7.1 ; python_version >= '3.6'
|
||||||
oslo.context==2.21.0
|
oslo.context==4.1.0 ; python_version >= '3.6'
|
||||||
oslo.db==4.41.1
|
oslo.db==10.0.0 ; python_version >= '3.6'
|
||||||
oslo.i18n==3.24.0
|
oslo.i18n==6.0.0
|
||||||
oslo.log==3.45.2
|
oslo.log==4.6.0 ; python_version >= '3.6'
|
||||||
oslo.messaging==9.1.1
|
oslo.messaging==12.13.0 ; python_version >= '3.6'
|
||||||
oslo.middleware==3.36.0
|
oslo.metrics==0.6.0 ; python_version >= '3.8'
|
||||||
oslo.policy==1.40.1
|
oslo.middleware==4.4.0 ; python_version >= '3.6'
|
||||||
oslo.serialization==2.29.2
|
oslo.policy==3.10.1 ; python_version >= '3.6'
|
||||||
oslo.service==2.2.0; python_version >= '3.6'
|
oslo.serialization==4.2.0 ; python_version >= '3.6'
|
||||||
oslo.utils==3.42.1
|
oslo.service==3.1.1 ; python_version >= '3.8'
|
||||||
paste==3.0.1
|
oslo.utils==4.12.3
|
||||||
pastedeploy==1.5.2
|
packaging==21.3 ; python_version >= '3.6'
|
||||||
pbr==5.4.5
|
paste==3.5.0
|
||||||
|
pastedeploy==3.0.1 ; python_version >= '3.7'
|
||||||
|
pastescript==3.3.0
|
||||||
|
pbr==5.5.1 ; python_version >= '2.6'
|
||||||
|
platformdirs==3.5.0 ; python_version >= '3.7'
|
||||||
ply==3.11
|
ply==3.11
|
||||||
prettytable==0.7.2
|
prettytable==3.7.0 ; python_version >= '3.7'
|
||||||
psycopg2-binary==2.8.4; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
git+https://opendev.org/airship/promenade.git@97e3721a03ca48d312891694972b827a53714bf9#egg=promenade
|
||||||
pyasn1-modules==0.2.8
|
prometheus-client==0.16.0 ; python_version >= '3.6'
|
||||||
pyasn1==0.4.8
|
psycopg2-binary==2.9.6 ; python_version >= '3.6'
|
||||||
pycadf==3.0.0; python_version >= '3.6'
|
ptable==0.9.2
|
||||||
pycodestyle==2.5.0
|
pyasn1==0.5.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'
|
||||||
pycparser==2.20; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
pyasn1-modules==0.3.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4, 3.5'
|
||||||
pyflakes==2.1.0
|
pycadf==3.1.1 ; python_version >= '3.6'
|
||||||
|
pycodestyle==2.6.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
|
pycparser==2.21
|
||||||
|
pyflakes==2.2.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
|
pygments==2.14.0 ; python_version >= '3.6'
|
||||||
pyinotify==0.9.6 ; sys_platform != 'win32' and sys_platform != 'darwin' and sys_platform != 'sunos5'
|
pyinotify==0.9.6 ; sys_platform != 'win32' and sys_platform != 'darwin' and sys_platform != 'sunos5'
|
||||||
pylibyaml==0.1.0
|
pylibyaml==0.1.0
|
||||||
pyparsing==2.4.7; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
pymongo==4.3.3 ; python_version >= '3.7'
|
||||||
pyperclip==1.8.0
|
pyparsing==2.4.7 ; python_version >= '2.6' and python_version not in '3.0, 3.1, 3.2'
|
||||||
python-barbicanclient==4.7.0
|
pyperclip==1.8.2
|
||||||
python-dateutil>=2.8.1
|
pyproject-api==1.5.0 ; python_version >= '3.7'
|
||||||
|
pyrsistent==0.19.3 ; python_version >= '3.7'
|
||||||
|
python-barbicanclient==5.2.0
|
||||||
|
python-dateutil==2.8.1
|
||||||
python-editor==1.0.4
|
python-editor==1.0.4
|
||||||
python-keystoneclient==3.22.0
|
python-keystoneclient==5.1.0 ; python_version >= '3.8'
|
||||||
python-memcached==1.59
|
python-memcached==1.59
|
||||||
python-mimeparse==1.6.0
|
python-mimeparse==1.6.0
|
||||||
pytz==2020.1
|
python-subunit==1.4.0
|
||||||
pyyaml~=5.1
|
pytz==2023.3
|
||||||
|
pyyaml==5.4.1
|
||||||
|
reno==4.0.0 ; python_version >= '3.6'
|
||||||
repoze.lru==0.7
|
repoze.lru==0.7
|
||||||
requests==2.22.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
requests==2.23.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
rfc3986==1.4.0
|
requests-oauthlib==1.3.1 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
routes==2.4.1
|
resolver==0.2.1
|
||||||
rsa==4.0
|
rfc3986==2.0.0 ; python_version >= '3.7'
|
||||||
six>=1.15.0
|
routes==2.5.1
|
||||||
smmap2==3.0.1
|
rsa==4.9 ; python_version >= '3.6'
|
||||||
smmap==3.0.4; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
selector==0.10.1
|
||||||
|
setuptools==45.2.0 ; python_version >= '3.5'
|
||||||
|
git+https://opendev.org/airship/shipyard.git@3f9fcff91d92ab9bd8ae48169142e49746620e96#egg=shipyard-client&subdirectory=src/bin/shipyard_client
|
||||||
|
simplejson==3.19.1 ; python_version >= '2.5' and python_version not in '3.0, 3.1, 3.2'
|
||||||
|
six==1.16.0
|
||||||
|
smmap==5.0.0 ; python_version >= '3.6'
|
||||||
|
snowballstemmer==2.2.0
|
||||||
|
sphinx==3.3.1 ; python_version >= '3.5'
|
||||||
|
sphinx-rtd-theme==0.5.0
|
||||||
|
sphinxcontrib-applehelp==1.0.4 ; python_version >= '3.8'
|
||||||
|
sphinxcontrib-devhelp==1.0.2 ; python_version >= '3.5'
|
||||||
|
sphinxcontrib-htmlhelp==2.0.1 ; python_version >= '3.8'
|
||||||
|
sphinxcontrib-jsmath==1.0.1 ; python_version >= '3.5'
|
||||||
|
sphinxcontrib-qthelp==1.0.3 ; python_version >= '3.5'
|
||||||
|
sphinxcontrib-serializinghtml==1.1.5 ; python_version >= '3.5'
|
||||||
|
sqlalchemy==1.3.20 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
sqlalchemy-migrate==0.13.0
|
sqlalchemy-migrate==0.13.0
|
||||||
sqlalchemy==1.3.17; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
sqlparse==0.4.4 ; python_version >= '3.5'
|
||||||
sqlparse==0.3.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
statsd==4.0.1
|
||||||
statsd==3.3.0
|
stevedore==5.0.0 ; python_version >= '3.8'
|
||||||
stevedore==1.30.0
|
|
||||||
tempita==0.5.2
|
tempita==0.5.2
|
||||||
termcolor==1.1.0
|
testrepository==0.0.20
|
||||||
testresources==2.0.1
|
testresources==2.0.1
|
||||||
testscenarios==0.5.0
|
testscenarios==0.5.0
|
||||||
testtools==2.4.0
|
testtools==2.5.0 ; python_version >= '3.5'
|
||||||
traceback2==1.4.0
|
tiddlyweb==2.4.3
|
||||||
unittest2==1.1.0
|
tomli==2.0.1 ; python_version < '3.11'
|
||||||
urllib3==1.25.9; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3' and python_version < '4'
|
tomlkit==0.11.8 ; python_version >= '3.7'
|
||||||
uwsgi~=2.0.19.1
|
typing-extensions==3.7.2
|
||||||
|
urllib3==1.25.11 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'
|
||||||
|
uwsgi==2.0.21
|
||||||
vine==1.3.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
vine==1.3.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
||||||
wcwidth==0.2.4; sys_platform != 'win32'
|
virtualenv==20.23.0 ; python_version >= '3.7'
|
||||||
webob==1.8.6; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
wcwidth==0.2.6
|
||||||
websocket-client==0.57.0
|
webob==1.8.7 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2'
|
||||||
werkzeug==0.16.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
|
websocket-client==1.5.1 ; python_version >= '3.7'
|
||||||
wrapt==1.12.1
|
werkzeug==2.1.2 ; python_version >= '3.7'
|
||||||
yappi==1.2.5
|
wheel==0.40.0 ; python_version >= '3.7'
|
||||||
zipp~=3.6.0
|
wrapt==1.15.0 ; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
|
||||||
|
wsgi-intercept==1.11.0
|
||||||
|
xmltodict==0.13.0 ; python_version >= '3.4'
|
||||||
|
yappi==1.4.0
|
||||||
|
yq==3.2.1 ; python_version >= '3.6'
|
||||||
|
zipp==3.15.0
|
||||||
|
@ -13,6 +13,13 @@
|
|||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
- hosts: primary
|
- hosts: primary
|
||||||
|
roles:
|
||||||
|
- clear-firewall
|
||||||
|
- bindep
|
||||||
|
- ensure-docker
|
||||||
|
- ensure-python
|
||||||
|
- ensure-pip
|
||||||
|
|
||||||
tasks:
|
tasks:
|
||||||
- include_vars: vars.yaml
|
- include_vars: vars.yaml
|
||||||
|
|
||||||
@ -29,23 +36,14 @@
|
|||||||
- debug:
|
- debug:
|
||||||
msg: "{{ tags | to_json }}"
|
msg: "{{ tags | to_json }}"
|
||||||
|
|
||||||
- name: Set ubuntu bionic base image
|
- name: Set ubuntu focal base image
|
||||||
set_fact:
|
set_fact:
|
||||||
base_image: "{{ base_image_bionic }}"
|
base_image: "{{ base_image_focal }}"
|
||||||
when: distro == 'ubuntu_bionic'
|
when: distro == 'ubuntu_focal'
|
||||||
|
|
||||||
- name: Set ubuntu xenial base image
|
|
||||||
set_fact:
|
|
||||||
base_image: "{{ base_image_xenial }}"
|
|
||||||
when: distro == 'ubuntu_xenial'
|
|
||||||
|
|
||||||
- name: Set ubuntu opensuse base image
|
|
||||||
set_fact:
|
|
||||||
base_image: "{{ base_image_opensuse }}"
|
|
||||||
when: distro == 'opensuse_15'
|
|
||||||
|
|
||||||
- name: Determine tags
|
- name: Determine tags
|
||||||
shell: echo '{{ tags | to_json }}' | python {{ zuul.project.src_dir }}/tools/image_tags.py
|
shell: echo '{{ tags | to_json }}' | python3 {{ zuul.project.src_dir }}/tools/image_tags.py
|
||||||
environment:
|
environment:
|
||||||
BRANCH: "{{ zuul.branch | default('') }}"
|
BRANCH: "{{ zuul.branch | default('') }}"
|
||||||
CHANGE: "{{ zuul.change | default('') }}"
|
CHANGE: "{{ zuul.change | default('') }}"
|
||||||
@ -61,50 +59,12 @@
|
|||||||
shell: rm /etc/pip.conf
|
shell: rm /etc/pip.conf
|
||||||
become: True
|
become: True
|
||||||
|
|
||||||
- name: Install Docker (Debian)
|
- name: Install Docker python module for ansible docker login
|
||||||
when: ansible_os_family == 'Debian'
|
|
||||||
block:
|
block:
|
||||||
- file:
|
|
||||||
path: "{{ item }}"
|
|
||||||
state: directory
|
|
||||||
with_items:
|
|
||||||
- /etc/docker/
|
|
||||||
- /etc/systemd/system/docker.service.d/
|
|
||||||
- /var/lib/docker/
|
|
||||||
- mount:
|
|
||||||
path: /var/lib/docker/
|
|
||||||
src: tmpfs
|
|
||||||
fstype: tmpfs
|
|
||||||
opts: size=25g
|
|
||||||
state: mounted
|
|
||||||
- copy: "{{ item }}"
|
|
||||||
with_items:
|
|
||||||
- content: "{{ docker_daemon | to_json }}"
|
|
||||||
dest: /etc/docker/daemon.json
|
|
||||||
- src: files/docker-systemd.conf
|
|
||||||
dest: /etc/systemd/system/docker.service.d/
|
|
||||||
- apt_key:
|
|
||||||
url: https://download.docker.com/linux/ubuntu/gpg
|
|
||||||
- apt_repository:
|
|
||||||
repo: "deb http://{{ deb_docker_repo }} bionic stable"
|
|
||||||
- apt:
|
|
||||||
name: "{{ item }}"
|
|
||||||
allow_unauthenticated: True
|
|
||||||
with_items:
|
|
||||||
- docker-ce
|
|
||||||
- python3-pip
|
|
||||||
- python3-setuptools
|
|
||||||
- pip:
|
- pip:
|
||||||
name: docker
|
name: docker
|
||||||
version: 2.7.0
|
version: 4.4.4
|
||||||
executable: pip3
|
executable: pip3
|
||||||
# NOTE(SamYaple): Allow all connections from containers to host so the
|
|
||||||
# containers can access the http server for git and wheels
|
|
||||||
- iptables:
|
|
||||||
action: insert
|
|
||||||
chain: INPUT
|
|
||||||
in_interface: docker0
|
|
||||||
jump: ACCEPT
|
|
||||||
become: True
|
become: True
|
||||||
|
|
||||||
- name: Make images
|
- name: Make images
|
||||||
|
@ -1,8 +0,0 @@
|
|||||||
# NOTE(SamYaple): CentOS cannot be build with userns-remap enabled. httpd uses
|
|
||||||
# cap_set_file capability and there is no way to pass that in at build as of
|
|
||||||
# docker 17.06.
|
|
||||||
# TODO(SamYaple): Periodically check to see if this is possible in newer
|
|
||||||
# versions of Docker
|
|
||||||
[Service]
|
|
||||||
ExecStart=
|
|
||||||
ExecStart=/usr/bin/dockerd
|
|
@ -3,7 +3,7 @@
|
|||||||
set -e
|
set -e
|
||||||
|
|
||||||
: ${WORKSPACE:=$(pwd)}
|
: ${WORKSPACE:=$(pwd)}
|
||||||
: ${IMAGE:=quay.io/airshipit/pegleg:latest-ubuntu_xenial}
|
: ${IMAGE:=quay.io/airshipit/pegleg:latest-ubuntu_focal}
|
||||||
|
|
||||||
: ${TERM_OPTS:=-it}
|
: ${TERM_OPTS:=-it}
|
||||||
|
|
||||||
|
43
tox.ini
43
tox.ini
@ -1,6 +1,6 @@
|
|||||||
[tox]
|
[tox]
|
||||||
envlist = py36,pep8,docs,cover
|
envlist = py38,pep8,docs,cover
|
||||||
minversion = 2.3.1
|
minversion = 2.38.0
|
||||||
skipsdist = True
|
skipsdist = True
|
||||||
|
|
||||||
[testenv]
|
[testenv]
|
||||||
@ -14,15 +14,22 @@ setenv =
|
|||||||
deps =
|
deps =
|
||||||
pipenv
|
pipenv
|
||||||
setuptools < 58.0.0
|
setuptools < 58.0.0
|
||||||
passenv = http_proxy https_proxy HTTP_PROXY HTTPS_PROXY no_proxy NO_PROXY PBR_VERSION
|
passenv =
|
||||||
whitelist_externals =
|
http_proxy
|
||||||
|
https_proxy
|
||||||
|
HTTP_PROXY
|
||||||
|
HTTPS_PROXY
|
||||||
|
no_proxy
|
||||||
|
NO_PROXY
|
||||||
|
PBR_VERSION
|
||||||
|
allowlist_externals =
|
||||||
bash
|
bash
|
||||||
find
|
find
|
||||||
commands =
|
commands =
|
||||||
pipenv install --dev
|
pipenv install --dev
|
||||||
find . -type f -name "*.pyc" -delete
|
find . -type f -name "*.pyc" -delete
|
||||||
bash -c "{toxinidir}/tools/install-cfssl.sh"
|
bash -c "{toxinidir}/tools/install-cfssl.sh"
|
||||||
{toxinidir}/tools/gate/run-unit-tests.sh '{posargs}'
|
bash -c "{toxinidir}/tools/gate/run-unit-tests.sh '{posargs}'"
|
||||||
|
|
||||||
[testenv:fmt]
|
[testenv:fmt]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
@ -32,6 +39,9 @@ deps =
|
|||||||
commands =
|
commands =
|
||||||
pipenv install --dev
|
pipenv install --dev
|
||||||
yapf -ir {toxinidir}/pegleg {toxinidir}/tests
|
yapf -ir {toxinidir}/pegleg {toxinidir}/tests
|
||||||
|
allowlist_externals =
|
||||||
|
pipenv
|
||||||
|
yapf
|
||||||
|
|
||||||
[testenv:pep8]
|
[testenv:pep8]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
@ -46,20 +56,26 @@ commands =
|
|||||||
bandit -r pegleg -n 5
|
bandit -r pegleg -n 5
|
||||||
flake8 {toxinidir}/pegleg
|
flake8 {toxinidir}/pegleg
|
||||||
yapf -dr {toxinidir}/pegleg {toxinidir}/tests
|
yapf -dr {toxinidir}/pegleg {toxinidir}/tests
|
||||||
whitelist_externals =
|
allowlist_externals =
|
||||||
bash
|
bash
|
||||||
|
pipenv
|
||||||
|
bandit
|
||||||
|
flake8
|
||||||
|
yapf
|
||||||
|
|
||||||
|
|
||||||
[testenv:docs]
|
[testenv:docs]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
deps =
|
deps =
|
||||||
pipenv
|
pipenv
|
||||||
setuptools < 58.0.0
|
setuptools < 46.0.0
|
||||||
-r{toxinidir}/doc/requirements.txt
|
-r{toxinidir}/doc/requirements.txt
|
||||||
commands =
|
commands =
|
||||||
pipenv install --dev
|
pipenv install --dev
|
||||||
bash -c "{toxinidir}/tools/gate/build-docs.sh"
|
bash -c "{toxinidir}/tools/gate/build-docs.sh"
|
||||||
whitelist_externals =
|
allowlist_externals =
|
||||||
bash
|
bash
|
||||||
|
pipenv
|
||||||
|
|
||||||
[testenv:bandit]
|
[testenv:bandit]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
@ -88,7 +104,7 @@ commands =
|
|||||||
bash -c 'PATH=$PATH:~/.local/bin; pytest --cov=pegleg --cov-report \
|
bash -c 'PATH=$PATH:~/.local/bin; pytest --cov=pegleg --cov-report \
|
||||||
html:cover --cov-report xml:cover/coverage.xml --cov-report term \
|
html:cover --cov-report xml:cover/coverage.xml --cov-report term \
|
||||||
--cov-fail-under 87 tests/'
|
--cov-fail-under 87 tests/'
|
||||||
whitelist_externals =
|
allowlist_externals =
|
||||||
bash
|
bash
|
||||||
|
|
||||||
[testenv:update-requirements]
|
[testenv:update-requirements]
|
||||||
@ -96,10 +112,13 @@ deps =
|
|||||||
pipenv
|
pipenv
|
||||||
setuptools < 58.0.0
|
setuptools < 58.0.0
|
||||||
commands =
|
commands =
|
||||||
|
rm -f Pipfile.lock
|
||||||
|
rm -f requirements.txt
|
||||||
pipenv lock --clear
|
pipenv lock --clear
|
||||||
bash -c "pipenv lock -r > {toxinidir}/requirements.txt"
|
bash -c "PIPENV_VERBOSITY=-1 pipenv requirements > requirements.txt"
|
||||||
whitelist_externals =
|
allowlist_externals =
|
||||||
bash
|
bash
|
||||||
|
rm
|
||||||
|
|
||||||
[testenv:releasenotes]
|
[testenv:releasenotes]
|
||||||
basepython = python3
|
basepython = python3
|
||||||
@ -107,7 +126,7 @@ deps = -r{toxinidir}/doc/requirements.txt
|
|||||||
commands =
|
commands =
|
||||||
rm -rf releasenotes/build
|
rm -rf releasenotes/build
|
||||||
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
|
||||||
whitelist_externals =
|
allowlist_externals =
|
||||||
rm
|
rm
|
||||||
|
|
||||||
[testenv:venv]
|
[testenv:venv]
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
DECKHAND_VERSION=commit/5cd799cc5d04527ac782270008ff647b3779ff05
|
DECKHAND_VERSION=commit/13c5199f18664d66ccdd3a1e54bb40ad2c293d1a
|
||||||
SHIPYARD_VERSION=commit/e3e71f7d1632c0dc13b436a32c238f9da76d6d88
|
SHIPYARD_VERSION=commit/3f9fcff91d92ab9bd8ae48169142e49746620e96
|
||||||
PROMENADE_VERSION=commit/c10165c144e0a18137596a3c89f1339d6ed30d0c
|
PROMENADE_VERSION=commit/97e3721a03ca48d312891694972b827a53714bf9
|
||||||
|
Loading…
Reference in New Issue
Block a user