[opera] create opera verify/daily/build jobs 85/26085/7
authormeimei <meimei@huawei.com>
Fri, 16 Dec 2016 06:22:47 +0000 (14:22 +0800)
committermeimei <meimei@huawei.com>
Wed, 21 Dec 2016 06:23:43 +0000 (14:23 +0800)
Change-Id: Ide4d879106683a9adab5ea4bf195982eadf6bcb8
Signed-off-by: meimei <meimei@huawei.com>
jjb/global/slave-params.yml
jjb/opera/opera-daily-jobs.yml [new file with mode: 0644]
jjb/opera/opera-project-jobs.yml [new file with mode: 0644]
jjb/opera/opera-verify-jobs.yml [new file with mode: 0644]

index 7eec709..30ebb95 100644 (file)
         - string:
             name: GIT_BASE
             default: https://gerrit.opnfv.org/gerrit/$PROJECT
+- parameter:
+    name: 'huawei-pod7-defaults'
+    parameters:
+        - node:
+            name: SLAVE_NAME
+            description: 'Slave name on Jenkins'
+            allowed-slaves:
+                - huawei-pod7
+            default-slaves:
+                - huawei-pod7
+        - string:
+            name: GIT_BASE
+            default: https://gerrit.opnfv.org/gerrit/$PROJECT
 - parameter:
     name: 'zte-pod1-defaults'
     parameters:
diff --git a/jjb/opera/opera-daily-jobs.yml b/jjb/opera/opera-daily-jobs.yml
new file mode 100644 (file)
index 0000000..15b8a0f
--- /dev/null
@@ -0,0 +1,143 @@
+- project:
+    name: 'opera-daily-jobs'
+
+    project: 'opera'
+
+#####################################
+# branch definitions
+#####################################
+    stream:
+        - master:
+            branch: '{stream}'
+            gs-pathname: ''
+            disabled: false
+
+#####################################
+# patch verification phases
+#####################################
+    phase:
+        - 'basic'
+        - 'deploy'
+
+#####################################
+# jobs
+#####################################
+    jobs:
+        - 'opera-daily-{stream}'
+        - 'opera-daily-{phase}-{stream}'
+#####################################
+# job templates
+#####################################
+- job-template:
+    name: 'opera-daily-{stream}'
+
+    project-type: multijob
+
+    disabled: '{obj:disabled}'
+
+    concurrent: false
+
+    properties:
+        - throttle:
+            enabled: true
+            max-total: 1
+            max-per-node: 1
+            option: 'project'
+
+    scm:
+        - git-scm
+
+    wrappers:
+        - ssh-agent-wrapper
+
+        - timeout:
+            timeout: 120
+            fail: true
+
+    triggers:
+         - timed: '@midnight'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - 'huawei-pod7-defaults'
+
+    builders:
+        - description-setter:
+            description: "Built on $NODE_NAME"
+        - multijob:
+            name: basic
+            condition: SUCCESSFUL
+            projects:
+                - name: 'opera-daily-basic-macro'
+                  current-parameters: true
+                  node-parameters: true
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+        - multijob:
+            name: deploy
+            condition: SUCCESSFUL
+            projects:
+                - name: 'opera-daily-deploy-{stream}'
+                  current-parameters: true
+                  node-parameters: true
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+#        - multijob:
+#            name: functest
+#            condition: SUCCESSFUL
+#            projects:
+#                - name: 'functest-compass-baremetal-suite-{stream}'
+#                  current-parameters: true
+#                  predefined-parameters:
+#                    FUNCTEST_SUITE_NAME=opera
+#                  node-parameters: true
+#                  kill-phase-on: NEVER
+#                  abort-all-job: true
+
+- job-template:
+    name: 'opera-daily-{phase}-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: true
+
+    properties:
+        - throttle:
+            enabled: true
+            max-per-node: 1
+            option: 'project'
+
+    scm:
+        - git-scm
+
+    wrappers:
+        - ssh-agent-wrapper
+        - timeout:
+            timeout: 120
+            fail: true
+
+    builders:
+        - description-setter:
+            description: "Built on $NODE_NAME"
+        - '{project}-daily-{phase}-macro'
+
+#####################################
+# builder macros
+#####################################
+- builder:
+    name: 'opera-daily-basic-macro'
+    builders:
+        - shell: |
+            #!/bin/bash
+            echo "Hello world!"
+
+- builder:
+    name: 'opera-daily-deploy-macro'
+    builders:
+        - shell: |
+            #!/bin/bash
+            echo "Hello world!"
+
diff --git a/jjb/opera/opera-project-jobs.yml b/jjb/opera/opera-project-jobs.yml
new file mode 100644 (file)
index 0000000..19f066b
--- /dev/null
@@ -0,0 +1,57 @@
+- project:
+
+    name: opera-project
+
+    project: 'opera'
+
+    stream:
+        - master:
+            branch: '{stream}'
+            gs-pathname: ''
+
+    jobs:
+        - 'opera-build-{stream}'
+
+########################
+# job templates
+########################
+- job-template:
+    name: 'opera-build-{stream}'
+
+    concurrent: true
+
+    properties:
+        - throttle:
+            enabled: true
+            max-total: 1
+            max-per-node: 1
+            option: 'project'
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - 'opnfv-build-ubuntu-defaults'
+        - gerrit-parameter:
+            branch: '{branch}'
+
+    scm:
+        - git-scm
+
+    triggers:
+        - timed: 'H 23 * * *'
+
+    builders:
+        - 'opera-build-macro'
+
+#####################################
+# builder macros
+#####################################
+- builder:
+    name: 'opera-build-macro'
+    builders:
+        - shell: |
+            #!/bin/bash
+
+            echo "Hello world!"
+
+
diff --git a/jjb/opera/opera-verify-jobs.yml b/jjb/opera/opera-verify-jobs.yml
new file mode 100644 (file)
index 0000000..cdcb7b5
--- /dev/null
@@ -0,0 +1,155 @@
+- project:
+    name: 'opera-verify-jobs'
+
+    project: 'opera'
+
+#####################################
+# branch definitions
+#####################################
+    stream:
+        - master:
+            branch: '{stream}'
+            gs-pathname: ''
+            disabled: false
+
+#####################################
+# patch verification phases
+#####################################
+    phase:
+        - 'basic'
+        - 'deploy'
+
+#####################################
+# jobs
+#####################################
+    jobs:
+        - 'opera-verify-{stream}'
+        - 'opera-verify-{phase}-{stream}'
+#####################################
+# job templates
+#####################################
+- job-template:
+    name: 'opera-verify-{stream}'
+
+    project-type: multijob
+
+    disabled: '{obj:disabled}'
+
+    concurrent: true
+
+    properties:
+        - throttle:
+            enabled: true
+            max-total: 1
+            max-per-node: 1
+            option: 'project'
+
+    scm:
+        - git-scm-gerrit
+
+    wrappers:
+        - ssh-agent-wrapper
+        - timeout:
+            timeout: 120
+            fail: true
+
+    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: '{project}'
+                branches:
+                  - branch-compare-type: 'ANT'
+                    branch-pattern: '**/{branch}'
+                file-paths:
+                  - compare-type: ANT
+                    pattern: '**/*'
+                forbidden-file-paths:
+                  - compare-type: ANT
+                    pattern: 'docs/**'
+            readable-message: true
+
+    parameters:
+        - project-parameter:
+            project: '{project}'
+        - gerrit-parameter:
+            branch: '{branch}'
+        - 'huawei-pod7-defaults'
+
+    builders:
+        - description-setter:
+            description: "Built on $NODE_NAME"
+        - multijob:
+            name: basic
+            condition: SUCCESSFUL
+            projects:
+                - name: 'opera-verify-basic-macro'
+                  current-parameters: true
+                  node-parameters: true
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+        - multijob:
+            name: deploy
+            condition: SUCCESSFUL
+            projects:
+                - name: 'opera-verify-deploy-{stream}'
+                  current-parameters: true
+                  node-parameters: true
+                  kill-phase-on: FAILURE
+                  abort-all-job: true
+
+- job-template:
+    name: 'opera-verify-{phase}-{stream}'
+
+    disabled: '{obj:disabled}'
+
+    concurrent: true
+
+    properties:
+        - throttle:
+            enabled: true
+            max-per-node: 1
+            option: 'project'
+
+    scm:
+        - git-scm-gerrit
+
+    wrappers:
+        - ssh-agent-wrapper
+        - timeout:
+            timeout: 120
+            fail: true
+
+    builders:
+        - description-setter:
+            description: "Built on $NODE_NAME"
+        - '{project}-verify-{phase}-macro'
+
+#####################################
+# builder macros
+#####################################
+- builder:
+    name: 'opera-verify-basic-macro'
+    builders:
+        - shell: |
+            #!/bin/bash
+            echo "Hello world!"
+
+- builder:
+    name: 'opera-verify-deploy-macro'
+    builders:
+        - shell: |
+            #!/bin/bash
+            echo "Hello world!"
+