Add Airskiff armada-operator deployment

This PS adds a gate tha deploys armada-operator
and uses it to deploy Airskiff rediced site.

Change-Id: Iba15ab127ea414a8ff26ed4bd9d7a4f0cfd880d5
This commit is contained in:
Sergiy Markin 2024-03-13 20:25:30 +00:00
parent 051f8c7543
commit febd6b1cd6
20 changed files with 314 additions and 157 deletions

View File

@ -24,14 +24,12 @@
- treasuremap-airskiff-suse-site-lint - treasuremap-airskiff-suse-site-lint
- treasuremap-airsloop-site-lint - treasuremap-airsloop-site-lint
- treasuremap-aiab-site-lint - treasuremap-aiab-site-lint
# deprecated
# - treasuremap-airskiff-deployment-ubuntu
# disabled
# TODO # TODO
# update OSH charts vaoues in manifests and add more # update OSH charts vaoues in manifests and add more
# charts to full-site manifests # charts to full-site manifests
# - treasuremap-airskiff-multinode-full-site # - treasuremap-airskiff-multinode-full-site
- treasuremap-airskiff-1node-reduced-site - treasuremap-airskiff-1node-reduced-site
- treasuremap-airskiff-1node-reduced-site-armada-operator
gate: gate:
jobs: jobs:
- treasuremap-seaworthy-site-lint - treasuremap-seaworthy-site-lint
@ -206,6 +204,38 @@
- ./tools/gate/wait-for-shipyard.sh - ./tools/gate/wait-for-shipyard.sh
# - ./tools/deployment/airskiff/common/sleep.sh # - ./tools/deployment/airskiff/common/sleep.sh
- job:
name: treasuremap-airskiff-1node-reduced-site-armada-operator
parent: treasuremap-airskiff-infra-deploy
nodeset: treasuremap-airskiff-1node-ubuntu_focal
description: |
Deploy Openstack using Airskiff and latest Treasuremap changes.
Airskiff is using latest Airship v1.x based on Airflow-2.6.2
voting: true
vars:
site: airskiff
HELM_ARTIFACT_URL: https://get.helm.sh/helm-v3.13.2-linux-amd64.tar.gz
HTK_COMMIT: cfff60ec10a6c386f38db79bb9f59a552c2b032f
OSH_INFRA_COMMIT: cfff60ec10a6c386f38db79bb9f59a552c2b032f
OSH_COMMIT: 2d9457e34ca4200ed631466bd87569b0214c92e7
USE_ARMADA_GO: true
gate_scripts_relative_path: .
gate_scripts:
- ./tools/deployment/airskiff/developer/000-prepare-k8s.sh
- ./tools/deployment/airskiff/developer/009-setup-apparmor.sh
- ./tools/deployment/airskiff/developer/000-clone-dependencies.sh
- ./tools/deployment/airskiff/developer/020-setup-client.sh
- ./tools/deployment/airskiff/developer/015-make-all-charts.sh
- ./tools/deployment/airskiff/developer/017-make-all-images.sh
- ./tools/deployment/airskiff/developer/025-start-artifactory.sh
- ./tools/deployment/airskiff/developer/026-reduce-site.sh
- ./tools/deployment/airskiff/developer/027-enable-armada-operator.sh
- ./tools/deployment/airskiff/developer/030-armada-bootstrap.sh
- ./tools/deployment/airskiff/developer/100-deploy-osh.sh
- ./tools/deployment/airskiff/common/os-env.sh
- ./tools/gate/wait-for-shipyard.sh
# - ./tools/deployment/airskiff/common/sleep.sh
- job: - job:
name: treasuremap-site-lint name: treasuremap-site-lint

View File

@ -292,29 +292,4 @@ data:
class: oslo_log.formatters.ContextFormatter class: oslo_log.formatters.ContextFormatter
formatter_default: formatter_default:
format: "%(message)s" format: "%(message)s"
dependencies:
- cinder-htk
...
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: cinder-htk
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.osh.cinder-htk
dest:
path: .source
data:
chart_name: cinder-htk
release: cinder-htk
namespace: cinder-htk
values: {}
dependencies: []
... ...

View File

@ -343,29 +343,4 @@ data:
class: oslo_log.formatters.ContextFormatter class: oslo_log.formatters.ContextFormatter
formatter_default: formatter_default:
format: "%(message)s" format: "%(message)s"
dependencies:
- glance-htk
...
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: glance-htk
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.osh.glance-htk
dest:
path: .source
data:
chart_name: glance-htk
release: glance-htk
namespace: glance-htk
values: {}
dependencies: []
... ...

View File

@ -298,29 +298,4 @@ data:
class: oslo_log.formatters.ContextFormatter class: oslo_log.formatters.ContextFormatter
formatter_default: formatter_default:
format: "%(message)s" format: "%(message)s"
dependencies:
- heat-htk
...
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: heat-htk
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.osh.heat-htk
dest:
path: .source
data:
chart_name: heat-htk
release: heat-htk
namespace: heat-htk
values: {}
dependencies: []
... ...

