Merge "adding xos-service repos to verify-* jobs"
diff --git a/jjb/cord-test/cord-test-pipeline.yaml b/jjb/cord-test/cord-test-pipeline.yaml
index bde2bf8..73e36a6 100644
--- a/jjb/cord-test/cord-test-pipeline.yaml
+++ b/jjb/cord-test/cord-test-pipeline.yaml
@@ -1,5 +1,5 @@
 ---
-# CORD Test Pipeline jobs
+# POD Nightly Build Pipeline Jobs
 
 - test-pipe-job-boiler-plate: &test-pipe-job-boiler-plate
     name: test-pipe-job-boiler-plate
@@ -26,100 +26,6 @@
     version:
       - 'master'
 
-- job-type-plate: &job-type-plate
-    name: job-type-plate
-    type:
-      - 'verify-api-tests'
-
-- job-repo-plate: &job-repo-plate
-    name: job-repo-plate
-    repo:
-      - 'xos'
-      - 'cord'
-      - 'platform-install'
-      - 'rcord'
-      - 'vrouter'
-      - 'vsg'
-      - 'vtn'
-      - 'vtr'
-      - 'fabric'
-      - 'openstack'
-      - 'chameleon'
-      - 'exampleservice'
-      - 'onos-service'
-      - 'olt-service'
-      - 'cord-tester'
-      - 'vEE'
-      - 'vEG'
-      - 'mcord'
-      - 'vspgwu'
-      - 'venb'
-      - 'vspgwc'
-      - 'vEPC'
-      - 'vMME'
-      - 'vHSS'
-
-- job-template:
-
-    name: 'verify-{repo}-{type}-pipeline-{version}'
-    description: |
-                  <!-- Managed by Jenkins Job Builder -->
-                  This pipeline contains the test results and logs of {type} on CORD {version}. <br /><br />
-                  Created by Kailash Khalasi - kailash@opennetworking.org<br />
-                  Copyright (c) 2017 Open Networking Foundation (ONF)
-
-    <<: *test-pipe-job-boiler-plate
-
-    parameters:
-
-      - string:
-         name: GERRIT_CHANGE_NUMBER
-         default: '2831'
-         description: 'This parameter is required to manually build this pipeline job'
-
-      - string:
-         name: GERRIT_PATCHSET_NUMBER
-         default: '1'
-         description: 'This parameter is required to manually build this pipeline job'
-
-
-      - string:
-         name: RECEIPIENT
-         default: 'kailash@opennetworking.org, you@opennetworking.org, suchitra@opennetworking.org'
-         description: ''
-
-      - lf-infra-parameters:
-         project: 'CordTest'
-         branch: 'master'
-         stream: 'master'
-         lftools-version: '<1.0.0'
-
-    concurrent: true
-
-    triggers:
-      - gerrit:
-         server-name: '{gerrit-server-name}'
-         trigger-on:
-           - patchset-created-event:
-               exclude-drafts: false
-               exclude-trivial-rebase: false
-               exclude-no-code-change: false
-           - draft-published-event
-         projects:
-           - project-compare-type: PLAIN
-             project-pattern: '{repo}'
-             branches:
-               - branch-compare-type: ANT
-                 branch-pattern: 'master'
-
-    pipeline-scm:
-      script-path: '{jenkins-path}/{type}-JenkinsFile'
-      scm:
-        - git:
-           url: '{gitURL}'
-           branches:
-             - 'master'
-
 - job-template:
     name: 'automated-nightly-build-qct4-cord-master'
     description: |
@@ -131,7 +37,6 @@
     <<: *test-pipe-job-boiler-plate
 
     parameters:
-
       - string:
          name: devNodeName
          default: 'qct-cord-pod4'
@@ -171,29 +76,13 @@
                 H 21 * * *
 
     pipeline-scm:
-      script-path: 'build/Jenkinsfile'
+      script-path: 'Jenkinsfile'
       scm:
         - git:
            url: 'https://gerrit.opencord.org/cord'
            branches:
              - 'master'
 
-- project:
-    name: build-pipeline
-
-    <<: *job-type-plate
-
-    project-name: '{type}-pipeline'
-
-    build-timeout: '60'
-    build-node: 'ubuntu16.04-basebuild-1c-2g'
-
-    <<: *test-pipe-init-procedure-plate
-    <<: *job-version-plate
-    <<: *job-repo-plate
-
-    jobs:
-      - 'verify-{repo}-{type}-pipeline-{version}'
 
 - project:
     name: nightly-build-pipeline
diff --git a/packer/provision/basebuild.sh b/packer/provision/basebuild.sh
index ff12b60..76a0204 100644
--- a/packer/provision/basebuild.sh
+++ b/packer/provision/basebuild.sh
@@ -77,13 +77,15 @@
         gitpython \
         graphviz \
         isort \
+        linkchecker \
         pexpect \
         pylint \
         pyyaml \
         robotframework \
         robotframework-httplibrary \
         robotframework-requests \
-        robotframework-sshlibrary
+        robotframework-sshlibrary \
+        virtualenv
         # end of pip install list
 
     # install npm modules
@@ -93,6 +95,10 @@
         typings
         # end of npm install list
 
+    # ubuntu 16.04 installs the node binary as /usr/bin/nodejs, which breaks
+    # tools that expect it to be named just `node`. Symlink it to fix
+    ln -s /usr/bin/nodejs /usr/local/bin/node
+
     # install repo
     REPO_SHA256SUM="394d93ac7261d59db58afa49bb5f88386fea8518792491ee3db8baab49c3ecda"
     curl -o /tmp/repo 'https://gerrit.opencord.org/gitweb?p=repo.git;a=blob_plain;f=repo;hb=refs/heads/stable'
diff --git a/packer/provision/baseline.sh b/packer/provision/baseline.sh
index 6a229b0..a087efa 100644
--- a/packer/provision/baseline.sh
+++ b/packer/provision/baseline.sh
@@ -261,15 +261,20 @@
     # Used by lftools scripts to parse XML
     ensure_ubuntu_install xmlstarlet
 
-    # Haskel Packages
-    # Cabal update fails on a 1G system so workaround that with a swap file
-    dd if=/dev/zero of=/tmp/swap bs=1M count=1024
-    mkswap /tmp/swap
-    swapon /tmp/swap
+    # Change made by zdw on 2018-04-12
+    # hackage.haskell.org was down, talked to zxiiro on #lf-releng and he recommended
+    # pulling down the packages in a way similar to this ansible role, rather than using cabal:
+    # https://github.com/lfit/ansible-roles-shellcheck-install/blob/master/tasks/main.yml
 
-    ensure_ubuntu_install cabal-install
-    cabal update
-    cabal install --bindir=/usr/local/bin "shellcheck-0.4.6"  # Pin shellcheck version
+    SHELLCHECK_VERSION="v0.4.7"
+    SHELLCHECK_SHA256SUM="deeea92a4d3a9c5b16ba15210d9c1ab84a2e12e29bf856427700afd896bbdc93"
+    curl -L -o /tmp/shellcheck.tar.xz https://storage.googleapis.com/shellcheck/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz
+    echo "$SHELLCHECK_SHA256SUM  /tmp/shellcheck.tar.xz" | sha256sum -c -
+    pushd /tmp
+    tar -xJvf shellcheck.tar.xz
+    cp shellcheck-${SHELLCHECK_VERSION}/shellcheck /usr/local/bin/shellcheck
+    chmod a+x /usr/local/bin/shellcheck
+    popd
 
     # --- END LFTOOLS DEPS
     ######################