
Airship 2 is using Argo for workflow management, rather than the builtin Armada workflow functionality. Hence, this adds an apply_chart CLI command to apply a single chart at a time, so that Argo can manage the higher level orchestration. Airship 2 is also using kubernetes as opposed to Deckhand as the document store. Hence this adds an ArmadaChart kubernetes CRD, which can be consumed by the apply_chart CLI command. The chart `dependencies` feature is intentionally not supported by the CRD, as there are additional complexities to make that work, and ideally this feature should be deprecated as charts should be building in there dependencies before consumption by Armada. Functional tests are included to excercise these features against a minikube cluster. Change-Id: I2bbed83d6d80091322a7e60b918a534188467239
285 lines
11 KiB
YAML
285 lines
11 KiB
YAML
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
- project:
|
|
templates:
|
|
- openstack-cover-jobs
|
|
- docs-on-readthedocs
|
|
- openstack-python35-jobs
|
|
- openstack-python36-jobs
|
|
vars:
|
|
rtd_webhook_id: '47578'
|
|
rtd_project_name: 'airship-armada'
|
|
check:
|
|
jobs:
|
|
- openstack-tox-pep8
|
|
- armada-chart-build-gate
|
|
- armada-chart-build-latest-htk
|
|
- armada-docker-build-gate-ubuntu_bionic
|
|
- armada-docker-build-gate-ubuntu_xenial
|
|
- armada-docker-build-gate-opensuse
|
|
- armada-airskiff-deploy
|
|
- armada-airship2-integration
|
|
gate:
|
|
jobs:
|
|
- openstack-tox-pep8
|
|
- armada-chart-build-gate
|
|
- armada-docker-build-gate-ubuntu_bionic
|
|
- armada-docker-build-gate-ubuntu_xenial
|
|
- armada-docker-build-gate-opensuse
|
|
post:
|
|
jobs:
|
|
- armada-docker-publish-ubuntu_bionic
|
|
- armada-docker-publish-ubuntu_xenial
|
|
- armada-docker-publish-opensuse
|
|
- armada-upload-git-mirror
|
|
|
|
- nodeset:
|
|
name: armada-single-node
|
|
nodes:
|
|
- name: primary
|
|
label: ubuntu-bionic
|
|
|
|
- job:
|
|
name: armada-chart-build-gate
|
|
description: |
|
|
Builds Armada and Tiller charts using pinned Helm toolkit.
|
|
timeout: 900
|
|
run: tools/gate/playbooks/build-charts.yaml
|
|
nodeset: armada-single-node
|
|
|
|
- job:
|
|
name: armada-chart-build-latest-htk
|
|
description: |
|
|
Builds Armada and Tiller charts using latest Helm toolkit.
|
|
timeout: 900
|
|
voting: false
|
|
run: tools/gate/playbooks/build-charts.yaml
|
|
nodeset: armada-single-node
|
|
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_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
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: armada-single-node
|
|
vars:
|
|
publish: false
|
|
distro: opensuse_15
|
|
tags:
|
|
dynamic:
|
|
patch_set: true
|
|
|
|
- job:
|
|
name: armada-airskiff-deploy
|
|
nodeset: armada-single-node
|
|
description: |
|
|
Deploy Memcached using Airskiff and submitted Armada changes.
|
|
timeout: 9600
|
|
voting: false
|
|
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
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^examples/.*$
|
|
- ^releasenotes/.*$
|
|
- ^swagger/.*$
|
|
|
|
- job:
|
|
name: armada-airship2-integration
|
|
nodeset: armada-single-node
|
|
description: |
|
|
Deploy basic airship2 integration example using submitted Armada changes.
|
|
timeout: 9600
|
|
voting: false
|
|
pre-run:
|
|
- tools/gate/playbooks/git-config.yaml
|
|
run: tools/gate/playbooks/airship2-integration.yaml
|
|
post-run: tools/gate/playbooks/debug-report.yaml
|
|
required-projects:
|
|
- airship/treasuremap
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*$
|
|
- ^examples/.*$
|
|
- ^releasenotes/.*$
|
|
- ^swagger/.*$
|
|
|
|
- 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
|
|
|
|
- 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
|
|
run: tools/gate/playbooks/docker-image-build.yaml
|
|
nodeset: armada-single-node
|
|
secrets:
|
|
- airship_armada_quay_creds
|
|
vars:
|
|
publish: true
|
|
distro: opensuse_15
|
|
tags:
|
|
dynamic:
|
|
branch: true
|
|
commit: true
|
|
static:
|
|
- latest
|
|
|
|
- secret:
|
|
name: airship_armada_quay_creds
|
|
data:
|
|
username: !encrypted/pkcs1-oaep
|
|
- mQ5xMKaU6+ug5Zp+LK5hfwbFamnW9hK2QVQOA7ylcoTMh8yz66YcgDjGJjbT2c66NF8eg
|
|
f279ODNmGe5pYepdR8/fU/aQ2pTVVvrF1bt0fcon8xxEZGuWnCftYZjO6Ogq+HWWwwnW0
|
|
HLcvnFK3GhGBJkYCG9742PxuLpDOYDSiK3jRCN1tgdY+vcHpm7bwqyhzywj7ar4lsk8Gk
|
|
d9Z57xkcURuw/GEBf8tHzd2PTAj3Oao6hKMTdCVhYZejjNNR34GPhGIvipb7m/dNIzT2c
|
|
j4a/Kq3HcqVog1OiCkSn4jRlIcD1Jgl/cyJyEz6dZCP2W16X/qwzDD8YUSsTPt4Jc6s/U
|
|
hD/aye5f1Jwoiyy23BM7BJ8s8eoioYsubV3TUGNQv64UxRnd4nPyWW2QssfAlA2fsww2v
|
|
D9nLjmYuj4t8IzfQVd4ZLwBUKrb1q1au8bR3jYd8x2RaYjAVr4aPXQLzeXR7k0kZ9QgYO
|
|
PetkCkf2vly8UYtonaM0odf7X1KfKgCOU+urXWMnDVU3SEaMH5f51NnW8Xb5NmCk/S9vz
|
|
MVl6IR/ZCa9q7sIH40B2Tt61AsU1RjIyAahU6fkg/pW19uBv7zI6BDSZUiEh662MnK4z1
|
|
O5n0771VjSa2aqpP1+iTkDWqobcSvgvHWQCM4Cv4fBO//E7s/LV0FIayQYbm2k=
|
|
password: !encrypted/pkcs1-oaep
|
|
- nATf8olUzHg6pBmRJ2KF9NI48axKYtuFn7j8R8iKRfV3R7NW3eq89gsk5m9DVq4+GUEGw
|
|
ZxLRjy2/F31Xnw2snGf7Pj+33O1NRSZ7D/UqKSu07tS0qkRn4rWK6U4tO1crHb7NPqd3I
|
|
rziVgOCTBpaKNLBlEEYqYF/HYHQuQACAFqClavskGc3AGhzyd7Ti4DDrvQ8N2dgnhyiy3
|
|
k8+xoqVq5dkraoYhGyFzekpL/XE9v0sOr8cpHNHieKyOmJDbQohfWiris5GQYC9q0DmIN
|
|
eHrdiSAgVZhjKw97Z8HZibOH2gFPD/TSk7Lw2SG0JYFQpWdHDYlTiBbBKszfiVZA755Ha
|
|
aBBGRudRDkYDLaIojsPLp5C65Dx41inUJMg/gMGm0SzJuAcGZgaaBdrjUyCGB1zFP/J6+
|
|
ghl3K/yAiU7V1r+PxY9hmL/tNZ+c32Q623aS4muqjZ1iNQGeS+8lnCGTf2x5uaIRG7veH
|
|
q1aBs85YhFSQ4ogvwqI0DABXjXwM2eDLj0s6aBp717sIwUk7roTtbVgkRaWs5WILrwE4G
|
|
xELJhFCWVJ4enONX8Kb9kYxue1Kd6Ku9JaE+UrUDgyxKLOPDgg7S3dnchbUeg38UurKa+
|
|
c5srPrJs5JL00hb3GVJ7ORIX4dFdYvJRAZNqExyx15kq6iPYv8QHQg5ai/XAGQ=
|
|
|
|
- job:
|
|
name: armada-upload-git-mirror
|
|
parent: upload-git-mirror
|
|
description: Mirrors airship/armada to airshipit/armada
|
|
vars:
|
|
git_mirror_repository: airshipit/armada
|
|
secrets:
|
|
- name: git_mirror_credentials
|
|
secret: armada-airshipit-github-secret
|
|
pass-to-parent: true
|
|
|
|
- secret:
|
|
name: armada-airshipit-github-secret
|
|
data:
|
|
user: git
|
|
host: github.com
|
|
host_key: github.com ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ==
|
|
ssh_key: !encrypted/pkcs1-oaep
|
|
- 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
- OxJZdG9DkL9I9ecTx56HAF05I3GbGbXUUF2yDeA26uXUHJRFp8y/llfGyt2G6gUlZ6apM
|
|
ti7oC4tnsxdTt83vRx2O/p+SF7PYoQuYf+6d2+6CFBB58g4bV6JfncVyRyIAWtHRDMWFo
|
|
kY9YYc1pFPQZ6m+mdi7SMsjLHWZwos/Xh+tBpyUyKdKC7aoNUZiAWDYAUPnIjQamB+QXm
|
|
8tzfbvhqz33DcFlrBiR0SC8XkOlm88gPtxVftJEiugyQPRfDvjG3Q6Zo4gRAsTfslQQAF
|
|
gjENyXoSGUcvQREh237vLBdqLskke6qpeVb2769omaSdh/Fh0d1f6pjw2BCfMfcNz8GYe
|
|
1HIATlj1PFFPCnI+BVzH/mr81PdWx5k31sMgI85vcucDBw7XQiBpCiJUzy4ZRrDyFupNt
|
|
oEajwkexnYSJAVD87brH4N76uRUCqBHMbaXZubZlXupkzDQov1R8UOcYv5zf0UQri+Bq7
|
|
dyEbVZXxleyWlW62GDu1rsFdwmKdcGLoBLdzmI8ZVHXp82DT926o8dLBDpGRahbAu0M7c
|
|
A7i0VbtSmrXifD8tkMo9s9vJ82gl6VL4UUSimAfKEzpnMZxdoFEWlbivOOhAjsRBjk5wR
|
|
JvusSAVfpTRWXcD9rtFlwO6G9njsbTt+rWVpT+uKOxB+c2eceTJXwGyHo9vVdU=
|
|
- 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
- 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
|