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() {
# 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
helm test ${APPLICATION} --timeout $timeout
helm test ${APPLICATION} --timeout ${timeout}s --namespace=${NAMESPACE}
}
for i in $(seq 1 ${HELM_TESTS_TRIES}); do

View File

@ -15,6 +15,7 @@ set -xe
#NOTE: Get the over-rides to use
: ${OSH_EXTRA_HELM_ARGS_CINDER:="$(./tools/deployment/common/get-values-overrides.sh cinder)"}
: ${RUN_HELM_TESTS:="yes"}
#NOTE: Lint and package chart
make cinder
@ -75,4 +76,7 @@ openstack volume type list --default
# Delete the test pod if it still exists
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"}
tee /tmp/glance.yaml <<EOF
storage: ${GLANCE_BACKEND}
volume:
class_name: standard
EOF
if [ "x${OSH_OPENSTACK_RELEASE}" == "xnewton" ]; then
# 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
: ${OSH_EXTRA_HELM_ARGS_HORIZON:="$(./tools/deployment/common/get-values-overrides.sh horizon)"}
: ${RUN_HELM_TESTS:="yes"}
#NOTE: Lint and package chart
make horizon
@ -29,7 +30,9 @@ helm upgrade --install horizon ./horizon \
#NOTE: Wait for deploy
./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
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 update
# helm 2 command
helm install --name cert-manager --namespace cert-manager \
--version ${CERT_MANAGER_VERSION} jetstack/cert-manager \
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 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
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
sleep 45
kubectl create ns openstack
kubectl apply -f /tmp/ca-issuers.yaml

View File

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