Merge "Add build "yardstick-ubuntu-18.04" docker image job"
authorTrevor Bramwell <tbramwell@linuxfoundation.org>
Fri, 4 Jan 2019 21:46:50 +0000 (21:46 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Fri, 4 Jan 2019 21:46:50 +0000 (21:46 +0000)
docs/ci/tables/ci-baremetal-servers.rst
jjb/functest/xtesting.yaml [new file with mode: 0644]
utils/push-test-logs.sh

index 2efea0a..1bdc956 100644 (file)
      - Ubuntu 16.04
      - `PDF <https://git.opnfv.org/pharos/plain/labs/arm/pod6.yaml>`__
      - `IDF <https://git.opnfv.org/pharos/plain/labs/arm/idf-pod6.yaml>`__
+   * - `arm-pod9 <https://build.opnfv.org/ci/computer/arm-pod9>`_
+     - Armband
+     - Ubuntu 16.04
+     - `PDF <https://git.opnfv.org/pharos/plain/labs/arm/pod9.yaml>`__
+     - `IDF <https://git.opnfv.org/pharos/plain/labs/arm/idf-pod9.yaml>`__
+   * - `arm-pod10 <https://build.opnfv.org/ci/computer/arm-pod10>`_
+     - Fuel
+     - Ubuntu 16.04
+     - `PDF <https://git.opnfv.org/pharos/plain/labs/arm/pod10.yaml>`__
+     - `IDF <https://git.opnfv.org/pharos/plain/labs/arm/idf-pod10.yaml>`__
    * - `ericsson-pod1 <https://build.opnfv.org/ci/computer/ericsson-pod1>`_
      - Fuel
      - Ubuntu 16.04
diff --git a/jjb/functest/xtesting.yaml b/jjb/functest/xtesting.yaml
new file mode 100644 (file)
index 0000000..8e2b1e8
--- /dev/null
@@ -0,0 +1,409 @@
+---
+- xtesting-jobs: &xtesting-jobs
+    name: 'xtesting-jobs'
+    current-parameters: true
+
+- xtesting-params: &xtesting-params
+    name: 'xtesting-params'
+    repo: 'opnfv'
+    port:
+    tag:
+      - latest:
+          branch: master
+      - hunter:
+          branch: stable/hunter
+      - gambia:
+          branch: stable/gambia
+
+- parameter:
+    name: xtesting-slave
+    parameters:
+      - label:
+          name: slave
+          default: lf-build2
+
+- parameter:
+    name: xtesting-branch
+    parameters:
+      - string:
+          name: branch
+          default: '{branch}'
+
+- xtesting-containers: &xtesting-containers
+    name: 'xtesting-containers'
+    repo: '{repo}'
+    port: '{port}'
+    container: '{container}'
+    tag: '{tag}'
+
+- xtesting-run-containers: &xtesting-run-containers
+    name: 'xtesting-build-containers'
+    <<: *xtesting-containers
+    test: '{test}'
+
+- xtesting-build-containers: &xtesting-build-containers
+    name: 'xtesting-build-containers'
+    <<: *xtesting-containers
+    ref_arg: '{ref_arg}'
+    path: '{path}'
+
+- builder:
+    name: xtesting-pull-containers
+    builders:
+      - shell: |
+          set +x
+          if [ "{repo}" = "_" ]; then
+            image={container}:{tag}
+          elif [ "{port}" = "None" ]; then
+            image={repo}/{container}:{tag}
+          else
+            image={repo}:{port}/{container}:{tag}
+          fi
+          sudo docker pull $image
+
+- builder:
+    name: xtesting-build-containers
+    builders:
+      - shell: |
+          set +x
+          if [ "{repo}" = "_" ]; then
+            image={container}:{tag}
+          elif [ "{port}" = "None" ]; then
+            image={repo}/{container}:{tag}
+          else
+            image={repo}:{port}/{container}:{tag}
+          fi
+          cd {path}
+          sudo docker build --build-arg {ref_arg}={ref} \
+            --pull=false --no-cache --force-rm=true \
+            -t $image .
+
+- builder:
+    name: xtesting-run-containers
+    builders:
+      - shell: |
+          set +ex
+          [ ! -z "$WORKSPACE" ] && sudo rm -rf $WORKSPACE/* || true
+          if [ "{repo}" = "_" ]; then
+            image={container}:{tag}
+          elif [ "{port}" = "None" ]; then
+            image={repo}/{container}:{tag}
+          else
+            image={repo}:{port}/{container}:{tag}
+          fi
+          sudo docker run --rm \
+            -v $WORKSPACE/../$JOB_NAME/results:/var/lib/xtesting/results \
+            $image run_tests -t {test}
+          res=$?
+          gsutil -m cp -r $WORKSPACE/ \
+            gs://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID > /dev/null 2>&1
+          find $WORKSPACE -type f \
+            -printf \
+            "http://artifacts.opnfv.org/xtesting/$JOB_NAME-$BUILD_ID/%P\n"
+          exit $res
+
+- builder:
+    name: xtesting-remove-images
+    builders:
+      - shell: |
+          set +x
+          if [ "{repo}" = "_" ]; then
+            image={container}:{tag}
+          elif [ "{port}" = "None" ]; then
+            image={repo}/{container}:{tag}
+          else
+            image={repo}:{port}/{container}:{tag}
+          fi
+          sudo docker rmi $image || true
+
+- scm:
+    name: xtesting-scm
+    scm:
+      - git:
+          url: https://gerrit.opnfv.org/gerrit/functest-xtesting
+          refspec: '+refs/changes/*:refs/changes/*'
+          branches:
+            - '{ref}'
+
+- job-template:
+    name: '{repo}-{container}-{tag}-pull'
+    parameters:
+      - xtesting-slave
+    builders:
+      - xtesting-pull-containers:
+          <<: *xtesting-containers
+
+- project:
+    name: 'opnfv-xtesting-pull'
+    <<: *xtesting-params
+    container: 'xtesting'
+    jobs:
+      - '{repo}-{container}-{tag}-pull'
+
+- job-template:
+    name: '{repo}-{container}-{tag}-rmi'
+    parameters:
+      - xtesting-slave
+    builders:
+      - xtesting-remove-images:
+          <<: *xtesting-containers
+
+- project:
+    name: 'opnfv-xtesting-rmi'
+    <<: *xtesting-params
+    container: 'xtesting'
+    jobs:
+      - '{repo}-{container}-{tag}-rmi'
+
+- job-template:
+    name: '{repo}-{container}-{tag}-{test}-run'
+    parameters:
+      - xtesting-slave
+    builders:
+      - xtesting-run-containers:
+          <<: *xtesting-run-containers
+
+- project:
+    name: 'opnfv-xtesting'
+    <<: *xtesting-params
+    container: 'xtesting'
+    test:
+      - first
+      - second
+      - third
+      - fourth
+      - fifth
+    jobs:
+      - '{repo}-{container}-{tag}-{test}-run'
+
+- job-template:
+    name: 'xtesting-{tag}-daily'
+    project-type: multijob
+    triggers:
+      - timed: '@daily'
+    parameters:
+      - xtesting-slave
+    properties:
+      - build-blocker:
+          use-build-blocker: true
+          blocking-level: 'NODE'
+          blocking-jobs:
+            - '^xtesting-.*-(daily|check|gate)$'
+    builders:
+      - multijob:
+          name: remove former images
+          projects:
+            - name: 'opnfv-xtesting-{tag}-rmi'
+              <<: *xtesting-jobs
+      - multijob:
+          name: pull containers
+          projects:
+            - name: 'opnfv-xtesting-{tag}-pull'
+              <<: *xtesting-jobs
+      - multijob:
+          name: opnfv/xtesting:{tag}
+          projects:
+            - name: 'opnfv-xtesting-{tag}-first-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-second-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-third-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-fourth-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-fifth-run'
+              <<: *xtesting-jobs
+
+- job-template:
+    name: '{repo}-{container}-{tag}-gate'
+    parameters:
+      - xtesting-slave
+    scm:
+      - xtesting-scm:
+          ref: $GERRIT_REFSPEC
+    builders:
+      - xtesting-build-containers:
+          <<: *xtesting-build-containers
+          ref: $GERRIT_REFSPEC
+
+- job-template:
+    name: '{repo}-{container}-{tag}-check'
+    parameters:
+      - xtesting-slave
+      - xtesting-branch:
+          branch: '{branch}'
+    scm:
+      - xtesting-scm:
+          ref: $branch
+    builders:
+      - xtesting-build-containers:
+          <<: *xtesting-build-containers
+          ref: $branch
+
+- project:
+    name: '_-alpine-3.8-rmi'
+    repo: _
+    port:
+    container: alpine
+    tag: 3.8
+    jobs:
+      - '{repo}-{container}-{tag}-rmi'
+
+- project:
+    name: '_-alpine-3.8-pull'
+    repo: _
+    port:
+    container: alpine
+    tag: 3.8
+    jobs:
+      - '{repo}-{container}-{tag}-pull'
+
+- project:
+    name: opnfv-xtesting-{tag}-build
+    <<: *xtesting-params
+    container: xtesting
+    ref_arg: BRANCH
+    path: docker
+    jobs:
+      - '{repo}-{container}-{tag}-gate'
+      - '{repo}-{container}-{tag}-check'
+
+- job-template:
+    name: 'xtesting-{tag}-check'
+    project-type: multijob
+    parameters:
+      - xtesting-slave
+      - xtesting-branch:
+          branch: '{branch}'
+    properties:
+      - build-blocker:
+          use-build-blocker: true
+          blocking-level: 'NODE'
+          blocking-jobs:
+            - '^xtesting-.*-(daily|check|gate)$'
+    builders:
+      - multijob:
+          name: remove former images
+          projects:
+            - name: 'opnfv-xtesting-{tag}-rmi'
+              <<: *xtesting-jobs
+      - multijob:
+          name: remove dependencies
+          projects:
+            - name: '_-alpine-3.8-rmi'
+              <<: *xtesting-jobs
+      - multijob:
+          name: pull dependencies
+          projects:
+            - name: '_-alpine-3.8-pull'
+              <<: *xtesting-jobs
+      - multijob:
+          name: opnfv/functest-xtesting
+          projects:
+            - name: 'opnfv-xtesting-{tag}-check'
+              <<: *xtesting-jobs
+      - multijob:
+          name: opnfv/xtesting:{tag}
+          projects:
+            - name: 'opnfv-xtesting-{tag}-first-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-second-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-third-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-fourth-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-fifth-run'
+              <<: *xtesting-jobs
+
+- trigger:
+    name: xtesting-patchset-created
+    triggers:
+      - gerrit:
+          server-name: 'gerrit.opnfv.org'
+          trigger-on:
+            - patchset-created-event
+            - comment-added-contains-event:
+                comment-contains-value: 'recheck'
+            - comment-added-contains-event:
+                comment-contains-value: 'reverify'
+          projects:
+            - project-compare-type: 'ANT'
+              project-pattern: 'functest-xtesting'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+          skip-vote:
+            successful: false
+            failed: false
+            unstable: false
+            notbuilt: false
+
+- job-template:
+    name: 'xtesting-{tag}-gate'
+    project-type: multijob
+    triggers:
+      - xtesting-patchset-created:
+          branch: '{branch}'
+    parameters:
+      - xtesting-slave
+    properties:
+      - build-blocker:
+          use-build-blocker: true
+          blocking-level: 'NODE'
+          blocking-jobs:
+            - '^xtesting-.*-(daily|check|gate)$'
+    builders:
+      - multijob:
+          name: remove former images
+          projects:
+            - name: 'opnfv-xtesting-{tag}-rmi'
+              <<: *xtesting-jobs
+      - multijob:
+          name: remove dependencies
+          projects:
+            - name: '_-alpine-3.8-rmi'
+              <<: *xtesting-jobs
+      - multijob:
+          name: pull dependencies
+          projects:
+            - name: '_-alpine-3.8-pull'
+              <<: *xtesting-jobs
+      - multijob:
+          name: opnfv/functest-xtesting
+          projects:
+            - name: 'opnfv-xtesting-{tag}-gate'
+              <<: *xtesting-jobs
+      - multijob:
+          name: opnfv/xtesting:{tag}
+          projects:
+            - name: 'opnfv-xtesting-{tag}-first-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-second-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-third-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-fourth-run'
+              <<: *xtesting-jobs
+            - name: 'opnfv-xtesting-{tag}-fifth-run'
+              <<: *xtesting-jobs
+
+- project:
+    name: 'xtesting'
+    <<: *xtesting-params
+    jobs:
+      - 'xtesting-{tag}-daily'
+      - 'xtesting-{tag}-check'
+      - 'xtesting-{tag}-gate'
+
+- view:
+    name: xtesting
+    view-type: list
+    columns:
+      - status
+      - weather
+      - job
+      - last-success
+      - last-failure
+      - last-duration
+    regex: ^xtesting-.*-(daily|check|gate)$
index 253cfa7..63a1ecc 100644 (file)
@@ -27,7 +27,7 @@ node_list=(\
 'ericsson-pod1' 'ericsson-pod2' \
 'ericsson-virtual1' 'ericsson-virtual2'  'ericsson-virtual3' \
 'ericsson-virtual4' 'ericsson-virtual5' \
-'arm-pod5' 'arm-pod6' \
+'arm-pod5' 'arm-pod6' 'arm-pod9' 'arm-pod10' \
 'huawei-pod1' 'huawei-pod2' 'huawei-pod3' 'huawei-pod4' \
 'huawei-pod6' 'huawei-pod7' 'huawei-pod12' 'huawei-pod8' \
 'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4' \