diff --git a/jjb/pipeline/all-xos-api-test-helm.groovy b/jjb/pipeline/all-xos-api-test-helm.groovy
index 6e3d346..4271bad 100644
--- a/jjb/pipeline/all-xos-api-test-helm.groovy
+++ b/jjb/pipeline/all-xos-api-test-helm.groovy
@@ -359,7 +359,7 @@
              SERVICES=\$(docker exec -i \$CORE_CONTAINER /bin/bash -c "cd /opt/xos/dynamic_services/;find -name '*.xproto'" | awk -F[//] '{print \$2}')
              echo \$SERVICES
 
-             for i in \$SERVICES; do bash -c "pybot -d Log -T -v TESTLIBRARY:\$i\$library \$i\$testname"; sleep 2; done || true
+             for i in \$SERVICES; do bash -c "pybot -d Log -T -e ProgranServiceInstance -v TESTLIBRARY:\$i\$library \$i\$testname"; sleep 2; done || true
            fi
 
            popd
diff --git a/jjb/pipeline/chart-api-test-helm.groovy b/jjb/pipeline/chart-api-test-helm.groovy
index aef03f9..e074f35 100644
--- a/jjb/pipeline/chart-api-test-helm.groovy
+++ b/jjb/pipeline/chart-api-test-helm.groovy
@@ -85,13 +85,83 @@
 
            pushd cord/helm-charts
            helm install -f examples/kafka-single.yaml --version 0.8.8 -n cord-kafka incubator/kafka
-           scripts/wait_for_pods.sh
+           ./scripts/wait_for_pods.sh
 
            popd
            '''
       }
     }
 
+    stage('install/test att-workflow') {
+      steps {
+        sh """
+           #!/usr/bin/env bash
+           set -eu -o pipefail
+
+           helm_install_args='-f examples/api-test-values.yaml'
+
+           pushd cord/helm-charts
+
+           helm dep up xos-core
+           helm install \${helm_install_args} xos-core -n xos-core
+
+           helm dep update xos-profiles/att-workflow
+           helm install \${helm_install_args} xos-profiles/att-workflow -n att-workflow
+
+           # wait for services to load
+           PODS_TIMEOUT=900 ./scripts/wait_for_pods.sh
+
+           echo "# Checking helm deployments"
+           kubectl get pods
+
+           for hchart in \$(helm list -q);
+           do
+             echo "## 'helm status' for chart: \${hchart} ##"
+             helm status "\${hchart}"
+           done
+
+           CORE_CONTAINER=\$(docker ps | grep k8s_xos-core | awk '{print \$1}')
+
+           docker cp $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests/targets/xosapitests.xtarget \$CORE_CONTAINER:/opt/xos/lib/xos-genx/xosgenx/targets/xosapitests.xtarget
+           docker cp $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests/targets/xosserviceapitests.xtarget \$CORE_CONTAINER:/opt/xos/lib/xos-genx/xosgenx/targets/xosserviceapitests.xtarget
+           docker cp $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests/targets/xoslibrary.xtarget \$CORE_CONTAINER:/opt/xos/lib/xos-genx/xosgenx/targets/xoslibrary.xtarget
+           docker exec -i \$CORE_CONTAINER /bin/bash -c "xosgenx --target /opt/xos/lib/xos-genx/xosgenx/targets/./xosapitests.xtarget /opt/xos/core/models/core.xproto" > $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests/XOSCoreAPITests.robot
+
+           export testname=_service_api.robot
+           export library=_library.robot
+
+           SERVICES=\$(docker exec -i \$CORE_CONTAINER /bin/bash -c "cd /opt/xos/dynamic_services/;find -name '*.xproto'" | awk -F[//] '{print \$2}')
+           echo \$SERVICES
+
+           for i in \$SERVICES; do bash -c "docker exec -i \$CORE_CONTAINER /bin/bash -c 'xosgenx --target /opt/xos/lib/xos-genx/xosgenx/targets/./xosserviceapitests.xtarget /opt/xos/dynamic_services/\$i/\$i.xproto /opt/xos/core/models/core.xproto'" > $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests/\$i\$testname; done
+
+           for i in \$SERVICES; do bash -c "docker exec -i \$CORE_CONTAINER /bin/bash -c 'xosgenx --target /opt/xos/lib/xos-genx/xosgenx/targets/./xoslibrary.xtarget /opt/xos/dynamic_services/\$i/\$i.xproto /opt/xos/core/models/core.xproto'" > $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests/\$i\$library; done
+
+           CORE_CONTAINER=\$(docker ps | grep k8s_xos-core | awk '{print \$1}')
+           CHAM_CONTAINER=\$(docker ps | grep k8s_xos-chameleon | awk '{print \$1}')
+           XOS_CHAMELEON=\$(docker exec \$CHAM_CONTAINER ip a | grep -oE "([0-9]{1,3}\\.){3}[0-9]{1,3}\\b" | grep 172)
+
+           cd $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Properties/
+           sed -i \"s/^\\(SERVER_IP = \\).*/\\1\'\$XOS_CHAMELEON\'/\" RestApiProperties.py
+           sed -i \"s/^\\(SERVER_PORT = \\).*/\\1\'9101\'/\" RestApiProperties.py
+           sed -i \"s/^\\(XOS_USER = \\).*/\\1\'admin@opencord.org\'/\" RestApiProperties.py
+           sed -i \"s/^\\(XOS_PASSWD = \\).*/\\1\'letmein\'/\" RestApiProperties.py
+           sed -i \"s/^\\(PASSWD = \\).*/\\1\'letmein\'/\" RestApiProperties.py
+
+           cd $WORKSPACE/cord/test/cord-tester/src/test/cord-api/Tests
+           ## Run CORE API Tests
+           pybot -d Log -T XOSCoreAPITests.robot  || true
+           ## Run services API Tests
+           for i in \$SERVICES; do bash -c "pybot -d Log -T -v TESTLIBRARY:\$i\$library \$i\$testname"; sleep 2; done || true
+
+           popd
+
+           helm delete --purge att-workflow
+           helm delete --purge xos-core
+           """
+      }
+    }
+
     stage('install/test rcord-lite') {
       steps {
         sh """
@@ -109,13 +179,10 @@
            helm install \${helm_install_args} xos-profiles/rcord-lite -n rcord-lite
 
            # wait for services to load
-           JOBS_TIMEOUT=900 ./scripts/wait_for_jobs.sh
-	   # adding tmp sleep momentarily
-	   sleep 120
+           PODS_TIMEOUT=900 ./scripts/wait_for_pods.sh
 
            echo "# Checking helm deployments"
            kubectl get pods
-           helm list
 
            for hchart in \$(helm list -q);
            do
@@ -184,11 +251,10 @@
            helm install \${helm_install_args} xos-profiles/mcord -n mcord
 
            # wait for services to load
-           JOBS_TIMEOUT=900 ./scripts/wait_for_jobs.sh
+           PODS_TIMEOUT=900 ./scripts/wait_for_pods.sh
 
            echo "# Checking helm deployments"
            kubectl get pods
-           helm list
 
            for hchart in \$(helm list -q);
            do
@@ -252,11 +318,10 @@
            helm install \${helm_install_args} xos-profiles/demo-simpleexampleservice -n demo-simpleexampleservice
 
            # wait for services to load
-           JOBS_TIMEOUT=900 ./scripts/wait_for_jobs.sh
+           PODS_TIMEOUT=900 ./scripts/wait_for_pods.sh
 
            echo "# Checking helm deployments"
            kubectl get pods
-           helm list
 
            for hchart in \$(helm list -q);
            do
@@ -318,12 +383,10 @@
            helm install \${helm_install_args} xos-services/hippie-oss -n hippie-oss
 
            # wait for services to load
-           JOBS_TIMEOUT=900 ./scripts/wait_for_jobs.sh
-           ## sleeping as hippie-oss doesnt have a tosca-loader
-           sleep 300
+           PODS_TIMEOUT=900 ./scripts/wait_for_pods.sh
+
            echo "# Checking helm deployments"
            kubectl get pods
-           helm list
 
            for hchart in \$(helm list -q);
            do
@@ -366,9 +429,6 @@
          kubectl get pods --all-namespaces
 
          echo "# removing helm deployments"
-         kubectl get pods
-         helm list
-
          for hchart in \$(helm list -q);
          do
            echo "## Purging chart: \${hchart} ##"
