Move check jobs to use helm3

This change migrates the check jobs in OSH to use the
new helm v3 script when deploying kubernetes via
minikube.

This is one step in the move to helm v3. Future changes
will migrate the other jobs.

Change-Id: If741db5997a27ed06584b9af2d50485d8de34a2b
This commit is contained in:
Gage Hugo 2021-09-30 16:40:04 -05:00
parent f07e5ef659
commit 7034968d96
7 changed files with 42 additions and 20 deletions

View File

@ -10,7 +10,7 @@ timeout=${OSH_TEST_TIMEOUT:-900}
run_tests() { run_tests() {
# Delete the test pod if it still exists # Delete the test pod if it still exists
kubectl delete pods -l application=${APPLICATION},release_group=${RELEASE_GROUP},component=test --namespace=${NAMESPACE} --ignore-not-found kubectl delete pods -l application=${APPLICATION},release_group=${RELEASE_GROUP},component=test --namespace=${NAMESPACE} --ignore-not-found
helm test ${APPLICATION} --timeout $timeout helm test ${APPLICATION} --timeout ${timeout}s --namespace=${NAMESPACE}
} }
for i in $(seq 1 ${HELM_TESTS_TRIES}); do for i in $(seq 1 ${HELM_TESTS_TRIES}); do

View File

@ -15,6 +15,7 @@ set -xe
#NOTE: Get the over-rides to use #NOTE: Get the over-rides to use
: ${OSH_EXTRA_HELM_ARGS_CINDER:="$(./tools/deployment/common/get-values-overrides.sh cinder)"} : ${OSH_EXTRA_HELM_ARGS_CINDER:="$(./tools/deployment/common/get-values-overrides.sh cinder)"}
: ${RUN_HELM_TESTS:="yes"}
#NOTE: Lint and package chart #NOTE: Lint and package chart
make cinder make cinder
@ -75,4 +76,7 @@ openstack volume type list --default
# Delete the test pod if it still exists # Delete the test pod if it still exists
kubectl delete pods -l application=cinder,release_group=cinder,component=test --namespace=openstack --ignore-not-found kubectl delete pods -l application=cinder,release_group=cinder,component=test --namespace=openstack --ignore-not-found
helm test cinder --timeout 900
if [ "x${RUN_HELM_TESTS}" != "xno" ]; then
./tools/deployment/common/run-helm-tests.sh cinder
fi

View File

@ -27,6 +27,8 @@ make glance
: ${GLANCE_BACKEND:="pvc"} : ${GLANCE_BACKEND:="pvc"}
tee /tmp/glance.yaml <<EOF tee /tmp/glance.yaml <<EOF
storage: ${GLANCE_BACKEND} storage: ${GLANCE_BACKEND}
volume:
class_name: standard
EOF EOF
if [ "x${OSH_OPENSTACK_RELEASE}" == "xnewton" ]; then if [ "x${OSH_OPENSTACK_RELEASE}" == "xnewton" ]; then
# NOTE(portdirect): glance APIv1 is required for heat in Newton # NOTE(portdirect): glance APIv1 is required for heat in Newton

View File