View File

@ -45,40 +45,21 @@ data:
type: tar type: tar
osh: osh:
barbican: barbican:
location: https://opendev.org/openstack/openstack-helm location: http://control-plane.minikube.internal:8282/barbican.tgz
reference: 536eaed62d55eca694eaae0c50df910dbb55fff7
subpath: barbican subpath: barbican
type: git type: tar
cinder: cinder:
location: https://opendev.org/openstack/openstack-helm location: http://control-plane.minikube.internal:8282/cinder.tgz
reference: 536eaed62d55eca694eaae0c50df910dbb55fff7
subpath: cinder subpath: cinder
type: git type: tar
cinder-htk:
location: https://opendev.org/openstack/openstack-helm-infra
reference: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
subpath: helm-toolkit
type: git
glance: glance:
location: https://opendev.org/openstack/openstack-helm location: http://control-plane.minikube.internal:8282/glance.tgz
reference: 536eaed62d55eca694eaae0c50df910dbb55fff7
subpath: glance subpath: glance
type: git type: tar
glance-htk:
location: https://opendev.org/openstack/openstack-helm-infra
reference: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
subpath: helm-toolkit
type: git
heat: heat:
location: https://opendev.org/openstack/openstack-helm location: http://control-plane.minikube.internal:8282/heat.tgz
reference: 536eaed62d55eca694eaae0c50df910dbb55fff7
subpath: heat subpath: heat
type: git type: tar
heat-htk:
location: https://opendev.org/openstack/openstack-helm-infra
reference: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
subpath: helm-toolkit
type: git
helm_toolkit: helm_toolkit:
location: http://control-plane.minikube.internal:8282/helm-toolkit.tgz location: http://control-plane.minikube.internal:8282/helm-toolkit.tgz
subpath: helm-toolkit subpath: helm-toolkit
@ -206,10 +187,9 @@ data:
subpath: nagios subpath: nagios
type: git type: git
nfs_provisioner: nfs_provisioner:
location: https://opendev.org/openstack/openstack-helm-infra location: http://control-plane.minikube.internal:8282/nfs-provisioner.tgz
reference: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
subpath: nfs-provisioner subpath: nfs-provisioner
type: git type: tar
podsecuritypolicy: podsecuritypolicy:
location: https://opendev.org/openstack/openstack-helm-infra location: https://opendev.org/openstack/openstack-helm-infra
reference: 97ce6d7d8e9a090c748800d69a57bbd9af698b60 reference: 97ce6d7d8e9a090c748800d69a57bbd9af698b60
@ -795,6 +775,19 @@ data:
ks_endpoints: docker.io/openstackhelm/heat:newton ks_endpoints: docker.io/openstackhelm/heat:newton
ks_service: docker.io/openstackhelm/heat:newton ks_service: docker.io/openstackhelm/heat:newton
ks_user: docker.io/openstackhelm/heat:newton ks_user: docker.io/openstackhelm/heat:newton
image_repo_sync: docker.io/docker:17.07.0
tiller: ghcr.io/helm/tiller:v2.17.0
armada-operator:
api: quay.io/airshipit/armada-go:latest-ubuntu_focal
go: quay.io/airshipit/armada-go:latest-ubuntu_focal
operator: quay.io/airshipit/armada-operator:latest-ubuntu_focal
dep_check: quay.io/airshipit/kubernetes-entrypoint:v1.0.0
helm: docker.io/lachlanevenson/k8s-helm:v2.16.9
ks_endpoints: docker.io/openstackhelm/heat:newton
ks_service: docker.io/openstackhelm/heat:newton
ks_user: docker.io/openstackhelm/heat:newton
image_repo_sync: docker.io/docker:17.07.0
test: quay.io/airshipit/porthole-compute-utility:latest-ubuntu_focal
tiller: ghcr.io/helm/tiller:v2.17.0 tiller: ghcr.io/helm/tiller:v2.17.0
barbican: barbican:
bootstrap: docker.io/openstackhelm/heat:wallaby-ubuntu_focal bootstrap: docker.io/openstackhelm/heat:wallaby-ubuntu_focal

View File

@ -209,12 +209,51 @@ armada() {
-u "${USER}:${GROUP}" \ -u "${USER}:${GROUP}" \
-v ${HOME}/.kube/config:/armada/.kube/config \ -v ${HOME}/.kube/config:/armada/.kube/config \
-v "$(pwd)"/airskiff.yaml:/airskiff.yaml \ -v "$(pwd)"/airskiff.yaml:/airskiff.yaml \
-v "${REPO_DIR}"/../:/airship-components \
--env-file $ENV_FILE \ --env-file $ENV_FILE \
$IMAGE_ARMADA $@ $IMAGE_ARMADA $@
} }
armada-operator() {
# create CRDs
kubectl apply -f ../armada-operator/config/crd/bases/
versions_lookup "['data']['images']['ucp']['armada-operator']['operator']"
IMAGE_ARMADA_OPERATOR=$IMAGE_URL
docker run -d --net host $TERM_OPTS \
-u "${USER}:${GROUP}" \
-v ${HOME}/.kube/config:/armada/.kube/config \
-e KUBECONFIG=/armada/.kube/config \
--env-file $ENV_FILE \
--name armada-operator \
$IMAGE_ARMADA_OPERATOR /manager
# Wait for the container to start running
while true; do
if [[ "$(docker inspect -f '{{.State.Running}}' "armada-operator" )" == "true" ]]; then
break
fi
sleep 10
done
versions_lookup "['data']['images']['ucp']['armada-operator']['go']"
IMAGE_ARMADA_GO=$IMAGE_URL
docker run --rm --net host $TERM_OPTS \
-u "${USER}:${GROUP}" \
-v ${HOME}/.kube/config:/armada/.kube/config \
-e KUBECONFIG=/armada/.kube/config \
-v "$(pwd)"/airskiff.yaml:/airskiff.yaml \
--env-file $ENV_FILE \
$IMAGE_ARMADA_GO $@
docker logs armada-operator
docker rm --force armada-operator || true
}
case "$1" in case "$1" in
'pegleg') 'pegleg')
@ -231,6 +270,10 @@ case "$1" in
shift; shift;
armada $@ armada $@
;; ;;
'armada-operator')
shift;
armada-operator $@
;;
*) help *) help
exit 1 exit 1
;; ;;

View File

@ -1,5 +1,16 @@
#!/bin/bash #!/bin/bash
set -ex env_output=$(env)
# Loop through each line of the env output
while IFS= read -r line; do
# Extract the variable name and value
variable=$(echo "$line" | cut -d= -f1)
value=$(echo "$line" | cut -d= -f2-)
# Print the export command
echo "export $variable=\"$value\""
done <<< "$env_output"
echo "Sleeping.............."
while true; do sleep 10; done while true; do sleep 10; done

View File

@ -21,6 +21,8 @@ set -xe
: "${OSH_COMMIT:="2d9457e34ca4200ed631466bd87569b0214c92e7"}" : "${OSH_COMMIT:="2d9457e34ca4200ed631466bd87569b0214c92e7"}"
: "${OSH_INFRA_COMMIT:="cfff60ec10a6c386f38db79bb9f59a552c2b032f"}" : "${OSH_INFRA_COMMIT:="cfff60ec10a6c386f38db79bb9f59a552c2b032f"}"
: "${CLONE_ARMADA:=true}" : "${CLONE_ARMADA:=true}"
: "${CLONE_ARMADA_GO:=true}"
: "${CLONE_ARMADA_OPERATOR:=true}"
: "${CLONE_DECKHAND:=true}" : "${CLONE_DECKHAND:=true}"
: "${CLONE_SHIPYARD:=true}" : "${CLONE_SHIPYARD:=true}"
: "${CLONE_PORTHOLE:=true}" : "${CLONE_PORTHOLE:=true}"
@ -29,6 +31,8 @@ set -xe
: "${CLONE_OSH:=true}" : "${CLONE_OSH:=true}"
CLONE_ARMADA=$(echo "$CLONE_ARMADA" | tr '[:upper:]' '[:lower:]') CLONE_ARMADA=$(echo "$CLONE_ARMADA" | tr '[:upper:]' '[:lower:]')
CLONE_ARMADA_GO=$(echo "$CLONE_ARMADA_GO" | tr '[:upper:]' '[:lower:]')
CLONE_ARMADA_OPERATOR=$(echo "$CLONE_ARMADA_OPERATOR" | tr '[:upper:]' '[:lower:]')
CLONE_DECKHAND=$(echo "$CLONE_DECKHAND" | tr '[:upper:]' '[:lower:]') CLONE_DECKHAND=$(echo "$CLONE_DECKHAND" | tr '[:upper:]' '[:lower:]')
CLONE_SHIPYARD=$(echo "$CLONE_SHIPYARD" | tr '[:upper:]' '[:lower:]') CLONE_SHIPYARD=$(echo "$CLONE_SHIPYARD" | tr '[:upper:]' '[:lower:]')
CLONE_PORTHOLE=$(echo "$CLONE_PORTHOLE" | tr '[:upper:]' '[:lower:]') CLONE_PORTHOLE=$(echo "$CLONE_PORTHOLE" | tr '[:upper:]' '[:lower:]')
@ -37,6 +41,8 @@ CLONE_MAAS=$(echo "$CLONE_MAAS" | tr '[:upper:]' '[:lower:]')
CLONE_OSH=$(echo "$CLONE_OSH" | tr '[:upper:]' '[:lower:]') CLONE_OSH=$(echo "$CLONE_OSH" | tr '[:upper:]' '[:lower:]')
export CLONE_ARMADA export CLONE_ARMADA
export CLONE_ARMADA_GO
export CLONE_ARMADA_OPERATOR
export CLONE_DECKHAND export CLONE_DECKHAND
export CLONE_SHIPYARD export CLONE_SHIPYARD
export CLONE_PORTHOLE export CLONE_PORTHOLE
@ -50,6 +56,12 @@ cd "${INSTALL_PATH}"
if [[ ${CLONE_ARMADA} = true ]] ; then if [[ ${CLONE_ARMADA} = true ]] ; then
git clone https://opendev.org/airship/armada.git git clone https://opendev.org/airship/armada.git
fi fi
if [[ ${CLONE_ARMADA_GO} = true ]] ; then
git clone https://opendev.org/airship/armada-go.git
fi
if [[ ${CLONE_ARMADA_OPERATOR} = true ]] ; then
git clone https://opendev.org/airship/armada-operator.git
fi
if [[ ${CLONE_DECKHAND} = true ]] ; then if [[ ${CLONE_DECKHAND} = true ]] ; then
git clone https://opendev.org/airship/deckhand.git git clone https://opendev.org/airship/deckhand.git
fi fi

View File

@ -129,5 +129,4 @@ if [[ ${MAKE_CHARTS_PROMENADE} = true ]] ; then
popd popd
fi fi
cd "${CURRENT_DIR}" cd "${CURRENT_DIR}"
df -h

View File

@ -22,6 +22,8 @@ CURRENT_DIR="$(pwd)"
: "${DISTRO:=ubuntu_focal}" : "${DISTRO:=ubuntu_focal}"
: "${DOCKER_REGISTRY:=localhost:5000}" : "${DOCKER_REGISTRY:=localhost:5000}"
: "${MAKE_ARMADA_IMAGES:=false}" : "${MAKE_ARMADA_IMAGES:=false}"
: "${MAKE_ARMADA_GO_IMAGES:=false}"
: "${MAKE_ARMADA_OPERATOR_IMAGES:=false}"
: "${MAKE_DECKHAND_IMAGES:=false}" : "${MAKE_DECKHAND_IMAGES:=false}"
: "${MAKE_SHIPYARD_IMAGES:=false}" : "${MAKE_SHIPYARD_IMAGES:=false}"
: "${MAKE_PORTHOLE_IMAGES:=false}" : "${MAKE_PORTHOLE_IMAGES:=false}"
@ -29,12 +31,16 @@ CURRENT_DIR="$(pwd)"
# Convert both values to lowercase (or uppercase) # Convert both values to lowercase (or uppercase)
MAKE_ARMADA_IMAGES=$(echo "$MAKE_ARMADA_IMAGES" | tr '[:upper:]' '[:lower:]') MAKE_ARMADA_IMAGES=$(echo "$MAKE_ARMADA_IMAGES" | tr '[:upper:]' '[:lower:]')
MAKE_ARMADA_GO_IMAGES=$(echo "$MAKE_ARMADA_GO_IMAGES" | tr '[:upper:]' '[:lower:]')
MAKE_ARMADA_OPERATOR_IMAGES=$(echo "$MAKE_ARMADA_OPERATOR_IMAGES" | tr '[:upper:]' '[:lower:]')
MAKE_DECKHAND_IMAGES=$(echo "$MAKE_DECKHAND_IMAGES" | tr '[:upper:]' '[:lower:]') MAKE_DECKHAND_IMAGES=$(echo "$MAKE_DECKHAND_IMAGES" | tr '[:upper:]' '[:lower:]')
MAKE_SHIPYARD_IMAGES=$(echo "$MAKE_SHIPYARD_IMAGES" | tr '[:upper:]' '[:lower:]') MAKE_SHIPYARD_IMAGES=$(echo "$MAKE_SHIPYARD_IMAGES" | tr '[:upper:]' '[:lower:]')
MAKE_PORTHOLE_IMAGES=$(echo "$MAKE_PORTHOLE_IMAGES" | tr '[:upper:]' '[:lower:]') MAKE_PORTHOLE_IMAGES=$(echo "$MAKE_PORTHOLE_IMAGES" | tr '[:upper:]' '[:lower:]')
MAKE_PROMENADE_IMAGES=$(echo "$MAKE_PROMENADE_IMAGES" | tr '[:upper:]' '[:lower:]') MAKE_PROMENADE_IMAGES=$(echo "$MAKE_PROMENADE_IMAGES" | tr '[:upper:]' '[:lower:]')
export MAKE_ARMADA_IMAGES export MAKE_ARMADA_IMAGES
export MAKE_ARMADA_GO_IMAGES
export MAKE_ARMADA_OPERATOR_IMAGES
export MAKE_DECKHAND_IMAGES export MAKE_DECKHAND_IMAGES
export MAKE_SHIPYARD_IMAGES export MAKE_SHIPYARD_IMAGES
export MAKE_PORTHOLE_IMAGES export MAKE_PORTHOLE_IMAGES
@ -58,6 +64,26 @@ if [[ ${MAKE_ARMADA_IMAGES} = true ]] ; then
sed -i "s#quay.io/airshipit/armada:latest-${DISTRO}#${DOCKER_REGISTRY}/airshipit/armada:latest-${DISTRO}#g" ./global/software/config/versions.yaml sed -i "s#quay.io/airshipit/armada:latest-${DISTRO}#${DOCKER_REGISTRY}/airshipit/armada:latest-${DISTRO}#g" ./global/software/config/versions.yaml
popd popd
fi fi
if [[ ${MAKE_ARMADA_GO_IMAGES} = true ]] ; then
pushd armada-go
make images
docker push "${DOCKER_REGISTRY}/airshipit/armada-go:latest-${DISTRO}"
popd
pushd treasuremap
sed -i "s#quay.io/airshipit/armada-go:latest-${DISTRO}#${DOCKER_REGISTRY}/airshipit/armada-go:latest-${DISTRO}#g" ./site/airskiff/software/config/versions.yaml
sed -i "s#quay.io/airshipit/armada-go:latest-${DISTRO}#${DOCKER_REGISTRY}/airshipit/armada-go:latest-${DISTRO}#g" ./global/software/config/versions.yaml
popd
fi
if [[ ${MAKE_ARMADA_OPERATOR_IMAGES} = true ]] ; then
pushd armada-operator
make images
docker push "${DOCKER_REGISTRY}/airshipit/armada-operator:latest-${DISTRO}"
popd
pushd treasuremap
sed -i "s#quay.io/airshipit/armada-operator:latest-${DISTRO}#${DOCKER_REGISTRY}/airshipit/armada-operator:latest-${DISTRO}#g" ./site/airskiff/software/config/versions.yaml
sed -i "s#quay.io/airshipit/armada-operator:latest-${DISTRO}#${DOCKER_REGISTRY}/airshipit/armada-operator:latest-${DISTRO}#g" ./global/software/config/versions.yaml
popd
fi
if [[ ${MAKE_DECKHAND_IMAGES} = true ]] ; then if [[ ${MAKE_DECKHAND_IMAGES} = true ]] ; then
pushd deckhand pushd deckhand
make images make images

View File

@ -0,0 +1,4 @@
#!/bin/bash
cp -a tools/gate/manifests/armada.yaml global/software/charts/ucp/armada/armada.yaml

View File

@ -21,8 +21,12 @@ set -xe
: "${PEGLEG:="./tools/airship pegleg"}" : "${PEGLEG:="./tools/airship pegleg"}"
: "${PL_SITE:="airskiff"}" : "${PL_SITE:="airskiff"}"
: "${ARMADA:="./tools/airship armada"}" : "${ARMADA:="./tools/airship armada"}"
: "${ARMADA_OPERATOR:="./tools/airship armada-operator"}"
: "${TARGET_MANIFEST:="cluster-bootstrap"}" : "${TARGET_MANIFEST:="cluster-bootstrap"}"
: "${USE_ARMADA_GO:=false}"
USE_ARMADA_GO=$(echo "$USE_ARMADA_GO" | tr '[:upper:]' '[:lower:]')
export USE_ARMADA_GO
# Render documents # Render documents
${PEGLEG} site -r . render "${PL_SITE}" -o airskiff.yaml ${PEGLEG} site -r . render "${PL_SITE}" -o airskiff.yaml
@ -36,10 +40,13 @@ sudo chmod 0644 airskiff.yaml
# sudo chmod 0644 ~/.kube/config # sudo chmod 0644 ~/.kube/config
# Download latest Armada image and deploy Airship components # Download latest Armada image and deploy Airship components
${ARMADA} apply /airskiff.yaml --debug --target-manifest "${TARGET_MANIFEST}" if [[ ${USE_ARMADA_GO} = true ]] ; then
${ARMADA_OPERATOR} apply /airskiff.yaml --debug --target-manifest "${TARGET_MANIFEST}"
else
${ARMADA} apply /airskiff.yaml --debug --target-manifest "${TARGET_MANIFEST}"
fi
# # Set back permissions of the files # # Set back permissions of the files
sudo chmod "${AIRSKIFF_PERMISSIONS}" airskiff.yaml sudo chmod "${AIRSKIFF_PERMISSIONS}" airskiff.yaml
# sudo chmod "${KUBE_CONFIG_PERMISSIONS}" ~/.kube/config # sudo chmod "${KUBE_CONFIG_PERMISSIONS}" ~/.kube/config
df -h kubectl get pods -A

View File

