Jan Gutter c74b147fe7
CI Fixes and dependency updates
These are mostly CI fixes:

* Use podman+cri-o based minikube:
  * This is still considered experimental, but seems to be
    more supported than the 'none' driver.
* Fix an issue where ssh to the emulated static node fails:
  * PAM needed to be disabled for openssh
  * openssh needs more permissions to run - cri-o based minikube
    is more strict
* Rebase test container to Fedora 40
* Update the ingress definition to current API version
* Update zookeeper from 3.5.5 to 3.8.4:
  * required for nodepool 9.0.0+
* Update the percona operator from 1.11 to 1.14:
  * required for kubernetes 1.24+
* Update test node to Ubuntu Jammy from Ubuntu Bionic
* Update minikube to 1.33.1
* Added some more explicit logging to the k8s state, this
  could be split off into a role in future.

Depends-On: https://review.opendev.org/c/zuul/zuul-jobs/+/924970

Change-Id: I7bf27750073fa807069af6f85f2689173b278abe
2024-08-15 10:25:39 +01:00

91 lines
2.3 KiB
YAML

- name: create config directory
command: "git clone git://{{ cluster_ip }}:{{ git_server_port }}/config"
args:
chdir: "{{ git_root.path }}"
- name: copy config content
copy:
dest: "{{ git_root.path }}/config/{{ item.name }}"
content: "{{ item.content }}"
loop:
- name: zuul.yaml
content: |
- pipeline:
name: periodic
manager: independent
trigger:
timer:
- time: '* * * * * *'
- nodeset:
name: pod-fedora
nodes:
- name: container
label: pod-fedora-40
- nodeset:
name: ubuntu-focal
nodes:
- name: ubuntu-focal
label: ubuntu-focal
- job:
name: test-pod
run: test-pod.yaml
# skip zuul-base-jobs for now as it doesn't work with kubectl
roles:
- zuul: zuul/zuul-jobs
parent: null
nodeset: pod-fedora
- job:
name: test-static-node
run: test-static-node.yaml
roles:
- zuul: zuul/zuul-jobs
parent: null
nodeset: ubuntu-focal
- project:
periodic:
jobs:
- test-pod
- test-static-node
- name: test-pod.yaml
content: |
- hosts: localhost
tasks:
- name: check job volume
stat:
path: /system-dbus
register: _job_volume
failed_when: not _job_volume.stat.isdir
- hosts: container
tasks:
- include_role:
name: start-zuul-console
- debug: msg='Demo job is running on container'
- shell: id
- pause: seconds=30
- name: test-static-node.yaml
content: |
- hosts: all
tasks:
- include_role:
name: start-zuul-console
- debug: msg='Demo job is running on static node'
- shell: id
- pause: seconds=30
- name: commit config
shell: |
set -x
git add *.yaml
git commit -m 'Setup config project' || true
git push --set-upstream git://{{ cluster_ip }}:{{ git_server_port }}/config master
args:
chdir: "{{ git_root.path }}/config"