diff --git a/jjb/pipeline/helm-api-test.groovy b/jjb/pipeline/helm-api-test.groovy
index 7271d7a..e96e566 100644
--- a/jjb/pipeline/helm-api-test.groovy
+++ b/jjb/pipeline/helm-api-test.groovy
@@ -30,9 +30,63 @@
     stage('patch') {
       steps {
         sh """
+           #!/usr/bin/env bash
+           set -eu -o pipefail
+
+           VERSIONFILE="" # file path to file containing version number
+           NEW_VERSION="" # version number found in VERSIONFILE
+           release_version=0
+
+           function read_version {
+             if [ -f "VERSION" ]
+             then
+               NEW_VERSION=\$(head -n1 "VERSION")
+               VERSIONFILE="VERSION"
+             elif [ -f "package.json" ]
+             then
+               NEW_VERSION=\$(python -c 'import json,sys;obj=json.load(sys.stdin); print obj["version"]' < package.json)
+               VERSIONFILE="package.json"
+             else
+               echo "ERROR: No versioning file found!"
+               exit 1
+             fi
+           }
+
+           # check if the version is a released version
+           function check_if_releaseversion {
+             if [[ "\$NEW_VERSION" =~ ^([0-9]+)\\.([0-9]+)\\.([0-9]+)\$ ]]
+             then
+               echo "Version string '\$NEW_VERSION' in '\$VERSIONFILE' is a SemVer released version!"
+               releaseversion=1
+             else
+               echo "Version string '\$NEW_VERSION' in '\$VERSIONFILE' is not a SemVer released version, skipping."
+             fi
+           }
+
            pushd cord
            PROJECT_PATH=\$(xmllint --xpath "string(//project[@name=\\\"${gerritProject}\\\"]/@path)" .repo/manifest.xml)
            repo download "\$PROJECT_PATH" "${gerritChangeNumber}/${gerritPatchsetNumber}"
+
+           pushd \$PROJECT_PATH
+           echo "Existing git tags:"
+           git tag -n
+
+           read_version
+           check_if_releaseversion
+
+           # perform checks if a released version
+           if [ "\$releaseversion" -eq "1" ]
+           then
+             git config --global user.email "apitest@opencord.org"
+             git config --global user.name "API Test"
+
+             git tag -a "\$NEW_VERSION" -m "Tagged for api test on Gerrit patchset: ${gerritChangeNumber}"
+
+             echo "Tags including new tag:"
+             git tag -n
+
+           fi
+           popd
            popd
            """
       }
diff --git a/jjb/pipeline/voltha-atest-provisioning.groovy b/jjb/pipeline/voltha-atest-provisioning.groovy
index ea8d198..bc15b09 100755
--- a/jjb/pipeline/voltha-atest-provisioning.groovy
+++ b/jjb/pipeline/voltha-atest-provisioning.groovy
@@ -9,12 +9,6 @@
 
   stages {
 
-    stage ('Cleanup workspace') {
-        steps {
-        sh 'rm -rf ./build ./component ./incubator ./onos-apps ./orchestration ./test ./.repo'
-        }
-    }
-
     stage('voltha Repo') {
       steps {
         checkout(changelog: false, \
@@ -33,30 +27,26 @@
       }
     }
 
-    stage ('Bring up voltha dev vm') {
-      steps {
-        sh '''
-        pushd $WORKSPACE/cord/incubator/voltha
-        vagrant up voltha
-        popd
-        '''
-        }
-      }
-    stage ('Remove the pre-created venv-linux') {
-      steps {
-        sh 'vagrant ssh -c "rm -rf $WORKSPACE/cord/incubator/voltha/venv-linux"'
-        }
-      }
-
     stage ('Build voltha and onos') {
       steps {
-        sh 'vagrant ssh -c "cd $WORKSPACE/cord/incubator/voltha && source env.sh && make fetch-jenkins && make jenkins && make onos" voltha' }
-        }
+        sh '''
+        cd $WORKSPACE/cord/incubator/voltha
+        source env.sh
+        make fetch
+        make clean
+        make build
+        make onos
+        '''
+      }
+    }
 
     stage ('Start Provisioning Test') {
       steps {
         println 'Start Provisioning Test'
-        sh 'vagrant ssh -c "cd $WORKSPACE/cord/incubator/voltha/tests && pwd" voltha' }
+        println 'Run the following commands when the testing code is in Gerrit'
+        println 'cd tests/atests/'
+        println 'robot -d results -v LOG_DIR:/tmp robot/auto_testing.robot'
       }
     }