@ -0,0 +1,110 @@
---
schema: armada/Chart/v1
metadata:
schema: metadata/Document/v1
name: ucp-armada
labels:
name: ucp-armada-global
layeringDefinition:
abstract: false
layer: global
storagePolicy: cleartext
substitutions:
# Chart source
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .charts.ucp.armada
dest:
path: .source
# Images
- src:
schema: pegleg/SoftwareVersions/v1
name: software-versions
path: .images.ucp.armada-operator
dest:
path: .values.images.tags
# Endpoints
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ucp.identity
dest:
path: .values.endpoints.identity
- src:
schema: pegleg/EndpointCatalogue/v1
name: ucp_endpoints
path: .ucp.armada
dest:
path: .values.endpoints.armada
# Credentials
- src:
schema: pegleg/AccountCatalogue/v1
name: ucp_service_accounts
path: .ucp.keystone.admin
dest:
path: .values.endpoints.identity.auth.admin
- src:
schema: pegleg/AccountCatalogue/v1
name: ucp_service_accounts
path: .ucp.armada.keystone
dest:
path: .values.endpoints.identity.auth.user
# Secrets
- dest:
path: .values.endpoints.identity.auth.admin.password
src:
schema: deckhand/Passphrase/v1
name: ucp_keystone_admin_password
path: .
- dest:
path: .values.endpoints.identity.auth.user.password
src:
schema: deckhand/Passphrase/v1
name: ucp_armada_keystone_password
path: .
data:
chart_name: armada
release: ucp-armada
namespace: ucp
wait:
timeout: 100
labels:
release_group: airship-ucp-armada
install:
no_hooks: false
upgrade:
no_hooks: false
pre:
delete:
- type: job
labels:
release_group: airship-ucp-armada
values:
pod:
replicas:
api: 2
env:
armada_api:
- name: ARMADA_UWSGI_TIMEOUT
value: 14400
conf:
armada:
DEFAULT:
debug: true
enable_operator: true
tiller_namespace: kube-system
manifests:
deployment_tiller: false
service_tiller_deploy: false
network:
api:
ingress:
classes:
namespace: "ucp-ingress"
cluster: "ucp-ingress"
...

View File

@ -26,12 +26,9 @@ OSH_COMMIT: 2d9457e34ca4200ed631466bd87569b0214c92e7
COREDNS_VERSION: v1.11.1 COREDNS_VERSION: v1.11.1
DISTRO: ubuntu_focal DISTRO: ubuntu_focal
DOCKER_REGISTRY: quay.io DOCKER_REGISTRY: quay.io
MAKE_ARMADA_IMAGES: false
MAKE_DECKHAND_IMAGES: false
MAKE_SHIPYARD_IMAGES: false
MAKE_PORTHOLE_IMAGES: false
MAKE_PROMENADE_IMAGES: false
CLONE_ARMADA: true CLONE_ARMADA: true
CLONE_ARMADA_GO: true
CLONE_ARMADA_OPERATOR: true
CLONE_DECKHAND: true CLONE_DECKHAND: true
CLONE_SHIPYARD: true CLONE_SHIPYARD: true
CLONE_PORTHOLE: true CLONE_PORTHOLE: true
@ -39,9 +36,11 @@ CLONE_PROMENADE: true
CLONE_MAAS: true CLONE_MAAS: true
CLONE_OSH: true CLONE_OSH: true
MAKE_ARMADA_IMAGES: false MAKE_ARMADA_IMAGES: false
MAKE_ARMADA_GO_IMAGES: false
MAKE_ARMADA_OPERATOR_IMAGES: false
MAKE_DECKHAND_IMAGES: false MAKE_DECKHAND_IMAGES: false
MAKE_SHIPYARD_IMAGES: false MAKE_SHIPYARD_IMAGES: false
MAKE_DECKHAND_IMAGES: false
MAKE_PORTHOLE_IMAGES: false MAKE_PORTHOLE_IMAGES: false
MAKE_PROMENADE_IMAGES: false MAKE_PROMENADE_IMAGES: false
USE_ARMADA_GO: false
... ...

View File

