Update and enable packer build jobs
authorAndrew Grimberg <agrimberg@linuxfoundation.org>
Wed, 1 Feb 2017 14:55:07 +0000 (06:55 -0800)
committerAndrew Grimberg <agrimberg@linuxfoundation.org>
Wed, 1 Feb 2017 15:06:03 +0000 (07:06 -0800)
Enable the packer build jobs and update them to be in line with our
current optimal configuration

Change-Id: I20b06c9b77005a7342c010cce409226d1b993df2
Signed-off-by: Andrew Grimberg <agrimberg@linuxfoundation.org>
jjb/ci-management/ci-management-macros.yaml
jjb/ci-management/ci-management.yaml

index a5427ce..c4eef5d 100644 (file)
@@ -7,13 +7,28 @@
           files:
             - file-id: 'packer-cloud-env'
               variable: 'CLOUDENV'
+      # yamllint disable rule:line-length
       - shell: |
           cd packer
-          export PACKER_LOG="yes"
-          export PACKER_LOG_PATH="packer-validate.log"
-          packer.io validate -var-file=$CLOUDENV \
-            -var-file=vars/{platform}.json \
-            templates/{template}.json
+          varfiles="../packer/vars/*"
+          templates="../packer/templates/*"
+          provision="../packer/provision/*.sh"
+          for v in $varfiles; do
+              [[ "${{v##*/}}" =~ ^(cloud-env.*)$ ]] && continue
+              for t in $templates; do
+                  export PACKER_LOG="yes" && \
+                  export PACKER_LOG_PATH="packer-validate-${{v##*/}}-${{t##*/}}.log" && \
+                              packer.io validate -var-file=$CLOUDENV -color=false \
+                              -var-file=$v $t
+                  if [ $? -ne 0 ]; then
+                      break
+                  fi
+              done
+          done
+          for p in $provision; do
+              /bin/bash -n $p > provision-validate-${{p##*/}}.log 2>&1
+          done
+      # yamllint enable
 
 - builder:
     name: packer-build
@@ -21,7 +36,7 @@
       - shell: |
           cd packer
           export PACKER_LOG="yes"
-          export PACKER_LOG_PATH="packer-validate.log"
+          export PACKER_LOG_PATH="packer-build.log"
           packer.io build -color=false \
             -var-file=$CLOUDENV \
             -var-file=vars/{platform}.json \
index 1d23062..f78323e 100644 (file)
@@ -5,8 +5,8 @@
     jobs:
       - '{project}-verify-jjb'
       - '{project}-merge-jjb'
-      # - '{project}-verify-packer-{platforms}-{templates}'
-      - '{project}-merge-packer-{platforms}-{templates}'
+      - '{project}-verify-packer'
+      - '{project}-merge-packer-{platforms}-{templates}'
 
     archive-artifacts: '**/*.log'
     branch: 'master'
 #           maven-version: 'mvn33'
 
 - job-template:
-    name: '{project}-verify-packer-{platforms}-{templates}'
+    name: '{project}-verify-packer'
     project-type: freestyle
     node: '{build-node}'
     concurrent: true
           files: 'packer/**'
 
     builders:
-      - packer-validate:
-          platform: '{platforms}'
-          template: '{templates}'
+      - packer-validate
 
 #     publishers:
 #       - ecomp-infra-shiplogs: