diff --git a/.zuul.yaml b/.zuul.yaml index aa331e00..ba6790f0 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -118,7 +118,7 @@ - airship/treasuremap vars: CLONE_ARMADA: false - OSH_INFRA_COMMIT: 8e96a91ffae745b952c053923aa177e615b49b74 + OSH_INFRA_COMMIT: 97ce6d7d8e9a090c748800d69a57bbd9af698b60 ARMADA_IMAGE_DISTRO: ubuntu_focal irrelevant-files: - ^.*\.rst$ diff --git a/Makefile b/Makefile index 36f56ed8..437c6091 100644 --- a/Makefile +++ b/Makefile @@ -33,7 +33,7 @@ IMAGE := ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TA UBUNTU_BASE_IMAGE ?= # Helm binary download url -HELM_ARTIFACT_URL ?= https://get.helm.sh/helm-v3.11.1-linux-amd64.tar.gz +HELM_ARTIFACT_URL ?= https://get.helm.sh/helm-v3.12.2-linux-amd64.tar.gz # VERSION INFO GIT_COMMIT = $(shell git rev-parse HEAD) diff --git a/tools/gate/playbooks/airskiff-deploy.yaml b/tools/gate/playbooks/airskiff-deploy.yaml index c4eb2e6f..cbbf9b0a 100644 --- a/tools/gate/playbooks/airskiff-deploy.yaml +++ b/tools/gate/playbooks/airskiff-deploy.yaml @@ -43,20 +43,48 @@ args: chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" + - name: Setup openstack client + shell: | + ./tools/deployment/airskiff/developer/020-setup-client.sh + args: + chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" + become: yes + - 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 + docker system prune --force args: chdir: "{{ zuul.project.src_dir }}" become: yes + + - name: Use locally built images in manifests + shell: | + set -ex + export DISTRO={{ ARMADA_IMAGE_DISTRO }} + docker rm registry --force || true + docker run -d -p 5000:5000 --restart=always --name registry registry:2 + if test "${DISTRO}" = 'ubuntu_bionic' + then + docker tag quay.io/airshipit/armada:latest-ubuntu_bionic localhost:5000/armada:latest-ubuntu_bionic + docker push localhost:5000/armada:latest-ubuntu_bionic + sed -i "s#quay.io/airshipit/armada:latest-ubuntu_focal#localhost:5000/armada:latest-ubuntu_bionic#g" ./site/airskiff/software/config/versions.yaml + sed -i "s#quay.io/airshipit/armada:latest-ubuntu_focal#localhost:5000/armada:latest-ubuntu_bionic#g" ./tools/deployment/airskiff/developer/030-armada-bootstrap.sh + sed -i "s#quay.io/airshipit/armada:latest-ubuntu_focal#localhost:5000/armada:latest-ubuntu_bionic#g" ./global/software/config/versions.yaml + else + docker tag quay.io/airshipit/armada:latest-ubuntu_focal localhost:5000/armada:latest-ubuntu_focal + docker push localhost:5000/armada:latest-ubuntu_focal + sed -i "s#quay.io/airshipit/armada:latest-ubuntu_focal#localhost:5000/armada:latest-ubuntu_focal#g" ./site/airskiff/software/config/versions.yaml + sed -i "s#quay.io/airshipit/armada:latest-ubuntu_focal#localhost:5000/armada:latest-ubuntu_focal#g" ./tools/deployment/airskiff/developer/030-armada-bootstrap.sh + sed -i "s#quay.io/airshipit/armada:latest-ubuntu_focal#localhost:5000/armada:latest-ubuntu_focal#g" ./global/software/config/versions.yaml + fi + args: + chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" + become: yes + - name: Build all charts locally shell: | set -ex @@ -65,10 +93,27 @@ chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" become: yes + + - name: Start artifactory + shell: | + set -ex + # start http server with artifacts + docker rm artifacts --force || true + docker run --name artifacts -p 8282:80 -v $(pwd)/../artifacts:/usr/share/nginx/html -d nginx + sleep 10 + curl --verbose -I http://control-plane.minikube.internal:8282/memcached.tgz + args: + chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" + become: yes + - name: Deploy Airship components using Armada shell: | + set -x mkdir -p ~/.kube cp -rp /home/zuul/.kube/config ~/.kube/config + + pip3 install packaging + ./tools/deployment/airskiff/developer/030-armada-bootstrap.sh args: chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" @@ -76,14 +121,14 @@ - name: Deploy Memcached using Airship shell: | - ./tools/deployment/airskiff/developer/100-deploy-osh.sh + ./tools/deployment/airskiff/developer/100-deploy-osh.sh args: chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" become: yes - name: Wait for deployment completion shell: | - ./tools/gate/wait-for-shipyard.sh + ./tools/gate/wait-for-shipyard.sh args: chdir: "{{ zuul.projects['opendev.org/airship/treasuremap'].src_dir }}" become: yes diff --git a/tools/helm_install.sh b/tools/helm_install.sh index e3665d29..9c0dae59 100755 --- a/tools/helm_install.sh +++ b/tools/helm_install.sh @@ -17,7 +17,7 @@ set -x HELM=$1 -HELM_ARTIFACT_URL=${HELM_ARTIFACT_URL:-"https://get.helm.sh/helm-v3.11.1-linux-amd64.tar.gz"} +HELM_ARTIFACT_URL=${HELM_ARTIFACT_URL:-"https://get.helm.sh/helm-v3.12.2-linux-amd64.tar.gz"} function install_helm_binary {