Publish Functest VM to jerma
[releng.git] / jjb / functest / xtesting-ci-vm.yaml
index 2146677..d8798ec 100644 (file)
@@ -3,41 +3,9 @@
     name: xtesting-ci-vm-scm
     scm:
       - git:
-          url: https://github.com/collivier/ansible-role-xtesting.git
-          branches:
-            - master
-          git-config-name:
-          git-config-email:
-
-- scm:
-    name: xtesting-vm-scm
-    scm:
-      - git:
-          url: https://git.opnfv.org/functest-xtesting.git
-          branches:
-            - master
-          git-config-name:
-          git-config-email:
-
-- scm:
-    name: functest-vm-scm
-    scm:
-      - git:
-          url: https://git.opnfv.org/functest.git
-          branches:
-            - master
-          git-config-name:
-          git-config-email:
-
-- scm:
-    name: functest-kubernetes-vm-scm
-    scm:
-      - git:
-          url: https://git.opnfv.org/functest-kubernetes.git
+          url: '{url}'
           branches:
-            - master
-          git-config-name:
-          git-config-email:
+            - '{ref}'
 
 - builder:
     name: xtesting-ci-vm-builder
           sudo apt-get -o DPkg::Lock::Timeout=300 update && \
           DEBIAN_FRONTEND=noninteractive sudo apt-get \
             -o DPkg::Lock::Timeout=300 install python3-diskimage-builder -y
-          export ELEMENTS_PATH=$(pwd)/elements
-          disk-image-create --image-size 20 -o xtestingci-4.1.0.qcow2 debian vm xtestingci
-          gsutil cp xtestingci-4.1.0.qcow2 gs://artifacts.opnfv.org/xtestingci/xtestingci-4.1.0.qcow2
-
-
-- builder:
-    name: xtesting-vm-builder
-    builders:
-      - shell: |
-          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
-          echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
-            /etc/apt/sources.list.d/google-cloud-sdk.list
-          sudo apt-get -o DPkg::Lock::Timeout=300 update && \
-          DEBIAN_FRONTEND=noninteractive sudo apt-get \
-            -o DPkg::Lock::Timeout=300 install python3-diskimage-builder -y
-          git clone https://github.com/collivier/ansible-role-xtesting.git
-          export ELEMENTS_PATH=$(pwd)/elements:$(pwd)/ansible-role-xtesting/elements
-          disk-image-create --image-size 20 -o xtesting-latest.qcow2 debian vm xtesting
-          gsutil cp xtesting-latest.qcow2 gs://artifacts.opnfv.org/xtesting/xtesting-latest.qcow2
-
-- builder:
-    name: functest-vm-builder
-    builders:
-      - shell: |
-          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
-          echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
-            /etc/apt/sources.list.d/google-cloud-sdk.list
-          sudo apt-get -o DPkg::Lock::Timeout=300 update && \
-          DEBIAN_FRONTEND=noninteractive sudo apt-get \
-            -o DPkg::Lock::Timeout=300 install python3-diskimage-builder -y
-          git clone https://github.com/collivier/ansible-role-xtesting.git
-          export ELEMENTS_PATH=$(pwd)/elements:$(pwd)/ansible-role-xtesting/elements
-          disk-image-create --image-size 20 -o functest-latest.qcow2 debian vm functest
-          gsutil cp functest-latest.qcow2 gs://artifacts.opnfv.org/functest/functest-latest.qcow2
-
-- builder:
-    name: functest-kubernetes-vm-builder
-    builders:
-      - shell: |
-          curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
-          echo "deb https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee \
-            /etc/apt/sources.list.d/google-cloud-sdk.list
-          sudo apt-get -o DPkg::Lock::Timeout=300 update && \
-          DEBIAN_FRONTEND=noninteractive sudo apt-get \
-            -o DPkg::Lock::Timeout=300 install python3-diskimage-builder -y
-          git clone https://github.com/collivier/ansible-role-xtesting.git
-          export ELEMENTS_PATH=$(pwd)/elements:$(pwd)/ansible-role-xtesting/elements
-          export DIB_APT_MINIMAL_CREATE_INTERFACES=0
-          disk-image-create --image-size 20 -o functest-kubernetes-latest.qcow2 \
-            debian vm functest-kubernetes
-          gsutil cp functest-kubernetes-latest.qcow2 \
-            gs://artifacts.opnfv.org/functest-kubernetes/functest-kubernetes-latest.qcow2
+          if [ "{project}" == "xtestingci" ]; then
+            export ELEMENTS_PATH=$(pwd)/elements
+          else
+            git init ansible-role-xtesting
+            (cd ansible-role-xtesting &&
+              git fetch --tags https://github.com/collivier/ansible-role-xtesting.git {role-version} &&
+              git checkout FETCH_HEAD)
+            export ELEMENTS_PATH=$(pwd)/elements:$(pwd)/ansible-role-xtesting/elements
+          fi
+          export DIB_XTESTINGCI_VERSION={role-version}
+          disk-image-create --image-size 20 -o {project}-{version}.qcow2 debian vm {project}
+          gsutil cp {project}-{version}.qcow2 gs://artifacts.opnfv.org/{project}/{project}-{version}.qcow2
+          rm -rf {project}-{version}.qcow2 {project}-{version}.d
 
 - trigger:
     name: xtesting-ci-vm-trigger
           default: 'opnfv-build'
 
 - job-template:
