[CORD-2966]v3 Update waiting process and helm repo for helm-api-lint job
Change-Id: Ib93780c4a71917284f122a00b280fa2520daf36c
diff --git a/jjb/pipeline/helm-api-test.groovy b/jjb/pipeline/helm-api-test.groovy
index adedd8c..3a31332 100644
--- a/jjb/pipeline/helm-api-test.groovy
+++ b/jjb/pipeline/helm-api-test.groovy
@@ -31,7 +31,7 @@
steps {
sh """
pushd cord
- PROJECT_PATH=$(xmllint --xpath "string(//project[@name=\"${gerritProject}\"]/@path)" .repo/manifest.xml)
+ PROJECT_PATH=\$(xmllint --xpath "string(//project[@name=\\\"${gerritProject}\\\"]/@path)" .repo/manifest.xml)
repo download "\$PROJECT_PATH" "${gerritChangeNumber}/${gerritPatchsetNumber}"
popd
"""
@@ -63,15 +63,16 @@
touch $HOME/.kube/config
export KUBECONFIG=$HOME/.kube/config
sudo -E /usr/bin/minikube start --vm-driver=none
-
- for i in {1..150}; do # timeout for 5 minutes
- ./kubectl get po &> /dev/null
- if [ $? -ne 1 ]; then
- break
- fi
- sleep 2
- done
'''
+ script {
+ timeout(3) {
+ waitUntil {
+ sleep 5
+ def kc_ret = sh script: "kubectl get po", returnStatus: true
+ return (kc_ret == 0);
+ }
+ }
+ }
}
}
}
@@ -79,7 +80,11 @@
stage('helm') {
steps {
- sh 'helm init && sleep 60'
+ sh '''
+ helm init
+ sleep 60
+ helm repo add incubator https://kubernetes-charts-incubator.storage.googleapis.com/
+ '''
}
}
@@ -90,6 +95,7 @@
helm dep up xos-core
helm install -f examples/test-values.yaml -f examples/candidate-tag-values.yaml xos-core -n xos-core
sleep 60
+ helm status xos-core
popd
'''
}
@@ -99,7 +105,6 @@
steps {
sh '''
helm test xos-core
- kubectl logs xos-core-api-test
mkdir -p ./RobotLogs;
cp /tmp/helm_test_xos_core_logs_*/* ./RobotLogs
'''
@@ -120,6 +125,9 @@
post {
always {
sh '''
+ kubectl get pods --all-namespaces
+ helm list
+ kubectl logs xos-core-api-test
kubectl delete pod xos-core-api-test
helm delete --purge xos-core
'''
diff --git a/jjb/verify/xos.yaml b/jjb/verify/xos.yaml
index 5f3e911..235d1fa 100644
--- a/jjb/verify/xos.yaml
+++ b/jjb/verify/xos.yaml
@@ -17,3 +17,6 @@
dependency-jobs: 'verify_xos_licensed'
- 'api-test':
dependency-jobs: 'verify_xos_sonarqube'
+ - 'helm-api-test':
+ dependency-jobs: 'verify_xos_sonarqube'
+