Merge "[Dovetail] Changing the path of the ssh key in pod.yaml for yardstick"
authormei mei <meimei@huawei.com>
Fri, 18 May 2018 08:17:39 +0000 (08:17 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Fri, 18 May 2018 08:17:39 +0000 (08:17 +0000)
119 files changed:
jjb/3rd_party_ci/odl-netvirt.yaml [moved from jjb/3rd_party_ci/odl-netvirt.yml with 100% similarity]
jjb/apex/apex-jjb-renderer.py
jjb/apex/apex-project-jobs.yaml [moved from jjb/apex/apex-project-jobs.yml with 100% similarity]
jjb/apex/apex-verify-jobs.yaml [moved from jjb/apex/apex-verify-jobs.yml with 100% similarity]
jjb/apex/apex.yaml [moved from jjb/apex/apex.yml with 100% similarity]
jjb/apex/apex.yaml.j2 [moved from jjb/apex/apex.yml.j2 with 100% similarity]
jjb/armband/armband-ci-jobs.yaml [moved from jjb/armband/armband-ci-jobs.yml with 100% similarity]
jjb/armband/armband-verify-jobs.yaml [moved from jjb/armband/armband-verify-jobs.yml with 100% similarity]
jjb/auto/auto.yaml [moved from jjb/auto/auto.yml with 100% similarity]
jjb/availability/availability.yaml [moved from jjb/availability/availability.yml with 100% similarity]
jjb/barometer/barometer.yaml [moved from jjb/barometer/barometer.yml with 100% similarity]
jjb/bottlenecks/bottlenecks-ci-jobs.yaml [moved from jjb/bottlenecks/bottlenecks-ci-jobs.yml with 100% similarity]
jjb/bottlenecks/bottlenecks-project-jobs.yaml [moved from jjb/bottlenecks/bottlenecks-project-jobs.yml with 100% similarity]
jjb/calipso/calipso.yaml [moved from jjb/calipso/calipso.yml with 100% similarity]
jjb/ci_gate_security/opnfv-ci-gate-security.yaml [moved from jjb/ci_gate_security/opnfv-ci-gate-security.yml with 98% similarity]
jjb/clover/clover-project.yaml [moved from jjb/clover/clover-project.yml with 100% similarity]
jjb/compass4nfv/compass-ci-jobs.yaml [moved from jjb/compass4nfv/compass-ci-jobs.yml with 100% similarity]
jjb/compass4nfv/compass-dovetail-jobs.yaml [moved from jjb/compass4nfv/compass-dovetail-jobs.yml with 100% similarity]
jjb/compass4nfv/compass-project-jobs.yaml [moved from jjb/compass4nfv/compass-project-jobs.yml with 100% similarity]
jjb/compass4nfv/compass-verify-jobs.yaml [moved from jjb/compass4nfv/compass-verify-jobs.yml with 100% similarity]
jjb/conductor/conductor.yaml [moved from jjb/conductor/conductor.yml with 100% similarity]
jjb/container4nfv/container4nfv-arm64.yaml [moved from jjb/container4nfv/container4nfv-arm64.yml with 100% similarity]
jjb/container4nfv/container4nfv-project.yaml [moved from jjb/container4nfv/container4nfv-project.yml with 100% similarity]
jjb/container4nfv/yardstick-arm64.yaml [moved from jjb/container4nfv/yardstick-arm64.yml with 100% similarity]
jjb/copper/copper.yaml [moved from jjb/copper/copper.yml with 100% similarity]
jjb/cperf/cperf-ci-jobs.yaml [moved from jjb/cperf/cperf-ci-jobs.yml with 100% similarity]
jjb/daisy4nfv/daisy-daily-jobs.yaml [moved from jjb/daisy4nfv/daisy-daily-jobs.yml with 100% similarity]
jjb/daisy4nfv/daisy-project-jobs.yaml [moved from jjb/daisy4nfv/daisy-project-jobs.yml with 100% similarity]
jjb/daisy4nfv/daisy4nfv-merge-jobs.yaml [moved from jjb/daisy4nfv/daisy4nfv-merge-jobs.yml with 100% similarity]
jjb/daisy4nfv/daisy4nfv-verify-jobs.yaml [moved from jjb/daisy4nfv/daisy4nfv-verify-jobs.yml with 100% similarity]
jjb/doctor/doctor.yaml [moved from jjb/doctor/doctor.yml with 100% similarity]
jjb/domino/domino.yaml [moved from jjb/domino/domino.yml with 100% similarity]
jjb/dovetail/dovetail-artifacts-upload.yaml [moved from jjb/dovetail/dovetail-artifacts-upload.yml with 100% similarity]
jjb/dovetail/dovetail-ci-jobs.yaml [moved from jjb/dovetail/dovetail-ci-jobs.yml with 100% similarity]
jjb/dovetail/dovetail-project-jobs.yaml [moved from jjb/dovetail/dovetail-project-jobs.yml with 100% similarity]
jjb/dovetail/dovetail-weekly-jobs.yaml [moved from jjb/dovetail/dovetail-weekly-jobs.yml with 100% similarity]
jjb/dpacc/dpacc.yaml [moved from jjb/dpacc/dpacc.yml with 100% similarity]
jjb/escalator/escalator.yaml [moved from jjb/escalator/escalator.yml with 100% similarity]
jjb/fuel/fuel-daily-jobs.yaml [moved from jjb/fuel/fuel-daily-jobs.yml with 100% similarity]
jjb/fuel/fuel-project-jobs.yaml [moved from jjb/fuel/fuel-project-jobs.yml with 100% similarity]
jjb/fuel/fuel-verify-jobs.yaml [moved from jjb/fuel/fuel-verify-jobs.yml with 100% similarity]
jjb/fuel/fuel-weekly-jobs.yaml [moved from jjb/fuel/fuel-weekly-jobs.yml with 100% similarity]
jjb/functest/functest-daily-jobs.yaml [moved from jjb/functest/functest-daily-jobs.yml with 100% similarity]
jjb/functest/functest-docker.yaml [moved from jjb/functest/functest-docker.yml with 100% similarity]
jjb/functest/functest-kubernetes-docker.yaml [moved from jjb/functest/functest-kubernetes-docker.yml with 100% similarity]
jjb/functest/functest-kubernetes-project-jobs.yaml [moved from jjb/functest/functest-kubernetes-project-jobs.yml with 100% similarity]
jjb/functest/functest-project-jobs.yaml [moved from jjb/functest/functest-project-jobs.yml with 100% similarity]
jjb/functest/functest-weekly-jobs.yaml [moved from jjb/functest/functest-weekly-jobs.yml with 100% similarity]
jjb/functest/xtesting-docker.yaml [moved from jjb/functest/xtesting-docker.yml with 100% similarity]
jjb/functest/xtesting-project-jobs.yaml [moved from jjb/functest/xtesting-project-jobs.yml with 100% similarity]
jjb/global-jjb
jjb/global/basic-jobs.yaml [moved from jjb/global/basic-jobs.yml with 100% similarity]
jjb/global/installer-params.yaml [moved from jjb/global/installer-params.yml with 100% similarity]
jjb/global/releng-defaults.yaml [moved from jjb/global/releng-defaults.yml with 100% similarity]
jjb/global/releng-macros.yaml [moved from jjb/global/releng-macros.yml with 94% similarity]
jjb/global/slave-params.yaml [moved from jjb/global/slave-params.yml with 100% similarity]
jjb/ipv6/ipv6.yaml [moved from jjb/ipv6/ipv6.yml with 100% similarity]
jjb/joid/joid-daily-jobs.yaml [moved from jjb/joid/joid-daily-jobs.yml with 100% similarity]
jjb/joid/joid-verify-jobs.yaml [moved from jjb/joid/joid-verify-jobs.yml with 100% similarity]
jjb/kvmfornfv/kvmfornfv.yaml [moved from jjb/kvmfornfv/kvmfornfv.yml with 100% similarity]
jjb/models/models.yaml [moved from jjb/models/models.yml with 100% similarity]
jjb/moon/moon.yaml [moved from jjb/moon/moon.yml with 100% similarity]
jjb/netready/netready.yaml [moved from jjb/netready/netready.yml with 100% similarity]
jjb/nfvbench/nfvbench.yaml [moved from jjb/nfvbench/nfvbench.yml with 100% similarity]
jjb/onosfw/onosfw.yaml [moved from jjb/onosfw/onosfw.yml with 100% similarity]
jjb/openci/openci-odl-daily-jobs.yaml [new file with mode: 0644]
jjb/openci/openci-onap-daily-jobs.yaml [new file with mode: 0644]
jjb/opera/opera-daily-jobs.yaml [moved from jjb/opera/opera-daily-jobs.yml with 100% similarity]
jjb/opera/opera-project-jobs.yaml [moved from jjb/opera/opera-project-jobs.yml with 100% similarity]
jjb/opera/opera-verify-jobs.yaml [moved from jjb/opera/opera-verify-jobs.yml with 100% similarity]
jjb/opnfvdocs/opnfvdocs.yaml [moved from jjb/opnfvdocs/opnfvdocs.yml with 100% similarity]
jjb/orchestra/orchestra-daily-jobs.yaml [moved from jjb/orchestra/orchestra-daily-jobs.yml with 100% similarity]
jjb/orchestra/orchestra-project-jobs.yaml [moved from jjb/orchestra/orchestra-project-jobs.yml with 100% similarity]
jjb/ovn4nfv/ovn4nfv-daily-jobs.yaml [moved from jjb/ovn4nfv/ovn4nfv-daily-jobs.yml with 100% similarity]
jjb/ovn4nfv/ovn4nfv-project-jobs.yaml [moved from jjb/ovn4nfv/ovn4nfv-project-jobs.yml with 100% similarity]
jjb/ovsnfv/ovsnfv.yaml [moved from jjb/ovsnfv/ovsnfv.yml with 100% similarity]
jjb/parser/parser.yaml [moved from jjb/parser/parser.yml with 100% similarity]
jjb/pharos/check-jinja2.yaml [moved from jjb/pharos/check-jinja2.yml with 100% similarity]
jjb/pharos/pharos.yaml [moved from jjb/pharos/pharos.yml with 100% similarity]
jjb/promise/promise.yaml [moved from jjb/promise/promise.yml with 100% similarity]
jjb/qtip/qtip-experimental-jobs.yaml [moved from jjb/qtip/qtip-experimental-jobs.yml with 100% similarity]
jjb/qtip/qtip-validate-jobs.yaml [moved from jjb/qtip/qtip-validate-jobs.yml with 100% similarity]
jjb/qtip/qtip-verify-jobs.yaml [moved from jjb/qtip/qtip-verify-jobs.yml with 100% similarity]
jjb/releng/artifact-cleanup.yaml [moved from jjb/releng/artifact-cleanup.yml with 100% similarity]
jjb/releng/compass4nfv-docker.yaml [moved from jjb/releng/compass4nfv-docker.yml with 100% similarity]
jjb/releng/opnfv-docker-arm.yaml [moved from jjb/releng/opnfv-docker-arm.yml with 100% similarity]
jjb/releng/opnfv-docker-custom.yaml [moved from jjb/releng/opnfv-docker-custom.yml with 100% similarity]
jjb/releng/opnfv-docker.yaml [moved from jjb/releng/opnfv-docker.yml with 100% similarity]
jjb/releng/opnfv-lint.yaml [moved from jjb/releng/opnfv-lint.yml with 98% similarity]
jjb/releng/opnfv-utils.yaml [moved from jjb/releng/opnfv-utils.yml with 100% similarity]
jjb/releng/releng-ci-jobs.yaml [new file with mode: 0644]
jjb/releng/releng-ci-jobs.yml [deleted file]
jjb/releng/releng-release-jobs.yaml [moved from jjb/releng/releng-release-jobs.yml with 100% similarity]
jjb/releng/testresults-automate.yaml [moved from jjb/releng/testresults-automate.yml with 100% similarity]
jjb/releng/testresults-verify.yaml [moved from jjb/releng/testresults-verify.yml with 100% similarity]
jjb/releng/verify-releng.sh [deleted file]
jjb/securedlab/check-jinja2.yaml [moved from jjb/securedlab/check-jinja2.yml with 100% similarity]
jjb/sfc/sfc-project-jobs.yaml [moved from jjb/sfc/sfc-project-jobs.yml with 100% similarity]
jjb/snaps/snaps-verify-jobs.yaml [moved from jjb/snaps/snaps-verify-jobs.yml with 100% similarity]
jjb/stor4nfv/stor4nfv-project.yaml [moved from jjb/stor4nfv/stor4nfv-project.yml with 100% similarity]
jjb/storperf/storperf-daily-jobs.yaml [moved from jjb/storperf/storperf-daily-jobs.yml with 100% similarity]
jjb/storperf/storperf-verify-jobs.yaml [moved from jjb/storperf/storperf-verify-jobs.yml with 100% similarity]
jjb/storperf/storperf.yaml [moved from jjb/storperf/storperf.yml with 100% similarity]
jjb/ves/ves.yaml [moved from jjb/ves/ves.yml with 100% similarity]
jjb/vnf_forwarding_graph/vnf_forwarding_graph.yaml [moved from jjb/vnf_forwarding_graph/vnf_forwarding_graph.yml with 100% similarity]
jjb/vswitchperf/vswitchperf.yaml [moved from jjb/vswitchperf/vswitchperf.yml with 100% similarity]
jjb/xci/bifrost-cleanup-job.yaml [moved from jjb/xci/bifrost-cleanup-job.yml with 100% similarity]
jjb/xci/bifrost-periodic-jobs.yaml [moved from jjb/xci/bifrost-periodic-jobs.yml with 100% similarity]
jjb/xci/bifrost-verify-jobs.yaml [moved from jjb/xci/bifrost-verify-jobs.yml with 95% similarity]
jjb/xci/osa-periodic-jobs.yaml [moved from jjb/xci/osa-periodic-jobs.yml with 100% similarity]
jjb/xci/xci-daily-jobs.yaml [moved from jjb/xci/xci-daily-jobs.yml with 96% similarity]
jjb/xci/xci-merge-jobs.yaml [moved from jjb/xci/xci-merge-jobs.yml with 97% similarity]
jjb/xci/xci-set-scenario.sh
jjb/xci/xci-start-new-vm.sh
jjb/xci/xci-verify-jobs.yaml [moved from jjb/xci/xci-verify-jobs.yml with 96% similarity]
jjb/yardstick/yardstick-daily-jobs.yaml [moved from jjb/yardstick/yardstick-daily-jobs.yml with 100% similarity]
jjb/yardstick/yardstick-project-jobs.yaml [moved from jjb/yardstick/yardstick-project-jobs.yml with 100% similarity]
utils/build-server-ansible/vars/CentOS.yml
utils/build-server-ansible/vars/Ubuntu.yml

index b677843..0da47b5 100644 (file)
@@ -25,7 +25,7 @@ def render_jjb():
     with open('scenarios.yaml.hidden') as _:
         scenarios = yaml.safe_load(_)
 
-    template = env.get_template('apex.yml.j2')
+    template = env.get_template('apex.yaml.j2')
 
     print("Scenarios are: ")
     pprint.pprint(scenarios)
@@ -42,7 +42,7 @@ def render_jjb():
     output = template.render(scenarios=scenarios, gspathname=gspathname,
                              branch=branch, build_slave=build_slave)
 
-    with open('./apex.yml', 'w') as fh:
+    with open('./apex.yaml', 'w') as fh:
         fh.write(output)
 
 if __name__ == "__main__":
similarity index 100%
rename from jjb/apex/apex.yml
rename to jjb/apex/apex.yaml
similarity index 100%
rename from jjb/apex/apex.yml.j2
rename to jjb/apex/apex.yaml.j2
similarity index 100%
rename from jjb/auto/auto.yml
rename to jjb/auto/auto.yaml
             - draft-published-event
             - comment-added-contains-event:
                 comment-contains-value: 'recheck'
-            - comment-added-contains-event:
-                comment-contains-value: 'reverify'
           projects:
             - project-compare-type: 'REG_EXP'
               project-pattern: 'apex|armband|bamboo|barometer|bottlenecks|calipso|compass4nfv|conductor|copper|cperf|daisy|doctor|dovetail|dpacc|enfv|fds|fuel|functest|pharos|releng|sandbox|yardstick|infra|ipv6|kvmfornfv|models|moon|netready'
similarity index 100%
rename from jjb/copper/copper.yml
rename to jjb/copper/copper.yaml
similarity index 100%
rename from jjb/doctor/doctor.yml
rename to jjb/doctor/doctor.yaml
similarity index 100%
rename from jjb/domino/domino.yml
rename to jjb/domino/domino.yaml
similarity index 100%
rename from jjb/dpacc/dpacc.yml
rename to jjb/dpacc/dpacc.yaml
index 779110b..1493b95 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 779110b5cd63f3eabb63598a1be79d9b9ba85464
+Subproject commit 1493b95e0d80860a9d8aef83e22ee49d5988ad96
similarity index 94%
rename from jjb/global/releng-macros.yml
rename to jjb/global/releng-macros.yaml
index b7335fa..b282cff 100644 (file)
             - 'origin/$BRANCH'
           timeout: 15
           per-build-tag: false
+          skip-tag: true
           shallow-clone: false
           use-author: false
           ignore-notify: false
           choosing-strategy: 'gerrit'
           refspec: '$GERRIT_REFSPEC'
           <<: *git-scm-defaults
+
+- scm:
+    name: git-scm-gerrit-with-submodules
+    scm:
+      - git:
+          choosing-strategy: 'gerrit'
+          refspec: '$GERRIT_REFSPEC'
+          submodule:
+            recursive: true
+            timeout: 20
+          <<: *git-scm-defaults
 - scm:
     name: git-scm-with-submodules
     scm:
           refspec: ''
           branches:
             - 'refs/heads/{branch}'
+          per-build-tag: false
           skip-tag: true
           wipe-workspace: true
           submodule:
     name: git-scm-openstack
     scm:
       - git: &git-scm-openstack-defaults
+          per-build-tag: false
+          skip-tag: true
           url: '$GIT_BASE'
           branches:
             - 'origin/$BRANCH'
     name: 'report-provision-result'
     publishers:
       - postbuildscript:
-          script-only-if-succeeded: true
           builders:
-            - shell: |
-                echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
-                echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
-                echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
-            - shell:
-                !include-raw: installer-report.sh
+            - role: BOTH
+              build-on:
+                - SUCCESS
+              build-steps:
+                - shell: |
+                    echo "export PROVISION_RESULT=PASS" >> $WORKSPACE/installer_track.sh
+                    echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
+                    echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
+                - shell:
+                    !include-raw: installer-report.sh
+          mark-unstable-if-failed: true
       - postbuildscript:
-          script-only-if-succeeded: false
-          script-only-if-failed: true
           builders:
-            - shell: |
-                echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
-                echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
-                echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
-            - shell:
-                !include-raw: installer-report.sh
+            - role: BOTH
+              build-on:
+                - ABORTED
+                - FAILURE
+                - NOT_BUILT
+                - UNSTABLE
+              build-steps:
+                - shell: |
+                    echo "export PROVISION_RESULT=FAIL" >> $WORKSPACE/installer_track.sh
+                    echo "export INSTALLER=$INSTALLER_TYPE" >> $WORKSPACE/installer_track.sh
+                    echo "export TIMESTAMP_END="\'`date '+%Y-%m-%d %H:%M:%S.%3N'`\' >> $WORKSPACE/installer_track.sh
+                - shell:
+                    !include-raw: installer-report.sh
+          mark-unstable-if-failed: true
similarity index 100%
rename from jjb/ipv6/ipv6.yml
rename to jjb/ipv6/ipv6.yaml
similarity index 100%
rename from jjb/models/models.yml
rename to jjb/models/models.yaml
similarity index 100%
rename from jjb/moon/moon.yml
rename to jjb/moon/moon.yaml
similarity index 100%
rename from jjb/onosfw/onosfw.yml
rename to jjb/onosfw/onosfw.yaml
diff --git a/jjb/openci/openci-odl-daily-jobs.yaml b/jjb/openci/openci-odl-daily-jobs.yaml
new file mode 100644 (file)
index 0000000..8b53f65
--- /dev/null
@@ -0,0 +1,71 @@
+---
+- project:
+    name: openci-odl
+
+    project: '{name}'
+
+    stream:
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+
+    jobs:
+      - 'openci-odl-autorelease-daily-{stream}'
+      - 'openci-odl-promote-daily-{stream}'
+
+# This job gets triggered manually for the demo purposes.
+#
+# In prototype, either what this job does needs to be integrated to
+# ODL autorelease job or triggered by the upstream autorelease job.
+- job-template:
+    name: 'openci-odl-autorelease-daily-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: false
+
+    parameters:
+      - 'opnfv-build-defaults'
+
+    builders:
+      - shell: |
+          #!/bin/bash
+
+          echo "Will construct and publish an ArtifactPublishedEvent"
+
+# This job gets triggered by a ConfidenceLevelModifiedEvent published
+# by OPNFV jobs so ODL can promote the autorelease artifact even further.
+#
+# This job is created for the demo purposes and might not be there for
+# the prototype.
+- job-template:
+    name: 'openci-odl-promote-daily-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: false
+
+    parameters:
+      - 'opnfv-build-defaults'
+
+    triggers:
+      - jms-messaging:
+          provider-name: openci.activemq
+          selector: CI_TYPE = 'custom'
+          checks:
+            - field: origin
+              expected-value: 'OPNFV'
+            - field: type
+              expected-value: 'ConfidenceLevelModifiedEvent'
+
+    builders:
+      - shell: |
+          #!/bin/bash
+
+          echo
+          echo "Triggered by an event"
+          echo "----------------------------------"
+          echo $CI_MESSAGE
+          echo "----------------------------------"
+          echo " Promoted ODL Autorelease artifact as release candidate!"
diff --git a/jjb/openci/openci-onap-daily-jobs.yaml b/jjb/openci/openci-onap-daily-jobs.yaml
new file mode 100644 (file)
index 0000000..4640eb3
--- /dev/null
@@ -0,0 +1,71 @@
+---
+- project:
+    name: openci-onap
+
+    project: '{name}'
+
+    stream:
+      - master:
+          branch: '{stream}'
+          gs-pathname: ''
+          disabled: false
+
+    jobs:
+      - 'openci-onap-autorelease-daily-{stream}'
+      - 'openci-onap-promote-daily-{stream}'
+
+# This job gets triggered manually for the demo purposes.
+#
+# In prototype, either what this job does needs to be integrated to
+# ONAP autorelease job or triggered by the upstream autorelease job.
+- job-template:
+    name: 'openci-onap-autorelease-daily-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: false
+
+    parameters:
+      - 'opnfv-build-defaults'
+
+    builders:
+      - shell: |
+          #!/bin/bash
+
+          echo "Will construct and publish an ArtifactPublishedEvent"
+
+# This job gets triggered by a ConfidenceLevelModifiedEvent published
+# by OPNFV jobs so ONAP can promote the autorelease artifact even further.
+#
+# This job is created for the demo purposes and might not be there for
+# the prototype.
+- job-template:
+    name: 'openci-onap-promote-daily-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: false
+
+    parameters:
+      - 'opnfv-build-defaults'
+
+    triggers:
+      - jms-messaging:
+          provider-name: openci.activemq
+          selector: CI_TYPE = 'custom'
+          checks:
+            - field: origin
+              expected-value: 'OPNFV'
+            - field: type
+              expected-value: 'ConfidenceLevelModifiedEvent'
+
+    builders:
+      - shell: |
+          #!/bin/bash
+
+          echo
+          echo "Triggered by an event"
+          echo "----------------------------------"
+          echo $CI_MESSAGE
+          echo "----------------------------------"
+          echo " Promoted ONAP Autorelease artifact as release candidate!"
similarity index 100%
rename from jjb/ovsnfv/ovsnfv.yml
rename to jjb/ovsnfv/ovsnfv.yaml
similarity index 100%
rename from jjb/parser/parser.yml
rename to jjb/parser/parser.yaml
similarity index 100%
rename from jjb/pharos/pharos.yml
rename to jjb/pharos/pharos.yaml
similarity index 98%
rename from jjb/releng/opnfv-lint.yml
rename to jjb/releng/opnfv-lint.yaml
index aac8c31..6483e32 100644 (file)
@@ -64,8 +64,6 @@
             - draft-published-event
             - comment-added-contains-event:
                 comment-contains-value: 'recheck'
-            - comment-added-contains-event:
-                comment-contains-value: 'reverify'
           projects:
             - project-compare-type: 'REG_EXP'
               project-pattern: 'releng|doctor|pharos'
diff --git a/jjb/releng/releng-ci-jobs.yaml b/jjb/releng/releng-ci-jobs.yaml
new file mode 100644 (file)
index 0000000..f9a2bc2
--- /dev/null
@@ -0,0 +1,15 @@
+---
+- project:
+    name: releng-builder-jobs
+    project: 'releng'
+    project-name: 'releng'
+
+    build-timeout: 60
+    build-node: 'lf-build1'
+    gerrit-server-name: 'gerrit.opnfv.org'
+    jenkins-ssh-credential: 'd42411ac011ad6f3dd2e1fa34eaa5d87f910eb2e'
+    jjb-version: '2.0.3'
+    lftools-version: '<1.0.0'
+
+    jobs:
+      - '{project-name}-ci-jobs'
diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml
deleted file mode 100644 (file)
index 6fb6804..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
----
-- project:
-    name: releng-builder-jobs
-    jobs:
-      - 'releng-verify-jjb'
-      - 'releng-merge-jjb'
-      - 'releng-comment-jjb'
-
-    project: 'releng'
-
-- job-template:
-    name: releng-verify-jjb
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-          branch: 'master'
-
-    scm:
-      - git-scm-gerrit
-
-    triggers:
-      - gerrit:
-          server-name: 'gerrit.opnfv.org'
-          trigger-on:
-            - patchset-created-event:
-                exclude-drafts: 'false'
-                exclude-trivial-rebase: 'false'
-                exclude-no-code-change: 'false'
-            - draft-published-event
-            - comment-added-contains-event:
-                comment-contains-value: 'recheck'
-            - comment-added-contains-event:
-                comment-contains-value: 'reverify'
-          projects:
-            - project-compare-type: 'ANT'
-              project-pattern: 'releng'
-              branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/master'
-              file-paths:
-                - compare-type: ANT
-                  pattern: jjb/**
-                - compare-type: ANT
-                  pattern: jjb-templates/**
-                - compare-type: ANT
-                  pattern: utils/**
-
-
-    builders:
-      - shell:
-          !include-raw: verify-releng.sh
-
-    publishers:
-      - archive-artifacts:
-          artifacts: 'job_output/*'
-      - email-jenkins-admins-on-failure
-
-- job-template:
-    name: releng-comment-jjb
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-          branch: 'master'
-
-    scm:
-      - git-scm-gerrit
-
-    triggers:
-      - experimental:
-          project: '{project}'
-          branch: 'master'
-          files: 'jjb/**'
-
-    builders:
-      - shell:
-          !include-raw-escape: generate-job-list.sh
-      - report-build-result-to-gerrit
-
-- job-template:
-    name: 'releng-merge-jjb'
-
-    # builder-merge job to run JJB update
-    #
-    # This job's purpose is to update all the JJB
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-          branch: 'master'
-
-    properties:
-      - throttle:
-          max-per-node: 1
-          max-total: 1
-          option: 'project'
-
-    scm:
-      - git-scm
-
-    triggers:
-      - gerrit:
-          server-name: 'gerrit.opnfv.org'
-          trigger-on:
-            - change-merged-event
-            - comment-added-contains-event:
-                comment-contains-value: 'remerge'
-          projects:
-            - project-compare-type: 'ANT'
-              project-pattern: 'releng'
-              branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/master'
-              file-paths:
-                - compare-type: ANT
-                  pattern: jjb/**
-                - compare-type: ANT
-                  pattern: utils/**
-
-    builders:
-      - shell: |
-              source /opt/virtualenv/jenkins-job-builder/bin/activate
-              jenkins-jobs update -r --delete-old jjb/
diff --git a/jjb/releng/verify-releng.sh b/jjb/releng/verify-releng.sh
deleted file mode 100755 (executable)
index a6eaa0f..0000000
+++ /dev/null
@@ -1,21 +0,0 @@
-#!/bin/bash
-# SPDX-license-identifier: Apache-2.0
-##############################################################################
-# Copyright (c) 2016 Linux Foundation and others.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-##############################################################################
-#test for non-ascii characters, these can pass the test and end up breaking things in production
-for x in $(find . -name *\.yml -or -name *\.yaml -or -name *\.sh); do
-
-  if LC_ALL=C grep -q '[^[:print:][:space:]]' "$x"; then
-    echo "file "$x" contains non-ascii characters"
-    exit 1
-  fi
-
-done
-
-source /opt/virtualenv/jenkins-job-builder/bin/activate
-jenkins-jobs test -o job_output -r jjb/
similarity index 100%
rename from jjb/ves/ves.yml
rename to jjb/ves/ves.yaml
similarity index 95%
rename from jjb/xci/bifrost-verify-jobs.yml
rename to jjb/xci/bifrost-verify-jobs.yaml
index 920ecdc..4ca7835 100644 (file)
       # yamllint enable rule:line-length
       - email-jenkins-admins-on-failure
       - postbuildscript:
-          script-only-if-succeeded: false
-          script-only-if-failed: false
           builders:
-            - shell:
-                !include-raw: ./xci-cleanup.sh
+            - role: BOTH
+              build-on:
+                - ABORTED
+                - FAILURE
+                - NOT_BUILT
+                - SUCCESS
+                - UNSTABLE
+              build-steps:
+                - shell: !include-raw: ./xci-cleanup.sh
+          mark-unstable-if-failed: true
 
 # -------------------------------
 # trigger macros
similarity index 96%
rename from jjb/xci/xci-daily-jobs.yml
rename to jjb/xci/xci-daily-jobs.yaml
index 11db4e1..c1132ab 100644 (file)
       # yamllint enable rule:line-length
       - email-jenkins-admins-on-failure
       - postbuildscript:
-          script-only-if-succeeded: false
-          script-only-if-failed: false
           builders:
-            - shell:
-                !include-raw: ./xci-cleanup.sh
+            - role: BOTH
+              build-on:
+                - ABORTED
+                - FAILURE
+                - NOT_BUILT
+                - SUCCESS
+                - UNSTABLE
+              build-steps:
+                - shell: !include-raw: ./xci-cleanup.sh
+          mark-unstable-if-failed: true
 
 - job-template:
     name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
similarity index 97%
rename from jjb/xci/xci-merge-jobs.yml
rename to jjb/xci/xci-merge-jobs.yaml
index 2d112c7..cb438ad 100644 (file)
 
     publishers:
       - postbuildscript:
-          script-only-if-succeeded: false
-          script-only-if-failed: false
           builders:
-            - shell:
-                !include-raw: ./xci-cleanup.sh
+            - role: BOTH
+              build-on:
+                - ABORTED
+                - FAILURE
+                - NOT_BUILT
+                - SUCCESS
+                - UNSTABLE
+              build-steps:
+                - shell: !include-raw: ./xci-cleanup.sh
+          mark-unstable-if-failed: true
 
 - job-template:
     name: 'xci-merge-{distro}-{phase}-virtual-{stream}'
index c28093d..7bc45f1 100755 (executable)
@@ -38,7 +38,7 @@ set -o pipefail
 #   skip-verify
 #   skip-deployment
 #   force-verify
-function override_generic_scenario() {
+function override_scenario() {
     echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
 
     # ensure the metadata we record is consistent for all types of patches including skipped ones
@@ -81,26 +81,21 @@ function override_generic_scenario() {
     fi
 }
 
-# This function determines the impacted generic scenario by processing the
-# change and using diff to see what changed. If changed files belong to a scenario
-# its name gets recorded for deploying and testing the right scenario.
+# This function determines the default scenario for changes coming to releng-xci
+# by processing the Gerrit change and using diff to see what changed.
+#
+# The stuff in releng-xci is for the installer and other common things so the
+# determination is based on those.
 #
-# Pattern to be searched in Changeset
-#   releng-xci/scenarios/<scenario>/<impacted files>: <scenario>
-#   releng-xci/xci/installer/osa/<impacted files>: os-nosdn-nofeature
-#   releng-xci/xci/installer/kubespray/<impacted files>: k8-nosdn-nofeature
-#   the rest: os-nosdn-nofeature
-function determine_generic_scenario() {
+# Pattern
+#   releng-xci/installer/<installer_type>/<impacted files>: <scenario>
+function determine_default_scenario() {
     echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
 
     # get the changeset
     cd $WORKSPACE
-    SCENARIOS=$(git diff HEAD^..HEAD --name-only -- 'xci/scenarios' | cut -d "/" -f 3 | uniq)
     # We need to set default scenario for changes that mess with installers
     INSTALLERS=$(git diff HEAD^..HEAD --name-only -- 'xci/installer' | cut -d "/" -f 3 | uniq)
-    for CHANGED_SCENARIO in $SCENARIOS; do
-        DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]=$CHANGED_SCENARIO
-    done
     for CHANGED_INSTALLER in $INSTALLERS; do
         case $CHANGED_INSTALLER in
             kubespray)
@@ -113,24 +108,25 @@ function determine_generic_scenario() {
         esac
     done
     # For all other changes, we only need to set a default scenario if it's not set already
-    if git diff HEAD^..HEAD --name-only | grep -q -v 'xci/installer\|xci/scenario'; then
+    if git diff HEAD^..HEAD --name-only | grep -q -v 'xci/installer'; then
          [[ ${#DEPLOY_SCENARIO[@]} -eq 0 ]] && DEPLOY_SCENARIO[${#DEPLOY_SCENARIO[@]}]='os-nosdn-nofeature'
     fi
 
     # extract releng-xci sha
     XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
 
-    # extract scenario sha which is same as releng-xci sha for generic scenarios
+    # TODO: we need to fix this so we actually extract the scenario sha by cloning releng-xci-scenarios
+    # for the determined scenario. it is crucial for promotion...
     SCENARIO_SHA=$XCI_SHA
 }
 
-# This function determines the impacted external scenario by processing the Gerrit
+# This function determines the impacted scenario by processing the Gerrit
 # change and using diff to see what changed. If changed files belong to a scenario
 # its name gets recorded for deploying and testing the right scenario.
 #
 # Pattern
 #   <project-repo>/scenarios/<scenario>/<impacted files>: <scenario>
-function determine_external_scenario() {
+function determine_scenario() {
     echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
 
     # remove the clone that is done via jenkins and place releng-xci there so the
@@ -169,11 +165,10 @@ WORK_DIRECTORY=/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO
 /bin/rm -rf $WORK_DIRECTORY && mkdir -p $WORK_DIRECTORY
 
 if [[ $GERRIT_PROJECT == "releng-xci" ]]; then
-    override_generic_scenario
-    determine_generic_scenario
-else
-    determine_external_scenario
+    determine_default_scenario
 fi
+override_scenario
+determine_scenario
 
 # ensure single scenario is impacted
     if [[ $(IFS=$'\n' echo ${DEPLOY_SCENARIO[@]} | wc -w) != 1 ]]; then
index 1749328..79b6a78 100755 (executable)
@@ -67,7 +67,7 @@ export CI_LOOP=$CI_LOOP
 export BUILD_TAG=$BUILD_TAG
 export NODE_NAME=$NODE_NAME
 
-if [[ ! -z ${WORKSPACE+x} && $GERRIT_PROJECT != "releng-xci" ]]; then
+if [[ $GERRIT_PROJECT != "releng-xci" ]]; then
     export XCI_ANSIBLE_PARAMS="-e @/home/devuser/releng-xci/scenario_overrides.yml"
 fi
 
@@ -75,7 +75,7 @@ cd xci
 ./xci-deploy.sh | ts
 EOF
 
-if [[ ! -z ${WORKSPACE+x} && $GERRIT_PROJECT != "releng-xci" ]]; then
+if [[ $GERRIT_PROJECT != "releng-xci" ]]; then
     cat > scenario_overrides.yml <<-EOF
 ---
 xci_scenarios_overrides:
similarity index 96%
rename from jjb/xci/xci-verify-jobs.yml
rename to jjb/xci/xci-verify-jobs.yaml
index 3b7df62..7dea536 100644 (file)
 
     publishers:
       - postbuildscript:
-          script-only-if-succeeded: false
-          script-only-if-failed: false
           builders:
-            - shell:
-                !include-raw: ./xci-cleanup.sh
+            - role: BOTH
+              build-on:
+                - ABORTED
+                - FAILURE
+                - NOT_BUILT
+                - SUCCESS
+                - UNSTABLE
+              build-steps:
+                - shell: !include-raw: ./xci-cleanup.sh
+          mark-unstable-if-failed: true
 
 
 - job-template:
index 0d5a011..528388f 100644 (file)
@@ -43,6 +43,9 @@
     - python-six
     - net-tools
     - bc
+    - sysstat
+    - xmlstarlet
+    - facter
 
 - name: install the 'Development tools' package group
   yum:
index 609c8d5..e91c485 100644 (file)
@@ -56,6 +56,9 @@
     - libnuma-dev
     - shellcheck
     - python-pip
+    - sysstat
+    - xmlstarlet
+    - facter
 
 - name: Add Docker apt key.
   apt_key: