ci-test/ci/validate.yaml
2024-08-30 20:20:19 +02:00

97 lines
3.7 KiB
YAML

- hosts: all
tasks:
- name: Upgrade all packages
ansible.builtin.dnf:
name: "*"
state: latest
become: true
- name: Install dependencies
package:
name:
- 'jq'
- 'just'
- 'ostree'
- 'python3-pyyaml'
- 'rpm-ostree'
- 'selinux-policy-targeted'
state: present
become: true
- name: Validate manifests and scripts syntax
ansible.builtin.command:
chdir: "{{ zuul.project.src_dir }}"
cmd: just validate
- name: Verify that the comps and manifests are synced
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just validate comps-sync-check && touch .zuulci.comps"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Silverblue
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run silverblue && touch .zuulci.silverblue"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Silverblue (ostree classic)
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run silverblue-ostree && touch .zuulci.silverblue-ostree"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Kinoite
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run kinoite && touch .zuulci.kinoite"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Kinoite (ostree classic)
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run kinoite-ostree && touch .zuulci.kinoite-ostree"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Sway Atomic
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run sway-atomic && touch .zuulci.sway-atomic"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Sway Atomic (ostree classic)
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run sway-atomic-ostree && touch .zuulci.sway-atomic-ostree"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Budgie Atomic
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run budgie-atomic && touch .zuulci.budgie-atomic"
# Still run the next step if this one fails
ignore_errors: true
- name: Perform dependency resolution for Budgie Atomic (ostree classic)
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "just compose-dry-run budgie-atomic-ostree && touch .zuulci.budgie-atomic-ostree"
# Still run the next step if this one fails
ignore_errors: true
- name: Compose the base variant
ansible.builtin.command:
chdir: "{{ zuul.project.src_dir }}"
cmd: just compose-image base-atomic
- name: Check if any previous dependency resolution steps failed
ansible.builtin.shell:
chdir: "{{ zuul.project.src_dir }}"
cmd: "[[ -f .zuulci.comps ]] && [[ -f .zuulci.silverblue ]] && [[ -f .zuulci.silverblue-ostree ]] && [[ -f .zuulci.kinoite ]] && [[ -f .zuulci.kinoite-ostree ]] && [[ -f .zuulci.sway-atomic ]] && [[ -f .zuulci.sway-atomic-ostree ]] && [[ -f .zuulci.budgie-atomic ]] && [[ -f .zuulci.budgie-atomic-ostree ]]"