@ -42,12 +42,9 @@
COREDNS_VERSION: "{{ coredns_version | default('v1.11.1') }}" COREDNS_VERSION: "{{ coredns_version | default('v1.11.1') }}"
DISTRO: "{{ DISTRO | default('ubuntu_focal') }}" DISTRO: "{{ DISTRO | default('ubuntu_focal') }}"
DOCKER_REGISTRY: "{{ DOCKER_REGISTRY | default('quay.io') }}" DOCKER_REGISTRY: "{{ DOCKER_REGISTRY | default('quay.io') }}"
MAKE_ARMADA_IMAGES: "{{ MAKE_ARMADA_IMAGES | default('false') }}"
MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}"
MAKE_SHIPYARD_IMAGES: "{{ MAKE_SHIPYARD_IMAGES | default('false') }}"
MAKE_PORTHOLE_IMAGES: "{{ MAKE_PORTHOLE_IMAGES | default('false') }}"
MAKE_PROMENADE_IMAGES: "{{ MAKE_PROMENADE_IMAGES | default('false') }}"
CLONE_ARMADA: "{{ CLONE_ARMADA | default('true') }}" CLONE_ARMADA: "{{ CLONE_ARMADA | default('true') }}"
CLONE_ARMADA_GO: "{{ CLONE_ARMADA_GO | default('true') }}"
CLONE_ARMADA_OPERATOR: "{{ CLONE_ARMADA_OPERATOR | default('true') }}"
CLONE_DECKHAND: "{{ CLONE_DECKHAND | default('true') }}" CLONE_DECKHAND: "{{ CLONE_DECKHAND | default('true') }}"
CLONE_SHIPYARD: "{{ CLONE_SHIPYARD | default('true') }}" CLONE_SHIPYARD: "{{ CLONE_SHIPYARD | default('true') }}"
CLONE_PORTHOLE: "{{ CLONE_PORTHOLE | default('true') }}" CLONE_PORTHOLE: "{{ CLONE_PORTHOLE | default('true') }}"
@ -55,11 +52,13 @@
CLONE_MAAS: "{{ CLONE_MAAS | default('true') }}" CLONE_MAAS: "{{ CLONE_MAAS | default('true') }}"
CLONE_OSH: "{{ CLONE_OSH | default('true') }}" CLONE_OSH: "{{ CLONE_OSH | default('true') }}"
MAKE_ARMADA_IMAGES: "{{ MAKE_ARMADA_IMAGES | default('false') }}" MAKE_ARMADA_IMAGES: "{{ MAKE_ARMADA_IMAGES | default('false') }}"
MAKE_ARMADA_GO_IMAGES: "{{ MAKE_ARMADA_GO_IMAGES | default('false') }}"
MAKE_ARMADA_OPERATOR_IMAGES: "{{ MAKE_ARMADA_OPERATOR_IMAGES | default('false') }}"
MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}" MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}"
MAKE_SHIPYARD_IMAGES: "{{ MAKE_SHIPYARD_IMAGES | default('false') }}" MAKE_SHIPYARD_IMAGES: "{{ MAKE_SHIPYARD_IMAGES | default('false') }}"
MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}"
MAKE_PORTHOLE_IMAGES: "{{ MAKE_PORTHOLE_IMAGES | default('false') }}" MAKE_PORTHOLE_IMAGES: "{{ MAKE_PORTHOLE_IMAGES | default('false') }}"
MAKE_PROMENADE_IMAGES: "{{ MAKE_PROMENADE_IMAGES | default('false') }}" MAKE_PROMENADE_IMAGES: "{{ MAKE_PROMENADE_IMAGES | default('false') }}"
USE_ARMADA_GO: "{{ USE_ARMADA_GO | default('false') }}"
# NOTE(aostapenko) using bigger than async_status timeout due to async_status issue with # NOTE(aostapenko) using bigger than async_status timeout due to async_status issue with
# not recognizing timed out jobs: https://github.com/ansible/ansible/issues/25637 # not recognizing timed out jobs: https://github.com/ansible/ansible/issues/25637
async: 3600 async: 3600

View File

@ -26,12 +26,10 @@ OSH_COMMIT: 2d9457e34ca4200ed631466bd87569b0214c92e7
COREDNS_VERSION: v1.11.1 COREDNS_VERSION: v1.11.1
DISTRO: ubuntu_focal DISTRO: ubuntu_focal
DOCKER_REGISTRY: quay.io DOCKER_REGISTRY: quay.io
MAKE_ARMADA_IMAGES: false
MAKE_DECKHAND_IMAGES: false
MAKE_SHIPYARD_IMAGES: false
MAKE_PORTHOLE_IMAGES: false
MAKE_PROMENADE_IMAGES: false
CLONE_ARMADA: true CLONE_ARMADA: true
CLONE_ARMADA_GO: true
CLONE_ARMADA_OPERATOR: true
CLONE_DECKHAND: true CLONE_DECKHAND: true
CLONE_SHIPYARD: true CLONE_SHIPYARD: true
CLONE_PORTHOLE: true CLONE_PORTHOLE: true
@ -39,9 +37,11 @@ CLONE_PROMENADE: true
CLONE_MAAS: true CLONE_MAAS: true
CLONE_OSH: true CLONE_OSH: true
MAKE_ARMADA_IMAGES: false MAKE_ARMADA_IMAGES: false
MAKE_ARMADA_GO_IMAGES: false
MAKE_ARMADA_OPERATOR_IMAGES: false
MAKE_DECKHAND_IMAGES: false MAKE_DECKHAND_IMAGES: false
MAKE_SHIPYARD_IMAGES: false MAKE_SHIPYARD_IMAGES: false
MAKE_DECKHAND_IMAGES: false
MAKE_PORTHOLE_IMAGES: false MAKE_PORTHOLE_IMAGES: false
MAKE_PROMENADE_IMAGES: false MAKE_PROMENADE_IMAGES: false
USE_ARMADA_GO: false
... ...

View File

