Build Xtesting 2023.1 VM
[releng.git] / jjb / functest / xtesting-ci.yaml
index 57c62c4..e8b0222 100644 (file)
@@ -4,35 +4,47 @@
     builders:
       - shell: |
           set +x
-          curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.11.1/kind-linux-amd64
+          sudo apt-get -o DPkg::Lock::Timeout=300 update
+          sudo DEBIAN_FRONTEND=noninteractive apt-get \
+            -o DPkg::Lock::Timeout=300 install python3-pip docker.io -y
+          curl -Lo ./kind https://kind.sigs.k8s.io/dl/v0.17.0/kind-linux-amd64
           chmod +x ./kind
           sudo mv ./kind /usr/local/bin/kind
-          kind delete clusters xtesting jenkins gitlab | true
-          sudo docker ps -aq |xargs sudo docker stop | true
-          sudo docker ps -aq |xargs sudo docker rm | true
+          kind delete clusters xtesting jenkins gitlab || true
+          sudo docker ps -aq |xargs sudo docker stop || true
+          sudo docker ps -aq |xargs sudo docker rm || true
+          sudo docker system prune -f --all || true
           sudo rm -f /etc/systemd/system/docker.service.d/http-proxy.conf
           sudo systemctl daemon-reload
           sudo systemctl restart docker
-          sudo rm -rf /data/*
-          sudo pip3 install ansible
-          ansible-galaxy install -f collivier.xtesting
+          sudo rm -rfv /data
+          sudo apt-get install ansible -y
+          rm -rf ~/.ansible/roles/collivier.xtesting
+          case {release} in
+          stable)
+            ansible-galaxy install -f collivier.xtesting ;;
+          *)
+            ansible-galaxy install -f git+https://github.com/collivier/ansible-role-xtesting.git,{release}
+            mv ~/.ansible/roles/ansible-role-xtesting ~/.ansible/roles/collivier.xtesting ;;
+          esac
+          (cd ~/.ansible/roles/collivier.xtesting; patch -p1 < tests/docker_config_json.patch)
           ansible-galaxy collection install -f -r ~/.ansible/roles/collivier.xtesting/requirements.yml
-          ansible-playbook -vv ~/.ansible/roles/collivier.xtesting/tests/{playbook}.yml
+          ansible-playbook -vvvv ~/.ansible/roles/collivier.xtesting/tests/{playbook}.yml
 
 - parameter:
-    name: xtesting-ci-slave
+    name: xtesting-ci-node
     parameters:
       - label:
-          name: slave
-          default: '{slave}'
+          name: node
+          default: '{node}'
 
 - job-template:
-    name: 'xtesting-ci-tests-{playbook}'
+    name: 'xtesting-ci-tests-{release}-{playbook}'
     triggers:
       - timed: '@daily'
     parameters:
-      - xtesting-ci-slave:
-          slave: '{slave}'
+      - xtesting-ci-node:
+          node: '{node}'
     properties:
       - build-blocker:
           use-build-blocker: true
     builders:
       - xtesting-ci-tests:
           playbook: '{playbook}'
+          release: '{release}'
 
 - project:
     name: xtesting-ci-tests
-    slave: lf-virtual1
+    node: xtestingci
     playbook:
       - all
       - proxy
@@ -59,6 +72,7 @@
       - jjb
       - gitlab.insert
       - jenkins_kind
+      - jenkins_kind2
       - gitlab_kind
       - chainedci
       - kubernetes0
       - k8s_gitlab_kind1
       - k8s_gitlab_kind2
       - k8s_gitlab_kind3
+    release:
+      - stable
+      - master
     jobs:
-      - 'xtesting-ci-tests-{playbook}'
+      - 'xtesting-ci-tests-{release}-{playbook}'
 
 - view:
     name: xtesting-ci