+  }
 }
diff --git a/jjb/verify/exampleservice.yaml b/jjb/verify/exampleservice.yaml
index dea147e..fae36e3 100644
--- a/jjb/verify/exampleservice.yaml
+++ b/jjb/verify/exampleservice.yaml
@@ -6,17 +6,33 @@
     project: '{name}'
 
     jobs:
-      - 'verify-exampleservice-jobs':
+      - 'verify-exampleservice-common':
+          branch-regexp: '{supported-branches-regexp}'
+
+      - 'verify-exampleservice-jobs-modern':
+          branch-regexp: '{modern-branches-regexp}'
+
+      - 'verify-exampleservice-jobs-legacy':
           branch-regexp: '{legacy-branches-regexp}'
 
 - job-group:
-    name: 'verify-exampleservice-jobs'
+    name: 'verify-exampleservice-common'
     jobs:
       - 'verify-licensed'
       - 'tag-collision-reject':
           dependency-jobs: 'verify_exampleservice_licensed'
       - 'verify-sonarqube':
           dependency-jobs: 'verify_exampleservice_tag-collision'
+
+- job-group:
+    name: 'verify-exampleservice-jobs-modern'
+    jobs:
+      - 'helm-api-test':
+          dependency-jobs: 'verify_exampleservice_sonarqube'
+
+- job-group:
+    name: 'verify-exampleservice-jobs-legacy'
+    jobs:
       - 'api-test':
           dependency-jobs: 'verify_exampleservice_sonarqube'
           pipeline_script: 'all-xos-api-test.groovy'
diff --git a/packer/provision/basebuild.sh b/packer/provision/basebuild.sh
index cfee70e..b933ec4 100644
--- a/packer/provision/basebuild.sh
+++ b/packer/provision/basebuild.sh
@@ -165,10 +165,19 @@
     rm -f minikube.deb
     popd
 
-    # give sudo permissions on minikube to jenkins user, so `minikube init` can be run
-    cat <<EOF >/etc/sudoers.d/88-jenkins-minikube
+    # install protobufs
+    PROTOC_VERSION="3.3.0"
+    PROTOC_SHA256SUM="feb112bbc11ea4e2f7ef89a359b5e1c04428ba6cfa5ee628c410eccbfe0b64c3"
+    curl -L -o /tmp/protoc-${PROTOC_VERSION}-linux-x86_64.zip https://github.com/google/protobuf/releases/download/v${PROTOC_VERSION}/protoc-${PROTOC_VERSION}-linux-x86_64.zip
+    echo "$PROTOC_SHA256SUM  /tmp/protoc-${PROTOC_VERSION}-linux-x86_64.zip" | sha256sum -c -
+    unzip /tmp/protoc-${PROTOC_VERSION}-linux-x86_64.zip -d protoc3
+    mv /tmp/protoc3/bin/* /usr/local/bin/
+    mv /tmp/protoc3/include/* /usr/local/include/
+    # give sudo permissions on minikube and protoc to jenkins user
+    cat <<EOF >/etc/sudoers.d/88-jenkins-minikube-protoc
+Cmnd_Alias CMDS = /usr/local/bin/protoc, /usr/bin/minikube
 Defaults:jenkins !requiretty
-jenkins ALL=(ALL) NOPASSWD:SETENV: /usr/bin/minikube
+jenkins ALL=(ALL) NOPASSWD:SETENV: CMDS
 EOF
 
     # clean up