@ -16,6 +16,7 @@ set -xe
#NOTE: Get the over-rides to use #NOTE: Get the over-rides to use
: ${OSH_EXTRA_HELM_ARGS_HORIZON:="$(./tools/deployment/common/get-values-overrides.sh horizon)"} : ${OSH_EXTRA_HELM_ARGS_HORIZON:="$(./tools/deployment/common/get-values-overrides.sh horizon)"}
: ${RUN_HELM_TESTS:="yes"}
#NOTE: Lint and package chart #NOTE: Lint and package chart
make horizon make horizon
@ -29,7 +30,9 @@ helm upgrade --install horizon ./horizon \
#NOTE: Wait for deploy #NOTE: Wait for deploy
./tools/deployment/common/wait-for-pods.sh openstack ./tools/deployment/common/wait-for-pods.sh openstack
helm test horizon if [ "x${RUN_HELM_TESTS}" != "xno" ]; then
./tools/deployment/common/run-helm-tests.sh horizon
fi
FEATURE_GATE="tls"; if [[ ${FEATURE_GATES//,/ } =~ (^|[[:space:]])${FEATURE_GATE}($|[[:space:]]) ]]; then FEATURE_GATE="tls"; if [[ ${FEATURE_GATES//,/ } =~ (^|[[:space:]])${FEATURE_GATE}($|[[:space:]]) ]]; then
curl --cacert /etc/openstack-helm/certs/ca/ca.pem -L https://horizon.openstack.svc.cluster.local curl --cacert /etc/openstack-helm/certs/ca/ca.pem -L https://horizon.openstack.svc.cluster.local

21
tools/gate/deploy-k8s.sh Executable file
View File

@ -0,0 +1,21 @@
#!/bin/bash
# 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.
set -xe
CURRENT_DIR="$(pwd)"
: ${OSH_INFRA_PATH:="../openstack-helm-infra"}
cd ${OSH_INFRA_PATH}
./tools/gate/deploy-k8s.sh
cd ${CURRENT_DIR}

View File

@ -122,18 +122,12 @@ kubectl create ns cert-manager
helm repo add jetstack https://charts.jetstack.io helm repo add jetstack https://charts.jetstack.io
helm repo update helm repo update
# helm 2 command
helm install --name cert-manager --namespace cert-manager \ helm install cert-manager jetstack/cert-manager --namespace cert-manager \
--version ${CERT_MANAGER_VERSION} jetstack/cert-manager \ --version ${CERT_MANAGER_VERSION} \
--set installCRDs=true \ --set installCRDs=true \
--set extraArgs[0]="--enable-certificate-owner-ref=true" --set extraArgs[0]="--enable-certificate-owner-ref=true"
# helm 3 command
# helm install cert-manager jetstack/cert-manager --namespace cert-manager \
# --version ${CERT_MANAGER_VERSION} \
# --set installCRDs=true \
# --set extraArgs[0]="--enable-certificate-owner-ref=true"
helm repo remove jetstack helm repo remove jetstack
key=$(cat /etc/openstack-helm/certs/ca/ca-key.pem | base64 | tr -d "\n") key=$(cat /etc/openstack-helm/certs/ca/ca-key.pem | base64 | tr -d "\n")
@ -166,5 +160,4 @@ kubectl wait --for=condition=Ready pods --all -n cert-manager --timeout=180s
# [0] https://github.com/jetstack/cert-manager/issues/2602 # [0] https://github.com/jetstack/cert-manager/issues/2602
sleep 45 sleep 45
kubectl create ns openstack
kubectl apply -f /tmp/ca-issuers.yaml kubectl apply -f /tmp/ca-issuers.yaml

View File

@ -81,7 +81,7 @@
gate_scripts_relative_path: ../openstack-helm gate_scripts_relative_path: ../openstack-helm
gate_scripts: gate_scripts:
- ./tools/deployment/common/install-packages.sh - ./tools/deployment/common/install-packages.sh
- ./tools/deployment/common/deploy-k8s.sh - ./tools/gate/deploy-k8s.sh
- - ./tools/deployment/common/setup-client.sh - - ./tools/deployment/common/setup-client.sh
- ./tools/deployment/component/ceph/ceph.sh - ./tools/deployment/component/ceph/ceph.sh
- - ./tools/deployment/component/ceph/ceph-ns-activate.sh - - ./tools/deployment/component/ceph/ceph-ns-activate.sh
@ -141,13 +141,12 @@
gate_scripts_relative_path: ../openstack-helm gate_scripts_relative_path: ../openstack-helm
gate_scripts: gate_scripts:
- ./tools/deployment/common/install-packages.sh - ./tools/deployment/common/install-packages.sh
- ./tools/deployment/common/deploy-k8s.sh - ./tools/gate/deploy-k8s.sh
- - ./tools/deployment/common/setup-client.sh - - ./tools/deployment/common/setup-client.sh
- ./tools/deployment/component/common/ingress.sh - ./tools/deployment/component/common/ingress.sh
- - ./tools/deployment/component/common/rabbitmq.sh - - ./tools/deployment/component/common/rabbitmq.sh
- ./tools/deployment/component/common/mariadb.sh - ./tools/deployment/component/common/mariadb.sh
- ./tools/deployment/component/common/memcached.sh - ./tools/deployment/component/common/memcached.sh
- - ./tools/deployment/component/nfs-provisioner/nfs-provisioner.sh
- ./tools/deployment/component/keystone/keystone.sh - ./tools/deployment/component/keystone/keystone.sh
- - ./tools/deployment/component/heat/heat.sh - - ./tools/deployment/component/heat/heat.sh
- ./tools/deployment/component/glance/glance.sh - ./tools/deployment/component/glance/glance.sh
@ -213,7 +212,7 @@
gate_scripts_relative_path: ../openstack-helm gate_scripts_relative_path: ../openstack-helm
gate_scripts: gate_scripts:
- ./tools/deployment/common/install-packages.sh - ./tools/deployment/common/install-packages.sh
- ./tools/deployment/common/deploy-k8s.sh - ./tools/gate/deploy-k8s.sh
- ./tools/deployment/common/setup-client.sh - ./tools/deployment/common/setup-client.sh
- ./tools/deployment/component/common/ingress.sh - ./tools/deployment/component/common/ingress.sh
- ./tools/deployment/component/common/mariadb.sh - ./tools/deployment/component/common/mariadb.sh
@ -274,7 +273,7 @@
gate_scripts_relative_path: ../openstack-helm gate_scripts_relative_path: ../openstack-helm
gate_scripts: gate_scripts:
- ./tools/deployment/common/install-packages.sh - ./tools/deployment/common/install-packages.sh
- ./tools/deployment/common/deploy-k8s.sh - ./tools/gate/deploy-k8s.sh
- - ./tools/deployment/common/setup-client.sh - - ./tools/deployment/common/setup-client.sh
- ./tools/scripts/tls/cert-manager.sh - ./tools/scripts/tls/cert-manager.sh
- ./tools/deployment/component/ceph/ceph.sh - ./tools/deployment/component/ceph/ceph.sh