@ -39,12 +39,9 @@
COREDNS_VERSION: "{{ coredns_version | default('v1.11.1') }}" COREDNS_VERSION: "{{ coredns_version | default('v1.11.1') }}"
DISTRO: "{{ DISTRO | default('ubuntu_focal') }}" DISTRO: "{{ DISTRO | default('ubuntu_focal') }}"
DOCKER_REGISTRY: "{{ DOCKER_REGISTRY | default('quay.io') }}" DOCKER_REGISTRY: "{{ DOCKER_REGISTRY | default('quay.io') }}"
MAKE_ARMADA_IMAGES: "{{ MAKE_ARMADA_IMAGES | default('false') }}"
MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}"
MAKE_SHIPYARD_IMAGES: "{{ MAKE_SHIPYARD_IMAGES | default('false') }}"
MAKE_PORTHOLE_IMAGES: "{{ MAKE_PORTHOLE_IMAGES | default('false') }}"
MAKE_PROMENADE_IMAGES: "{{ MAKE_PROMENADE_IMAGES | default('false') }}"
CLONE_ARMADA: "{{ CLONE_ARMADA | default('true') }}" CLONE_ARMADA: "{{ CLONE_ARMADA | default('true') }}"
CLONE_ARMADA_GO: "{{ CLONE_ARMADA_GO | default('true') }}"
CLONE_ARMADA_OPERATOR: "{{ CLONE_ARMADA_OPERATOR | default('true') }}"
CLONE_DECKHAND: "{{ CLONE_DECKHAND | default('true') }}" CLONE_DECKHAND: "{{ CLONE_DECKHAND | default('true') }}"
CLONE_SHIPYARD: "{{ CLONE_SHIPYARD | default('true') }}" CLONE_SHIPYARD: "{{ CLONE_SHIPYARD | default('true') }}"
CLONE_PORTHOLE: "{{ CLONE_PORTHOLE | default('true') }}" CLONE_PORTHOLE: "{{ CLONE_PORTHOLE | default('true') }}"
@ -52,9 +49,11 @@
CLONE_MAAS: "{{ CLONE_MAAS | default('true') }}" CLONE_MAAS: "{{ CLONE_MAAS | default('true') }}"
CLONE_OSH: "{{ CLONE_OSH | default('true') }}" CLONE_OSH: "{{ CLONE_OSH | default('true') }}"
MAKE_ARMADA_IMAGES: "{{ MAKE_ARMADA_IMAGES | default('false') }}" MAKE_ARMADA_IMAGES: "{{ MAKE_ARMADA_IMAGES | default('false') }}"
MAKE_ARMADA_GO_IMAGES: "{{ MAKE_ARMADA_GO_IMAGES | default('false') }}"
MAKE_ARMADA_OPERATOR_IMAGES: "{{ MAKE_ARMADA_OPERATOR_IMAGES | default('false') }}"
MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}" MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}"
MAKE_SHIPYARD_IMAGES: "{{ MAKE_SHIPYARD_IMAGES | default('false') }}" MAKE_SHIPYARD_IMAGES: "{{ MAKE_SHIPYARD_IMAGES | default('false') }}"
MAKE_DECKHAND_IMAGES: "{{ MAKE_DECKHAND_IMAGES | default('false') }}"
MAKE_PORTHOLE_IMAGES: "{{ MAKE_PORTHOLE_IMAGES | default('false') }}" MAKE_PORTHOLE_IMAGES: "{{ MAKE_PORTHOLE_IMAGES | default('false') }}"
MAKE_PROMENADE_IMAGES: "{{ MAKE_PROMENADE_IMAGES | default('false') }}" MAKE_PROMENADE_IMAGES: "{{ MAKE_PROMENADE_IMAGES | default('false') }}"
USE_ARMADA_GO: "{{ USE_ARMADA_GO | default('false') }}"
... ...

View File

@ -12,18 +12,18 @@ metadata:
parentSelector: parentSelector:
name: ucp-armada-global name: ucp-armada-global
actions: actions:
- method: replace # - method: replace
path: .source # path: .source
- method: merge - method: merge
path: . path: .
storagePolicy: cleartext storagePolicy: cleartext
data: data:
wait: wait:
timeout: 1800 timeout: 1800
source: # source:
type: local # type: local
location: /airship-components/armada # location: /airship-components/armada
subpath: charts/armada # subpath: charts/armada
values: values:
pod: pod:
replicas: replicas:

View File

@ -12,18 +12,18 @@ metadata:
parentSelector: parentSelector:
name: ucp-deckhand-global name: ucp-deckhand-global
actions: actions:
- method: replace # - method: replace
path: .source # path: .source
- method: merge - method: merge
path: . path: .
storagePolicy: cleartext storagePolicy: cleartext
data: data:
wait: wait:
timeout: 1800 timeout: 1800
source: # source:
type: local # type: local
location: /airship-components/deckhand # location: /airship-components/deckhand
subpath: charts/deckhand # subpath: charts/deckhand
values: values:
pod: pod:
replicas: replicas:

View File

@ -12,18 +12,18 @@ metadata:
parentSelector: parentSelector:
name: ucp-shipyard-global name: ucp-shipyard-global
actions: actions:
- method: replace # - method: replace
path: .source # path: .source
- method: merge - method: merge
path: . path: .
storagePolicy: cleartext storagePolicy: cleartext
data: data:
wait: wait:
timeout: 1800 timeout: 1800
source: # source:
type: local # type: local
location: /airship-components/shipyard # location: /airship-components/shipyard
subpath: charts/shipyard # subpath: charts/shipyard
values: values:
pod: pod:
replicas: replicas: