X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=jenkins%2Fci-pipelines%2Fci_stage_3.groovy;h=ee50a3f08ad9928108fed746070918eaad9814a6;hb=1d704d9e31c8a002f38afbbc33929d13baaa8e45;hp=f851fc0af490386ff60d62de96aaec598588685a;hpb=7f1e1043fc4a21f67f76ae8293caaf9c33cfb928;p=osm%2Fdevops.git diff --git a/jenkins/ci-pipelines/ci_stage_3.groovy b/jenkins/ci-pipelines/ci_stage_3.groovy index f851fc0a..ee50a3f0 100644 --- a/jenkins/ci-pipelines/ci_stage_3.groovy +++ b/jenkins/ci-pipelines/ci_stage_3.groovy @@ -32,7 +32,7 @@ properties([ string(defaultValue: 'artifactory-osm', description: '', name: 'ARTIFACTORY_SERVER'), string(defaultValue: 'osm-stage_4', description: '', name: 'DOWNSTREAM_STAGE_NAME'), string(defaultValue: 'testing-daily', description: '', name: 'DOCKER_TAG'), - booleanParam(defaultValue: true, description: '', name: 'SAVE_CONTAINER_ON_FAIL'), + booleanParam(defaultValue: false, description: '', name: 'SAVE_CONTAINER_ON_FAIL'), booleanParam(defaultValue: false, description: '', name: 'SAVE_CONTAINER_ON_PASS'), booleanParam(defaultValue: true, description: '', name: 'SAVE_ARTIFACTS_ON_SMOKE_SUCCESS'), booleanParam(defaultValue: true, description: '', name: 'DO_STAGE_4'), @@ -120,20 +120,20 @@ def archive_logs(remote) { for container in `kubectl get pods -n osm | grep -v operator | grep -v NAME| awk '{print $1}'`; do logfile=`echo $container | cut -d- -f1` echo "Extracting log for $logfile" - kubectl logs -n osm $container 2>&1 > logs/$logfile.log + kubectl logs -n osm $container --timestamps=true 2>&1 > logs/$logfile.log done ''' } else { sshCommand remote: remote, command: ''' for deployment in `kubectl -n osm get deployments | grep -v operator | grep -v NAME| awk '{print $1}'`; do echo "Extracting log for $deployment" - kubectl -n osm logs deployments/$deployment --all-containers 2>&1 > logs/$deployment.log + kubectl -n osm logs deployments/$deployment --timestamps=true --all-containers 2>&1 > logs/$deployment.log done ''' sshCommand remote: remote, command: ''' for statefulset in `kubectl -n osm get statefulsets | grep -v operator | grep -v NAME| awk '{print $1}'`; do echo "Extracting log for $statefulset" - kubectl -n osm logs statefulsets/$statefulset --all-containers 2>&1 > logs/$statefulset.log + kubectl -n osm logs statefulsets/$statefulset --timestamps=true --all-containers 2>&1 > logs/$statefulset.log done ''' } @@ -308,9 +308,10 @@ node("${params.NODE}") { println("Launching new VM") output=sh(returnStdout: true, script: """#!/bin/sh -e for line in `grep OS ~/hive/robot-systest.cfg | grep -v OS_CLOUD` ; do export \$line ; done - openstack server create --flavor m1.xlarge \ + openstack server create --flavor osm.sanity \ --image ubuntu18.04 \ --key-name CICD \ + --property build_url="${BUILD_URL}" \ --nic net-id=osm-ext \ ${container_name} """).trim() @@ -386,10 +387,12 @@ node("${params.NODE}") { remote.identityFile = SSH_KEY remote.allowAnyHosts = true remote.logLevel = 'INFO' + remote.pty = true sshCommand remote: remote, command: """ wget https://osm-download.etsi.org/ftp/osm-9.0-nine/install_osm.sh chmod +x ./install_osm.sh + sed -i '1 i\\export PATH=/snap/bin:\${PATH}' ~/.bashrc """ if ( useCharmedInstaller ) { @@ -400,7 +403,6 @@ node("${params.NODE}") { sudo sed -i "s|https://registry-1.docker.io|http://172.21.1.1:5000|" /var/snap/microk8s/current/args/containerd-template.toml sudo systemctl restart snap.microk8s.daemon-containerd.service sudo snap alias microk8s.kubectl kubectl - echo export PATH=/snap/bin:\${PATH} > ~/.bashrc ''' withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'gitlab-registry', @@ -415,9 +417,9 @@ node("${params.NODE}") { --tag ${container_name} """ } - prometheusHostname = "prometheus."+IP_ADDRESS+".xip.io" + prometheusHostname = "prometheus."+IP_ADDRESS+".nip.io" prometheusPort = 80 - osmHostname = "nbi."+IP_ADDRESS+".xip.io:443" + osmHostname = "nbi."+IP_ADDRESS+".nip.io:443" } else { // Run -k8s installer here specifying internal docker registry and docker proxy withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: 'gitlab-registry', @@ -442,11 +444,7 @@ node("${params.NODE}") { stage_archive = false if ( params.DO_SMOKE ) { stage("OSM Health") { - if ( useCharmedInstaller ) { - stackName = "osm" - } else { - stackName = container_name - } + stackName = "osm" sshCommand remote: remote, command: """ /usr/share/osm-devops/installers/osm_health.sh -k -s ${stackName} """ @@ -465,7 +463,7 @@ node("${params.NODE}") { hostfile="${tempdir}/hosts" sh """cat << EOF > ${hostfile} 127.0.0.1 localhost -${remote.host} prometheus.${remote.host}.xip.io nbi.${remote.host}.xip.io +${remote.host} prometheus.${remote.host}.nip.io nbi.${remote.host}.nip.io EOF""" } else { hostfile=null @@ -489,7 +487,7 @@ EOF""" } } } finally { - stage("Archive Contailer Logs") { + stage("Archive Container Logs") { // Archive logs to containers_logs.txt archive_logs(remote) if ( ! currentBuild.result.equals('UNSTABLE') && ! currentBuild.result.equals('FAILURE')) { @@ -521,8 +519,9 @@ EOF""" stage("Snap promotion") { def snaps = ["osmclient"] + sh "snapcraft login --with ~/.snapcraft/config" for (snap in snaps) { - channel="" + channel="latest/" if (BRANCH_NAME.startsWith("v")) { channel=BRANCH_NAME.substring(1)+"/" } else if (BRANCH_NAME!="master") { @@ -530,26 +529,19 @@ EOF""" } track=channel+"edge\\*" edge_rev=sh(returnStdout: true, - script: "sudo docker run -v ~/.snapcraft:/snapcraft -v ${WORKSPACE}:/build " + - "-w /build snapcore/snapcraft:stable /bin/bash -c " + - "\"snapcraft login --with /snapcraft/config &>/dev/null && " + - "snapcraft revisions $snap\" | " + - "grep \" $track\" | tail -1 | awk '{print \$1}'").trim() + script: "snapcraft revisions $snap | " + + "grep \"$track\" | tail -1 | awk '{print \$1}'").trim() + print "edge rev is $edge_rev" track=channel+"beta\\*" beta_rev=sh(returnStdout: true, - script: "sudo docker run -v ~/.snapcraft:/snapcraft -v ${WORKSPACE}:/build " + - "-w /build snapcore/snapcraft:stable /bin/bash -c " + - "\"snapcraft login --with /snapcraft/config &>/dev/null && " + - "snapcraft revisions $snap\" | " + - "grep \" $track\" | tail -1 | awk '{print \$1}'").trim() + script: "snapcraft revisions $snap | " + + "grep \"$track\" | tail -1 | awk '{print \$1}'").trim() + print "beta rev is $beta_rev" if ( edge_rev != beta_rev ) { print "Promoting $edge_rev to beta in place of $beta_rev" beta_track=channel+"beta" - sh("sudo docker run -v ~/.snapcraft:/snapcraft -v ${WORKSPACE}:/build " + - "-w /build snapcore/snapcraft:stable /bin/bash -c " + - "\"snapcraft login --with /snapcraft/config &>/dev/null && " + - "snapcraft release $snap $edge_rev $beta_track\"") + sh "snapcraft release $snap $edge_rev $beta_track" } } }