-    name: 'xtesting-ci-vm'
+    name: '{project}-{version}-vm'
     scm:
-      - xtesting-ci-vm-scm
+      - xtesting-ci-vm-scm:
+          url: '{url}'
+          ref: '{ref}'
     triggers:
       - xtesting-ci-vm-trigger
     parameters:
           blocking-jobs:
             - '^.*-vm$'
     builders:
-      - xtesting-ci-vm-builder
-
-- job-template:
-    name: 'xtesting-vm'
-    scm:
-      - xtesting-vm-scm
-    triggers:
-      - xtesting-ci-vm-trigger
-    parameters:
-      - xtesting-ci-vm-parameter
-    builders:
-      - xtesting-vm-builder
-
-- job-template:
-    name: 'functest-vm'
-    scm:
-      - functest-vm-scm
-    triggers:
-      - xtesting-ci-vm-trigger
-    parameters:
-      - xtesting-ci-vm-parameter
-    builders:
-      - functest-vm-builder
-
-- job-template:
-    name: 'functest-kubernetes-vm'
-    scm:
-      - functest-kubernetes-vm-scm
-    triggers:
-      - xtesting-ci-vm-trigger
-    parameters:
-      - xtesting-ci-vm-parameter
-    builders:
-      - functest-kubernetes-vm-builder
+      - xtesting-ci-vm-builder:
+          project: '{project}'
+          version: '{version}'
+          role-version: '{role-version}'
 
 - project:
     name: 'xtesting-ci-vm'
+    project:
+      - xtestingci:
+          url: https://github.com/collivier/ansible-role-xtesting.git
+      - xtesting:
+          url: https://git.opnfv.org/functest-xtesting.git
+      - functest:
+          url: https://git.opnfv.org/functest.git
+      - functest-kubernetes:
+          url: https://git.opnfv.org/functest-kubernetes.git
+    version:
+      - latest:
+          ref: master
+          role-version: master
+      - '2023.1':
+          ref: stable/2023.1
+          role-version: master
+      - zed:
+          ref: stable/zed
+          role-version: master
+      - yoga:
+          ref: stable/yoga
+          role-version: master
+      - xena:
+          ref: stable/xena
+          role-version: master
+      - wallaby:
+          ref: stable/wallaby
+          role-version: master
+      - leguer:
+          ref: stable/leguer
+          role-version: master
+      - kali:
+          ref: stable/kali
+          role-version: master
+      - jerma:
+          ref: stable/jerma
+          role-version: master
+      - v1.26:
+          ref: stable/v1.26
+          role-version: master
+      - v1.25:
+          ref: stable/v1.25
+          role-version: master
+      - v1.24:
+          ref: stable/v1.24
+          role-version: master
+      - v1.23:
+          ref: stable/v1.23
+          role-version: master
+      - v1.22:
+          ref: stable/v1.22
+          role-version: master
+    exclude:
+      - project: xtestingci
+        version: '2023.1'
+      - project: functest
+        version: '2023.1'
+      - project: functest-kubernetes
+        version: '2023.1'
+      - project: xtestingci
+        version: zed
+      - project: functest-kubernetes
+        version: zed
+      - project: xtestingci
+        version: yoga
+      - project: functest-kubernetes
+        version: yoga
+      - project: xtestingci
+        version: xena
+      - project: functest-kubernetes
+        version: xena
+      - project: xtestingci
+        version: wallaby
+      - project: functest-kubernetes
+        version: wallaby
+      - project: xtestingci
+        version: leguer
+      - project: xtesting
+        version: leguer
+      - project: functest-kubernetes
+        version: leguer
+      - project: xtestingci
+        version: kali
+      - project: xtesting
+        version: kali
+      - project: functest-kubernetes
+        version: kali
+      - project: xtestingci
+        version: jerma
+      - project: xtesting
+        version: jerma
+      - project: functest-kubernetes
+        version: jerma
+      - project: xtestingci
+        version: v1.26
+      - project: functest
+        version: v1.26
+      - project: functest-xtesting
+        version: v1.26
+      - project: xtestingci
+        version: v1.25
+      - project: functest
+        version: v1.25
+      - project: functest-xtesting
+        version: v1.25
+      - project: xtestingci
+        version: v1.24
+      - project: functest
+        version: v1.24
+      - project: functest-xtesting
+        version: v1.24
+      - project: xtestingci
+        version: v1.23
+      - project: functest
+        version: v1.23
+      - project: functest-xtesting
+        version: v1.23
+      - project: xtestingci
+        version: v1.22
+      - project: functest
+        version: v1.22
+      - project: functest-xtesting
+        version: v1.22
     jobs:
-      - 'xtesting-ci-vm'
-      - 'xtesting-vm'
-      - 'functest-vm'
-      - 'functest-kubernetes-vm'
+      - '{project}-{version}-vm'
 
 - view:
     name: xtesting-ci-vm