Merge "Excluding un-implemented logging DMI tests"
diff --git a/jjb/cord-test/voltha.yaml b/jjb/cord-test/voltha.yaml
index e228560..3eb9881 100644
--- a/jjb/cord-test/voltha.yaml
+++ b/jjb/cord-test/voltha.yaml
@@ -596,7 +596,38 @@
power-switch: True
pipeline-script: 'voltha-dt-physical-functional-tests.groovy'
- # Berlin pod with olt/onu - voltha-2.5 Default tech profile and timer based job
+ # Berlin pod with olt/onu - voltha-2.6 timer based job , two OLTs
+ - 'build_voltha_pod_release_timer':
+ build-node: 'dt-berlin-community-pod'
+ config-pod: 'dt-berlin-pod-multi-olt'
+ release: '2.6'
+ branch: 'voltha-2.6'
+ name-extension: '_DT'
+ work-flow: 'DT'
+ num-of-openonu: '1'
+ num-of-onos: '3'
+ num-of-atomix: '3'
+ test-repo: 'voltha-system-tests'
+ Jenkinsfile: 'Jenkinsfile-voltha-build'
+ configurePod: true
+ profile: '1T8GEM'
+ time: '13'
+
+
+ # Berlin POD test job - voltha-2.6 versions: two OLTs
+ - 'build_voltha_pod_test':
+ build-node: 'dt-berlin-community-pod'
+ config-pod: 'dt-berlin-pod-multi-olt'
+ release: '2.6'
+ branch: 'voltha-2.6'
+ name-extension: '_DT'
+ work-flow: 'DT'
+ test-repo: 'voltha-system-tests'
+ profile: '1T8GEM'
+ power-switch: True
+ pipeline-script: 'voltha-dt-physical-functional-tests.groovy'
+
+ # Berlin pod with olt/onu - voltha-2.6 Default tech profile and timer based job
- 'build_voltha_pod_release_timer':
build-node: 'dt-berlin-community-pod'
config-pod: 'dt-berlin-pod'
diff --git a/jjb/pipeline/tost-deploy-fluentbit.groovy b/jjb/pipeline/tost-deploy-fluentbit.groovy
deleted file mode 100644
index 2925236..0000000
--- a/jjb/pipeline/tost-deploy-fluentbit.groovy
+++ /dev/null
@@ -1,107 +0,0 @@
-pipeline {
- agent {
- docker {
- image 'ubuntu:18.04'
- args '-u root:sudo'
- }
- }
- environment {
- KUBECONFIG = credentials("${params.k8s_config}")
- rancher_token = credentials("${params.rancher_cli_env}")
- }
- stages {
- stage('Install tools') {
- steps {
- sh '''
- set -x
- apt-get update -y
- apt-get install -y curl wget jq git
-
- # Install kubectl
- curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
-
- # Install rancher
- wget https://github.com/rancher/cli/releases/download/v2.4.5/rancher-linux-amd64-v2.4.5.tar.gz
- tar -xvf rancher-linux-amd64-v2.4.5.tar.gz
- mv rancher-v2.4.5/rancher /usr/local/bin
-
- rm rancher-linux-amd64-v2.4.5.tar.gz
- rm -rf rancher-v2.4.5
- # Test Kubectl & Rancher
- KUBE_CONFIG=$KUBECONFIG kubectl get nodes
- rancher --version
- '''
- }
- }
- stage('Init git') {
- steps {
- withCredentials([sshUserPrivateKey(credentialsId: "aether_jenkins", keyFileVariable: 'keyfile')]) {
-
- sh """#!/bin/bash
- set -x
- mkdir -p ~/.ssh
- ssh-keyscan -t rsa -p 29418 ${git_server} >> ~/.ssh/known_hosts
-cat <<EOF > ~/.ssh/config
-Host ${git_server}
- User ${git_user}
- Hostname ${git_server}
- Port 29418
- IdentityFile ${keyfile}
-EOF
-
- git clone "ssh://${git_server}:29418/${git_repo}"
- if [ ! -z ${config_review} ] && [ ! -z ${config_patchset} ]; then
- CFG_LAST2=\$(echo ${config_review} | tail -c 3)
- git fetch "ssh://@${git_server}:29418/${git_repo}" refs/changes/\${CFG_LAST2}/${config_review}/${config_patchset} && git checkout FETCH_HEAD
- fi
-
- """
- }
- }
- }
-
- stage('Login Rancher') {
- steps {
- sh '''
- rancher login ${rancher_server} --token ${rancher_token} --context ${rancher_context}:${rancher_project}
- '''
- }
- }
- stage('Uninstall Apps') {
- options {
- timeout(time: 90, unit: "SECONDS")
- }
- steps {
- sh '''
- for app in $(rancher apps ls -q | grep -E '(fluentbit)'); do rancher apps delete $app; done
-
- until [ "$(rancher apps ls -q | grep -E '(fluentbit)')" = "" ]; do echo "wait deleted apps"; rancher apps ls ; sleep 1; done
- '''
- }
- }
- stage('Install apps') {
- options {
- timeout(time: 600, unit: "SECONDS")
- }
- steps {
- sh '''
- cd ${workspace}/${git_repo}/deployment-configs/aether/apps/${config_env}/
- until rancher apps install --answers fluentbit-ans.yml --namespace ${fluentbit_ns} cattle-global-data:fluent-fluent-bit fluentbit; do :; done
- apps=$(rancher apps -q | grep fluentbit)
- for app in $apps; do until rancher wait $app --timeout 20; do :; done; rancher apps ls; done
- '''
- }
- }
-
- }
- post {
- always {
- sh """
- rm -rf ${workspace}/${git_repo}
- """
- cleanWs()
- }
- }
-}
diff --git a/jjb/pipeline/tost-deploy-onos.groovy b/jjb/pipeline/tost-deploy-onos.groovy
deleted file mode 100644
index 24a7914..0000000
--- a/jjb/pipeline/tost-deploy-onos.groovy
+++ /dev/null
@@ -1,134 +0,0 @@
-pipeline {
- agent {
- docker {
- image 'ubuntu:18.04'
- args '-u root:sudo'
- }
- }
- environment {
- KUBECONFIG = credentials("${params.k8s_config}")
- onos_password = credentials("${params.onos_password}")
- git_password = credentials("${params.git_password_env}")
- gcp = credentials("${params.gcp_credential}")
- rancher_dev = credentials("${params.rancher_api_env}")
- }
- stages {
- stage('Install tools') {
- steps {
- sh """
- set -x
- apt-get update -y
- apt-get install -y curl wget jq git unzip
-
- # Install yq
- wget https://github.com/mikefarah/yq/releases/download/3.4.0/yq_linux_amd64 -O /usr/bin/yq &&\
- chmod +x /usr/bin/yq
- yq --help
-
- # Install kubectl
- curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
-
- # Install terraform
- wget https://releases.hashicorp.com/terraform/0.13.2/terraform_0.13.2_linux_amd64.zip
- unzip terraform_0.13.2_linux_amd64.zip
- mv terraform /usr/local/bin
- terraform version
- """
- }
- }
- stage('Init Terraform') {
- steps {
- withCredentials([sshUserPrivateKey(credentialsId: "aether_jenkins", keyFileVariable: 'keyfile')]) {
-
- sh """#!/bin/bash
- set -x
- mkdir -p ~/.ssh
- ssh-keyscan -t rsa -p 29418 ${git_server} >> ~/.ssh/known_hosts
-cat <<EOF > ~/.ssh/config
-Host ${git_server}
- User ${git_user}
- Hostname ${git_server}
- Port 29418
- IdentityFile ${keyfile}
-EOF
-
- git clone "ssh://${git_server}:29418/${git_repo}"
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/onos
- if [ ! -z ${config_review} ] && [ ! -z ${config_patchset} ]; then
- CFG_LAST2=\$(echo ${config_review} | tail -c 3)
- git fetch "ssh://${git_server}:29418/${git_repo}" refs/changes/\${CFG_LAST2}/${config_review}/${config_patchset} && git checkout FETCH_HEAD
- cp onos.yaml tmp.yaml
-
-cat <<EOF >> config.yaml
-config:
- review: ${config_review}
- patchset: ${config_patchset}
-EOF
-
- yq merge tmp.yaml config.yaml > onos.yaml
- fi
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform init
- """
- }
- }
- }
-
- stage('Uninstall Apps') {
- options {
- timeout(time: 90, unit: "SECONDS")
- }
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/onos
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform destroy -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var 'project_name=tost' -var-file=app_map.tfvars -auto-approve
- """
- }
- }
- stage('Remove resources') {
- options {
- timeout(time: 300, unit: "SECONDS")
- }
- steps {
- sh """
- pvcs=\$(kubectl -n onos-tost get pvc -lapp=onos-tost-atomix -o name)
- for pv in \${pvcs}; do kubectl -n onos-tost delete \${pv}; done
-
- kubectl -n ${onos_ns} delete secret onos-git-secret || true
- kubectl -n ${onos_ns} delete secret onos-secret || true
- """
- }
- }
- stage('Install apps') {
- options {
- timeout(time: 600, unit: "SECONDS")
- }
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/onos
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform apply -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var 'project_name=tost' -var-file=app_map.tfvars -auto-approve
- """
- }
- }
- stage('Push Secrets') {
- steps {
- sh """
-
- kubectl -n ${onos_ns} create secret generic onos-git-secret --from-literal=username=${git_user} --from-literal=password=${git_password}
- kubectl -n ${onos_ns} create secret generic onos-secret --from-literal=username=${onos_user} --from-literal=password=${onos_password}
- """
- }
- }
-
- }
- post {
- always {
-
- sh """
- rm -rf ${workspace}/${git_repo}
- """
- cleanWs()
- }
- }
-}
diff --git a/jjb/pipeline/tost-deploy-shared.groovy b/jjb/pipeline/tost-deploy-shared.groovy
deleted file mode 100644
index 2869696..0000000
--- a/jjb/pipeline/tost-deploy-shared.groovy
+++ /dev/null
@@ -1,43 +0,0 @@
-pipeline {
- agent {
- docker {
- image 'ubuntu:18.04'
- args '-u root:sudo'
- }
- }
- environment {
- KUBECONFIG = credentials("${params.k8s_config}")
- registry_password = credentials("${params.registry_password_env}")
- }
- stages {
- stage('Install tools') {
- steps {
- sh '''
- set -x
- apt-get update -y
- apt-get install -y curl
-
- # Install kubectl
- curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
-
- # Test Kubectl & Rancher
- kubectl get nodes
- '''
- }
- }
- stage('Perform Terraform') {
- steps {
- sh """
- kubectl -n ${target_namespace} create secret docker-registry aether-registry-credential --docker-server=${registry_server} --docker-username=${registry_user} --docker-password=${registry_password}
- """
- }
- }
- }
- post {
- always {
- cleanWs()
- }
- }
-}
diff --git a/jjb/pipeline/tost-deploy-stratum.groovy b/jjb/pipeline/tost-deploy-stratum.groovy
deleted file mode 100644
index c662f37..0000000
--- a/jjb/pipeline/tost-deploy-stratum.groovy
+++ /dev/null
@@ -1,119 +0,0 @@
-pipeline {
- agent {
- docker {
- image 'ubuntu:18.04'
- args '-u root:sudo'
- }
- }
- environment {
- KUBECONFIG = credentials("${params.k8s_config}")
- gcp = credentials("${params.gcp_credential}")
- git_password = credentials("${params.git_password_env}")
- rancher_dev = credentials("${params.rancher_api_env}")
- }
- stages {
- stage('Install tools') {
- steps {
- sh """
- set -x
- apt-get update -y
- apt-get install -y curl wget jq git unzip
-
- # Install yq
- wget https://github.com/mikefarah/yq/releases/download/3.4.0/yq_linux_amd64 -O /usr/bin/yq &&\
- chmod +x /usr/bin/yq
- yq --help
-
- # Install kubectl
- curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
-
- # Install terraform
- wget https://releases.hashicorp.com/terraform/0.13.2/terraform_0.13.2_linux_amd64.zip
- unzip terraform_0.13.2_linux_amd64.zip
- mv terraform /usr/local/bin
- terraform version
- """
- }
- }
- stage('Init Terraform') {
- steps {
- withCredentials([sshUserPrivateKey(credentialsId: "aether_jenkins", keyFileVariable: 'keyfile')]) {
-
- sh """#!/bin/bash
- set -x
- mkdir -p ~/.ssh
- ssh-keyscan -t rsa -p 29418 ${git_server} >> ~/.ssh/known_hosts
-cat <<EOF >> ~/.ssh/config
-Host ${git_server}
- User ${git_user}
- Hostname ${git_server}
- Port 29418
- IdentityFile ${keyfile}
-EOF
-
- git clone "ssh://${git_server}:29418/${git_repo}"
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/stratum
- if [ ! -z ${config_review} ] && [ ! -z ${config_patchset} ]; then
- CFG_LAST2=\$(echo ${config_review} | tail -c 3)
- git fetch "ssh://${git_server}:29418/${git_repo}" refs/changes/\${CFG_LAST2}/${config_review}/${config_patchset} && git checkout FETCH_HEAD
- cp stratum.yaml tmp.yaml
-
-cat <<EOF >> config.yaml
-config:
- review: ${config_review}
- patchset: ${config_patchset}
-EOF
-
- yq merge tmp.yaml config.yaml > stratum.yaml
- fi
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform init
- """
- }
- }
- }
- stage('Uninstall Apps') {
- options {
- timeout(time: 90, unit: "SECONDS")
- }
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/stratum
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform destroy -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var 'project_name=tost' -var-file=app_map.tfvars -auto-approve
- kubectl -n ${stratum_ns} delete secret stratum-git-secret || true
- """
- }
- }
- stage('Install apps') {
- options {
- timeout(time: 600, unit: "SECONDS")
- }
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/stratum
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform apply -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var 'project_name=tost' -var-file=app_map.tfvars -auto-approve
- """
- }
- }
- stage('Push Secrets') {
- steps {
- sh """
-
- kubectl -n ${stratum_ns} create secret generic stratum-git-secret --from-literal=username=${git_user} --from-literal=password=${git_password}
-
- """
- }
- }
-
- }
- post {
- always {
-
- sh """
- rm -rf ${workspace}/${git_repo}
- """
- cleanWs()
- }
- }
-}
diff --git a/jjb/pipeline/tost-deploy-telegraf.groovy b/jjb/pipeline/tost-deploy-telegraf.groovy
deleted file mode 100644
index ac61496..0000000
--- a/jjb/pipeline/tost-deploy-telegraf.groovy
+++ /dev/null
@@ -1,91 +0,0 @@
-pipeline {
- agent {
- docker {
- image 'ubuntu:18.04'
- args '-u root:sudo'
- }
- }
- environment {
- KUBECONFIG = credentials("${params.k8s_config}")
- gcp = credentials("${params.gcp_credential}")
- rancher_dev = credentials("${params.rancher_api_env}")
- }
- stages {
- stage('Install tools') {
- steps {
- sh """
- set -x
- apt-get update -y
- apt-get install -y curl wget jq git unzip
-
- # Install kubectl
- curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
-
- wget https://releases.hashicorp.com/terraform/0.13.2/terraform_0.13.2_linux_amd64.zip
- unzip terraform_0.13.2_linux_amd64.zip
- mv terraform /usr/local/bin
- terraform version
- """
- }
- }
- stage('Init Terraform') {
- steps {
- withCredentials([sshUserPrivateKey(credentialsId: "aether_jenkins", keyFileVariable: 'keyfile')]) {
- sh """#!/bin/bash
- set -x
- mkdir -p ~/.ssh
- ssh-keyscan -t rsa -p 29418 ${git_server} >> ~/.ssh/known_hosts
-cat <<EOF > ~/.ssh/config
-Host ${git_server}
- User ${git_user}
- Hostname ${git_server}
- Port 29418
- IdentityFile ${keyfile}
-EOF
- git clone "ssh://${git_server}:29418/${git_repo}"
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/telegraf
- if [ ! -z ${config_review} ] && [ ! -z ${config_patchset} ]; then
- CFG_LAST2=\$(echo ${config_review} | tail -c 3)
- git fetch "ssh://@${git_server}:29418/${git_repo}" refs/changes/\${CFG_LAST2}/${config_review}/${config_patchset} && git checkout FETCH_HEAD
- git checkout FETCH_HEAD
- fi
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform init
- """
- }
- }
- }
- stage('Uninstall Apps') {
- options {
- timeout(time: 90, unit: "SECONDS")
- }
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/telegraf
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform destroy -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var 'project_name=tost' -var-file=app_map.tfvars -auto-approve
- """
- }
- }
- stage('Install apps') {
- options {
- timeout(time: 600, unit: "SECONDS")
- }
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost/telegraf
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform apply -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var 'project_name=tost' -var-file=app_map.tfvars -auto-approve
- """
- }
- }
-
- }
- post {
- always {
- sh """
- rm -rf ${workspace}/${git_repo}
- """
- cleanWs()
- }
- }
-}
diff --git a/jjb/pipeline/tost-deploy.groovy b/jjb/pipeline/tost-deploy.groovy
deleted file mode 100644
index 2eba5ad..0000000
--- a/jjb/pipeline/tost-deploy.groovy
+++ /dev/null
@@ -1,163 +0,0 @@
-pipeline {
- agent {
- docker {
- image 'ubuntu:18.04'
- args '-u root:sudo'
- }
- }
- environment {
- KUBECONFIG = credentials("${params.k8s_config}")
- gcp = credentials("${params.gcp_credential}")
- rancher_dev = credentials("${params.rancher_api_env}")
- }
- stages {
- stage('Install tools') {
- steps {
- sh '''
- set -x
- apt-get update -y
- apt-get install -y curl wget jq git unzip
-
- # Install kubectl
- curl -LO "https://storage.googleapis.com/kubernetes-release/release/v1.18.0/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
-
- # Test Kubectl & Rancher
- kubectl get nodes
-
- # Install
- wget https://releases.hashicorp.com/terraform/0.13.2/terraform_0.13.2_linux_amd64.zip
- unzip terraform_0.13.2_linux_amd64.zip
- mv terraform /usr/local/bin
- terraform version
- '''
- }
- }
-
- stage('Init Terraform') {
- steps {
- withCredentials([sshUserPrivateKey(credentialsId: "aether_jenkins", keyFileVariable: 'keyfile')]) {
-
- sh """#!/bin/bash
- set -x
- mkdir -p ~/.ssh
- ssh-keyscan -t rsa -p 29418 ${git_server} >> ~/.ssh/known_hosts
-cat <<EOF > ~/.ssh/config
-Host ${git_server}
- User ${git_user}
- Hostname ${git_server}
- Port 29418
- IdentityFile ${keyfile}
-EOF
-
- git clone "ssh://${git_server}:29418/${git_repo}"
- cd ${workspace}/${git_repo}/${terraform_dir}/tost
- if [ ! -z ${config_review} ] && [ ! -z ${config_patchset} ]; then
- CFG_LAST2=\$(echo ${config_review} | tail -c 3)
- git fetch "ssh://${git_server}:29418/${git_repo}" refs/changes/\${CFG_LAST2}/${config_review}/${config_patchset} && git checkout FETCH_HEAD
- fi
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform init
-
- """
- }
- }
- }
- stage('Perform Terraform') {
- steps {
- sh """
- cd ${workspace}/${git_repo}/${terraform_dir}/tost
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform destroy -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var-file=app_map.tfvars -auto-approve
- GOOGLE_BACKEND_CREDENTIALS=${gcp} terraform apply -var-file=${rancher_dev} -var 'cluster_name=${rancher_cluster}' -var-file=app_map.tfvars -auto-approve
-
- """
- }
- }
-
- stage('Install shared resources') {
- steps {
- sh(script: "date -u")
- build(job: "${params.job_name}-shared")
- }
- }
- stage('Parallel Stage') {
- parallel {
- stage('onos') {
- steps {
- sh(script: "date -u")
- build(job: "${params.job_name}-onos")
- }
- }
- stage('stratum') {
- steps {
- sh(script: "date -u")
- build(job: "${params.job_name}-stratum")
- }
- }
- stage('telegraf') {
- steps {
- sh(script: "date -u")
- build(job: "${params.job_name}-telegraf")
- }
- }
- }
- }
- stage('E2E Testing') {
- options {
- timeout(time: 120, unit: "SECONDS")
- }
- steps {
- sh """
- echo ${params.target_server}
- timestamp=\$(date +%s)
- if [ ! -z "${params.target_server}" ]; then
- kubectl delete --wait=true ds -l test=e2e || true
-cat <<EOF > test.yaml
-apiVersion: apps/v1
-kind: DaemonSet
-metadata:
- name: ping-test-\${timestamp}
- labels:
- test: e2e-\${timestamp}
-spec:
- selector:
- matchLabels:
- test: e2e-\${timestamp}
- template:
- metadata:
- labels:
- test: e2e-\${timestamp}
- spec:
- hostNetwork: true
- terminationGracePeriodSeconds: 5
- initContainers:
- - name: ping-test
- image: alpine:3.12.0
- command: ["sh", "-c", "until ping ${params.target_server} -c1 -W 4; do echo 'ping retry'; sleep 3; done;"]
- containers:
- - name: ping-test-wait
- image: alpine:3.12.0
- command: ["sh", "-c", "sleep 100000"]
- restartPolicy: Always
-EOF
- kubectl apply -f test.yaml
- number=\$(kubectl get --no-headers ds -ltest=e2e-\${timestamp} -o custom-columns=':.status.desiredNumberScheduled')
- echo "\${number}"
- until [ \${number} -eq \$(kubectl get pods -l test=e2e-\${timestamp} --no-headers -o custom-columns=':.status.phase' | grep Running | wc -l) ]; do echo 'wait ping completed'; sleep 5; done;
- fi
- """
- }
- }
- }
- post {
- always {
- sh """
- if [ ! -z "${params.target_server}" ]; then
- kubectl delete -f test.yaml
- fi
- rm -rf ${workspace}/${git_repo}
- """
- cleanWs()
- }
- }
-}
diff --git a/jjb/pipeline/voltha-bbsim-tests.groovy b/jjb/pipeline/voltha-bbsim-tests.groovy
index ebe638e..0dc01af 100644
--- a/jjb/pipeline/voltha-bbsim-tests.groovy
+++ b/jjb/pipeline/voltha-bbsim-tests.groovy
@@ -33,7 +33,7 @@
NAME="test"
VOLTCONFIG="$HOME/.volt/config-$NAME"
KUBECONFIG="$HOME/.kube/kind-config-voltha-$NAME"
- EXTRA_HELM_FLAGS=" --set defaults.image_registry=https://mirror.registry.opennetworking.org "
+ EXTRA_HELM_FLAGS=" --set defaults.image_registry=mirror.registry.opennetworking.org/ "
}
stages {
@@ -151,7 +151,7 @@
steps {
sh """
make-local () {
- make -C $WORKSPACE/\$1 DOCKER_REPOSITORY=voltha/ DOCKER_TAG=citest docker-build
+ make -C $WORKSPACE/\$1 DOCKER_REGISTRY=mirror.registry.opennetworking.org/ DOCKER_REPOSITORY=voltha/ DOCKER_TAG=citest docker-build
}
if [ "${gerritProject}" = "pyvoltha" ]; then
make -C $WORKSPACE/pyvoltha/ dist
@@ -195,7 +195,7 @@
export GOROOT=/usr/local/go
export GOPATH=\$(pwd)
docker images | grep citest
- for image in \$(docker images -f "reference=*/*citest" --format "{{.Repository}}"); do echo "Pushing \$image to nodes"; kind load docker-image \$image:citest --name voltha-\$NAME --nodes voltha-\$NAME-worker,voltha-\$NAME-worker2; done
+ for image in \$(docker images -f "reference=*/*/*citest" --format "{{.Repository}}"); do echo "Pushing \$image to nodes"; kind load docker-image \$image:citest --name voltha-\$NAME --nodes voltha-\$NAME-worker,voltha-\$NAME-worker2; done
fi
'''
}
@@ -451,6 +451,12 @@
post {
always {
sh '''
+
+ # get pods information
+ kubectl get pods -o wide
+ kubectl get pods --all-namespaces -o jsonpath="{range .items[*].status.containerStatuses[*]}{.image}{'\\n'}"
+ helm ls
+
set +e
cp $WORKSPACE/kind-voltha/install-$NAME.log $WORKSPACE/
@@ -472,14 +478,15 @@
echo
}
- extract_errors_go voltha-rw-core > $WORKSPACE/error-report.log
- extract_errors_go adapter-open-olt >> $WORKSPACE/error-report.log
- extract_errors_python adapter-open-onu >> $WORKSPACE/error-report.log
- extract_errors_python voltha-ofagent >> $WORKSPACE/error-report.log
+ extract_errors_go voltha-rw-core > $WORKSPACE/error-report.log || true
+ extract_errors_go adapter-open-olt >> $WORKSPACE/error-report.log || true
+ extract_errors_python adapter-open-onu >> $WORKSPACE/error-report.log || true
+ extract_errors_python voltha-ofagent >> $WORKSPACE/error-report.log || true
- gzip $WORKSPACE/att/onos-voltha-combined.log
- gzip $WORKSPACE/dt/onos-voltha-combined.log
- gzip $WORKSPACE/tt/onos-voltha-combined.log
+ gzip $WORKSPACE/att/onos-voltha-combined.log || true
+ gzip $WORKSPACE/dt/onos-voltha-combined.log || true
+ gzip $WORKSPACE/tt/onos-voltha-combined.log || true
+
'''
step([$class: 'RobotPublisher',
disableArchiveOutput: false,
diff --git a/jjb/pipeline/voltha-nightly-tests-bbsim.groovy b/jjb/pipeline/voltha-nightly-tests-bbsim.groovy
index 2017c89..d3c3f13 100644
--- a/jjb/pipeline/voltha-nightly-tests-bbsim.groovy
+++ b/jjb/pipeline/voltha-nightly-tests-bbsim.groovy
@@ -98,7 +98,7 @@
echo "on master, using default settings for kind-voltha"
fi
- EXTRA_HELM_FLAGS+="--set log_agent.enabled=False ${params.extraHelmFlags}"
+ EXTRA_HELM_FLAGS+="--set log_agent.enabled=False ${params.extraHelmFlags} defaults.image_registry=mirror.registry.opennetworking.org/ "
cd $WORKSPACE/kind-voltha/
./voltha up
@@ -158,6 +158,21 @@
'''
}
}
+ stage('Multiple OLT Tests') {
+ environment {
+ ROBOT_LOGS_DIR="$WORKSPACE/RobotLogs/MultipleOLTTests"
+ }
+ steps {
+ sh '''
+ if [ "${olts}" -gt 1 ]; then
+ set +e
+ mkdir -p $WORKSPACE/RobotLogs
+ export ROBOT_MISC_ARGS="-d $ROBOT_LOGS_DIR"
+ make -C $WORKSPACE/voltha-system-tests ${makeMultiOltTarget} || true
+ fi
+ '''
+ }
+ }
stage('Error Tests') {
environment {
diff --git a/jjb/pipeline/voltha-openonu-go-tests.groovy b/jjb/pipeline/voltha-openonu-go-tests.groovy
index f2ec4b0..b806309 100755
--- a/jjb/pipeline/voltha-openonu-go-tests.groovy
+++ b/jjb/pipeline/voltha-openonu-go-tests.groovy
@@ -39,7 +39,7 @@
CONFIG_SADIS="external"
BBSIM_CFG="configs/bbsim-sadis-att.yaml"
ROBOT_MISC_ARGS="-d $WORKSPACE/RobotLogs"
- EXTRA_HELM_FLAGS=" --set defaults.image_registry=https://mirror.registry.opennetworking.org "
+ EXTRA_HELM_FLAGS=" --set defaults.image_registry=mirror.registry.opennetworking.org/ "
}
stages {
stage('Clone kind-voltha') {
@@ -147,7 +147,7 @@
stage('Build Images') {
steps {
sh """
- make -C $WORKSPACE/voltha-openonu-adapter-go DOCKER_REPOSITORY=voltha/ DOCKER_TAG=citest docker-build
+ make -C $WORKSPACE/voltha-openonu-adapter-go DOCKER_REGISTRY=mirror.registry.opennetworking.org/ DOCKER_REPOSITORY=voltha/ DOCKER_TAG=citest docker-build
"""
}
}
@@ -156,7 +156,7 @@
steps {
sh '''
docker images | grep citest
- for image in \$(docker images -f "reference=*/*citest" --format "{{.Repository}}"); do echo "Pushing \$image to nodes"; kind load docker-image \$image:citest --name voltha-\$NAME --nodes voltha-\$NAME-worker,voltha-\$NAME-worker2; done
+ for image in \$(docker images -f "reference=*/*/*citest" --format "{{.Repository}}"); do echo "Pushing \$image to nodes"; kind load docker-image \$image:citest --name voltha-\$NAME --nodes voltha-\$NAME-worker,voltha-\$NAME-worker2; done
'''
}
}
@@ -482,8 +482,10 @@
always {
sh '''
set +e
- kubectl get pods --all-namespaces -o jsonpath="{range .items[*].status.containerStatuses[*]}{.image}{'\\n'}" | sort | uniq
- kubectl get pods --all-namespaces -o jsonpath="{range .items[*].status.containerStatuses[*]}{.imageID}{'\\n'}" | sort | uniq
+ # get pods information
+ kubectl get pods -o wide
+ kubectl get pods --all-namespaces -o jsonpath="{range .items[*].status.containerStatuses[*]}{.image}{'\\n'}"
+ helm ls
sync
pkill kail || true
@@ -504,24 +506,12 @@
echo
}
- extract_errors_go voltha-rw-core > $WORKSPACE/error-report.log
- extract_errors_go adapter-open-olt >> $WORKSPACE/error-report.log
- extract_errors_python adapter-open-onu >> $WORKSPACE/error-report.log
- extract_errors_python voltha-ofagent >> $WORKSPACE/error-report.log
+ extract_errors_go voltha-rw-core > $WORKSPACE/error-report.log || true
+ extract_errors_go adapter-open-olt >> $WORKSPACE/error-report.log || true
+ extract_errors_python adapter-open-onu >> $WORKSPACE/error-report.log || true
+ extract_errors_python voltha-ofagent >> $WORKSPACE/error-report.log || true
- gzip $WORKSPACE/onos-voltha-combined.log
-
-
- ## shut down kind-voltha
- if [ "${branch}" != "master" ]; then
- echo "on branch: ${branch}, sourcing kind-voltha/releases/${branch}"
- source "$WORKSPACE/kind-voltha/releases/${branch}"
- else
- echo "on master, using default settings for kind-voltha"
- fi
-
- cd $WORKSPACE/kind-voltha
- WAIT_ON_DOWN=y ./voltha down
+ gzip $WORKSPACE/onos-voltha-combined.log || true
'''
step([$class: 'RobotPublisher',
disableArchiveOutput: false,
diff --git a/jjb/pipeline/voltha-scale-multi-stack.groovy b/jjb/pipeline/voltha-scale-multi-stack.groovy
index 6f053c7..22b1549 100644
--- a/jjb/pipeline/voltha-scale-multi-stack.groovy
+++ b/jjb/pipeline/voltha-scale-multi-stack.groovy
@@ -62,7 +62,7 @@
ONOS_CLASSIC_CHART="${onosChart}"
RADIUS_CHART="${radiusChart}"
- APPS_TO_LOG="etcd kafka onos-onos-classic adapter-open-onu adapter-open-olt rw-core ofagent bbsim radius"
+ APPS_TO_LOG="etcd kafka onos-onos-classic adapter-open-onu adapter-open-olt rw-core ofagent bbsim radius bbsim-sadis-server"
LOG_FOLDER="$WORKSPACE/logs"
GERRIT_PROJECT="${GERRIT_PROJECT}"
diff --git a/jjb/pipeline/voltha-scale-test-etcd-kafka-bitnami.groovy b/jjb/pipeline/voltha-scale-test-etcd-kafka-bitnami.groovy
index e605443..5327012 100644
--- a/jjb/pipeline/voltha-scale-test-etcd-kafka-bitnami.groovy
+++ b/jjb/pipeline/voltha-scale-test-etcd-kafka-bitnami.groovy
@@ -65,7 +65,7 @@
ONOS_CLASSIC_CHART="${onosChart}"
RADIUS_CHART="${radiusChart}"
- APPS_TO_LOG="etcd kafka onos-onos-classic adapter-open-onu adapter-open-olt rw-core ofagent bbsim radius"
+ APPS_TO_LOG="etcd kafka onos-onos-classic adapter-open-onu adapter-open-olt rw-core ofagent bbsim radius bbsim-sadis-server"
LOG_FOLDER="$WORKSPACE/logs"
GERRIT_PROJECT="${GERRIT_PROJECT}"
diff --git a/jjb/pipeline/voltha-scale-test.groovy b/jjb/pipeline/voltha-scale-test.groovy
index 76fa65a..4dc58ae 100644
--- a/jjb/pipeline/voltha-scale-test.groovy
+++ b/jjb/pipeline/voltha-scale-test.groovy
@@ -65,7 +65,7 @@
ONOS_CLASSIC_CHART="${onosChart}"
RADIUS_CHART="${radiusChart}"
- APPS_TO_LOG="etcd kafka onos-onos-classic adapter-open-onu adapter-open-olt rw-core ofagent bbsim radius"
+ APPS_TO_LOG="etcd kafka onos-onos-classic adapter-open-onu adapter-open-olt rw-core ofagent bbsim radius bbsim-sadis-server"
LOG_FOLDER="$WORKSPACE/logs"
GERRIT_PROJECT="${GERRIT_PROJECT}"
diff --git a/jjb/tost.yaml b/jjb/tost.yaml
deleted file mode 100644
index 76125a0..0000000
--- a/jjb/tost.yaml
+++ /dev/null
@@ -1,373 +0,0 @@
-- project:
- name: deploy-menlo-tost-dev
- rancher_cluster: "tost-dev"
- k8s_config: "tost-dev-k8s"
- config_env: "menlo-tost-dev"
- terraform_dir: "developing/ace-menlo"
- #remove after migrating to terraform
- rancher_context: "c-lggdr"
- rancher_project: "p-npzjd"
- rancher_server: "https://testing.aether.onlab.us/"
- rancher_cli_api: "rancher_dev_token"
- jobs:
- - "deploy"
- - "deploy-shared"
- - "deploy-onos"
- - "deploy-stratum"
- - "deploy-telegraf"
- - "deploy-fluentbit"
-
-- project:
- name: deploy-menlo-production
- rancher_cluster: "production-edge-onf-menlo"
- k8s_config: "tost-prod-k8s"
- config_env: "menlo-prd"
- terraform_dir: "production/ace-menlo"
- rancher_api: "rancher_prod_terraform"
- #remove after migrating to terraform
- rancher_context: "c-5cfd8"
- rancher_project: "p-htfwq"
- rancher_server: "https://aether.onlab.us/"
- rancher_cli_api: "rancher_prod_token"
- scm_type: "prod-scm"
- jobs:
- - "deploy"
- - "deploy-onos"
- - "deploy-shared"
- - "deploy-stratum"
- - "deploy-telegraf"
- - "deploy-fluentbit"
-
-- job-template:
- name: "{name}-onos"
- id: "deploy-onos"
- rancher_api: "Rancher_Dev_Terraform"
- git_server: "gerrit.opencord.org"
- git_user: "aether_jenkins"
- git_repo: "aether-pod-configs"
- gcp_credential: "gcp_bucket_terraform"
- project-type: pipeline
- disabled: true
- pipeline-script: "tost-deploy-onos.groovy"
- dsl: !include-raw-escape: pipeline/{pipeline-script}
- logrotate:
- daysToKeep: 7
- numToKeep: 10
- artifactDaysToKeep: 7
- artifactNumToKeep: 10
- parameters:
- - string:
- name: gcp_credential
- default: "{gcp_credential}"
- - string:
- name: rancher_cluster
- default: "{rancher_cluster}"
- - string:
- name: rancher_api_env
- default: "{rancher_api}"
- - string:
- name: git_repo
- default: "{git_repo}"
- - string:
- name: git_server
- default: "{git_server}"
- - string:
- name: git_user
- default: "{git_user}"
- - string:
- name: git_password_env
- default: "gerrit_password"
- - string:
- name: terraform_dir
- default: "{terraform_dir}"
- - string:
- name: onos_catalog_name
- default: "onos"
- - string:
- name: onos_ns
- default: "tost"
- - string:
- name: onos_user
- default: "onos"
- - string:
- name: onos_password
- default: "onos_password"
- - string:
- name: config_review
- - string:
- name: config_patchset
- - string:
- name: config_env
- default: "{config_env}"
- - string:
- name: k8s_config
- default: "{k8s_config}"
-
-- job-template:
- name: "{name}-stratum"
- id: "deploy-stratum"
- rancher_api: "Rancher_Dev_Terraform"
- git_server: "gerrit.opencord.org"
- git_user: "aether_jenkins"
- git_repo: "aether-pod-configs"
- gcp_credential: "gcp_bucket_terraform"
- project-type: pipeline
- disabled: true
- pipeline-script: "tost-deploy-stratum.groovy"
- dsl: !include-raw-escape: pipeline/{pipeline-script}
- logrotate:
- daysToKeep: 7
- numToKeep: 10
- artifactDaysToKeep: 7
- artifactNumToKeep: 10
- parameters:
- - string:
- name: gcp_credential
- default: "{gcp_credential}"
- - string:
- name: rancher_cluster
- default: "{rancher_cluster}"
- - string:
- name: rancher_api_env
- default: "{rancher_api}"
- - string:
- name: git_repo
- default: "{git_repo}"
- - string:
- name: git_server
- default: "{git_server}"
- - string:
- name: git_user
- default: "{git_user}"
- - string:
- name: git_password_env
- default: "gerrit_password"
- - string:
- name: terraform_dir
- default: "{terraform_dir}"
- - string:
- name: stratum_ns
- default: "tost"
- - string:
- name: stratum_catalog_name
- default: "stratum"
- - string:
- name: config_review
- - string:
- name: config_patchset
- - string:
- name: config_env
- default: "{config_env}"
- - string:
- name: k8s_config
- default: "{k8s_config}"
-
-- job-template:
- name: "{name}-telegraf"
- id: "deploy-telegraf"
- rancher_api: "Rancher_Dev_Terraform"
- git_server: "gerrit.opencord.org"
- git_user: "aether_jenkins"
- git_repo: "aether-pod-configs"
- gcp_credential: "gcp_bucket_terraform"
- project-type: pipeline
- disabled: true
- pipeline-script: "tost-deploy-telegraf.groovy"
- dsl: !include-raw-escape: pipeline/{pipeline-script}
- logrotate:
- daysToKeep: 7
- numToKeep: 10
- artifactDaysToKeep: 7
- artifactNumToKeep: 10
- parameters:
- - string:
- name: gcp_credential
- default: "{gcp_credential}"
- - string:
- name: rancher_cluster
- default: "{rancher_cluster}"
- - string:
- name: rancher_api_env
- default: "{rancher_api}"
- - string:
- name: git_repo
- default: "{git_repo}"
- - string:
- name: git_server
- default: "{git_server}"
- - string:
- name: git_user
- default: "{git_user}"
- - string:
- name: terraform_dir
- default: "{terraform_dir}"
- - string:
- name: telegraf_ns
- default: "tost"
- - string:
- name: config_review
- - string:
- name: config_patchset
- - string:
- name: config_env
- default: "{config_env}"
- - string:
- name: k8s_config
- default: "{k8s_config}"
-
-- job-template:
- name: "{name}-fluentbit"
- id: "deploy-fluentbit"
- # Remove after migrating to Terraform
- rancher_cli_api: "rancher_dev_token"
- # End of parametes
- rancher_api: "Rancher_Dev_Terraform"
- git_server: "gerrit.opencord.org"
- git_user: "aether_jenkins"
- git_repo: "aether-pod-configs"
- gcp_credential: "gcp_bucket_terraform"
- project-type: pipeline
- disabled: true
- pipeline-script: "tost-deploy-fluentbit.groovy"
- dsl: !include-raw-escape: pipeline/{pipeline-script}
- logrotate:
- daysToKeep: 7
- numToKeep: 10
- artifactDaysToKeep: 7
- artifactNumToKeep: 10
- parameters:
- # Remove after migrating to Terraform
- - string:
- name: rancher_cli_env
- default: "{rancher_cli_api}"
- - string:
- name: rancher_server
- default: "{rancher_server}"
- - string:
- name: rancher_context
- default: "{rancher_context}"
- - string:
- name: rancher_project
- default: "{rancher_project}"
- # End of parametes
- - string:
- name: gcp_credential
- default: "{gcp_credential}"
- - string:
- name: rancher_cluster
- default: "{rancher_cluster}"
- - string:
- name: rancher_api_env
- default: "{rancher_api}"
- - string:
- name: git_repo
- default: "{git_repo}"
- - string:
- name: git_server
- default: "{git_server}"
- - string:
- name: git_user
- default: "{git_user}"
- - string:
- name: terraform_dir
- default: "{terraform_dir}"
- - string:
- name: fluentbit_ns
- default: "logging"
- - string:
- name: config_review
- - string:
- name: config_patchset
- - string:
- name: config_env
- default: "{config_env}"
- - string:
- name: k8s_config
- default: "{k8s_config}"
-
-- job-template:
- name: "{name}"
- id: "deploy"
- git_server: "gerrit.opencord.org"
- git_user: "aether_jenkins"
- git_repo: "aether-pod-configs"
- rancher_api: "Rancher_Dev_Terraform"
- gcp_credential: "gcp_bucket_terraform"
- project-type: pipeline
- disabled: true
- pipeline-script: "tost-deploy.groovy"
- dsl: !include-raw-escape: pipeline/{pipeline-script}
- logrotate:
- daysToKeep: 7
- numToKeep: 10
- artifactDaysToKeep: 7
- artifactNumToKeep: 10
- parameters:
- - string:
- name: job_name
- default: "{name}"
- - string:
- name: gcp_credential
- default: "{gcp_credential}"
- - string:
- name: target_server
- - string:
- name: k8s_config
- default: "{k8s_config}"
- - string:
- name: rancher_api_env
- default: "{rancher_api}"
- - string:
- name: git_repo
- default: "{git_repo}"
- - string:
- name: git_server
- default: "{git_server}"
- - string:
- name: git_user
- default: "{git_user}"
- - string:
- name: rancher_cluster
- default: "{rancher_cluster}"
- - string:
- name: terraform_dir
- default: "{terraform_dir}"
- - string:
- name: config_review
- - string:
- name: config_patchset
-
-- job-template:
- name: "{name}-shared"
- id: "deploy-shared"
- registry_server: "registry.aetherproject.org"
- registry_user: "admin"
- target_namespace: "tost"
- project-type: pipeline
- disabled: true
- pipeline-script: "tost-deploy-shared.groovy"
- dsl: !include-raw-escape: pipeline/{pipeline-script}
- logrotate:
- daysToKeep: 7
- numToKeep: 10
- artifactDaysToKeep: 7
- artifactNumToKeep: 10
- parameters:
- - string:
- name: job_name
- default: "{name}"
- - string:
- name: registry_server
- default: "{registry_server}"
- - string:
- name: registry_user
- default: "{registry_user}"
- - string:
- name: registry_password_env
- default: "aether_registry_password"
- - string:
- name: target_namespace
- default: "{target_namespace}"
- - string:
- name: k8s_config
- default: "{k8s_config}"
diff --git a/jjb/voltha-scale.yaml b/jjb/voltha-scale.yaml
index 80ff492..aa71574 100644
--- a/jjb/voltha-scale.yaml
+++ b/jjb/voltha-scale.yaml
@@ -100,8 +100,6 @@
withEapol: false
withDhcp: false
withIgmp: false
- extraHelmFlags: '--set use_openonu_adapter_go=true'
- openonuAdapterReplicas: 1
# jobs for 512 ONUs with a 8 openonu-adapters and clustered ONOS (1 OLT)
@@ -198,7 +196,6 @@
withEapol: false
withDhcp: true
withIgmp: true
- openonuAdapterReplicas: 1
onosReplicas: 3
atomixReplicas: 3
extraHelmFlags: '--set authRetry=true,dhcpRetry=true'
@@ -222,8 +219,6 @@
withEapol: true
withDhcp: true
withIgmp: false
- extraHelmFlags: '--set use_openonu_adapter_go=true'
- openonuAdapterReplicas: 1
- 'voltha-scale-measurements':
name: 'voltha-scale-measurements-master-10-stacks-2-16-32-dt-subscribers'
@@ -243,8 +238,6 @@
withEapol: false
withDhcp: false
withIgmp: false
- extraHelmFlags: '--set use_openonu_adapter_go=true'
- openonuAdapterReplicas: 1
- 'voltha-scale-measurements':
name: 'voltha-scale-measurements-master-10-stacks-2-16-32-tt-subscribers'
@@ -264,8 +257,6 @@
withEapol: false
withDhcp: true
withIgmp: true
- extraHelmFlags: '--set use_openonu_adapter_go=true'
- openonuAdapterReplicas: 1
# voltha-2.6 Jobs
- 'voltha-scale-measurements':
@@ -282,7 +273,6 @@
withDhcp: true
withIgmp: false
extraHelmFlags: '--set defaults.rw_core.timeout=30s '
- openonuAdapterReplicas: 8
release: voltha-2.6
bbsimImg: ''
rwCoreImg: ''
@@ -306,7 +296,6 @@
withDhcp: false
withIgmp: false
extraHelmFlags: '--set defaults.rw_core.timeout=30s '
- openonuAdapterReplicas: 8
release: voltha-2.6
bbsimImg: ''
rwCoreImg: ''
@@ -330,7 +319,6 @@
withDhcp: true
withIgmp: true
extraHelmFlags: '--set defaults.rw_core.timeout=30s '
- openonuAdapterReplicas: 8
release: voltha-2.6
bbsimImg: ''
rwCoreImg: ''
@@ -403,7 +391,6 @@
atomixReplicas: 3
kafkaReplicas: 3
etcdReplicas: 3
- openonuAdapterReplicas: 1
topologies: 1-16-16, 1-16-32, 2-16-32
time-trigger: H 0 * * *