Skip to content

Commit

Permalink
.zuul, playbooks: Run the CI on Arch Linux
Browse files Browse the repository at this point in the history
  • Loading branch information
debarshiray committed Nov 17, 2024
1 parent f900585 commit eed02a8
Show file tree
Hide file tree
Showing 4 changed files with 133 additions and 0 deletions.
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@
/images/arch @Foxboron
/images/rhel @debarshiray @olivergs
/images/ubuntu @Jmennius
/playbooks/arch @Foxboron
42 changes: 42 additions & 0 deletions .zuul.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,39 @@
pre-run: playbooks/setup-env-restricted.yaml
run: playbooks/unit-test.yaml

- job:
name: system-test-arch-commands-options
description: Run Toolbx's commands-options system tests on Arch Linux
timeout: 6300
nodeset:
nodes:
- name: arch
label: arch-linux
pre-run: playbooks/arch/setup.yaml
run: playbooks/system-test-commands-options.yaml

- job:
name: system-test-arch-runtime-environment-arch-fedora
description: Run Toolbx's (arch-fedora,runtime-environment) system tests on Arch Linux
timeout: 6300
nodeset:
nodes:
- name: arch
label: arch-linux
pre-run: playbooks/arch/setup.yaml
run: playbooks/system-test-runtime-environment-arch-fedora.yaml

- job:
name: system-test-arch-runtime-environment-ubuntu
description: Run Toolbx's (runtime-environment,ubuntu) system tests on Arch Linux
timeout: 6300
nodeset:
nodes:
- name: arch
label: arch-linux
pre-run: playbooks/arch/setup.yaml
run: playbooks/system-test-runtime-environment-ubuntu.yaml

- job:
name: system-test-fedora-rawhide-commands-options
description: Run Toolbx's commands-options system tests in Fedora Rawhide
Expand Down Expand Up @@ -183,6 +216,9 @@
- project:
periodic:
jobs:
- system-test-arch-commands-options
- system-test-arch-runtime-environment-arch-fedora
- system-test-arch-runtime-environment-ubuntu
- system-test-fedora-rawhide-commands-options
- system-test-fedora-rawhide-runtime-environment-arch-fedora
- system-test-fedora-rawhide-runtime-environment-ubuntu
Expand All @@ -200,6 +236,9 @@
- unit-test
- unit-test-migration-path-for-coreos-toolbox
- unit-test-restricted
- system-test-arch-commands-options
- system-test-arch-runtime-environment-arch-fedora
- system-test-arch-runtime-environment-ubuntu
- system-test-fedora-rawhide-commands-options
- system-test-fedora-rawhide-runtime-environment-arch-fedora
- system-test-fedora-rawhide-runtime-environment-ubuntu
Expand All @@ -217,6 +256,9 @@
- unit-test
- unit-test-migration-path-for-coreos-toolbox
- unit-test-restricted
- system-test-arch-commands-options
- system-test-arch-runtime-environment-arch-fedora
- system-test-arch-runtime-environment-ubuntu
- system-test-fedora-rawhide-commands-options
- system-test-fedora-rawhide-runtime-environment-arch-fedora
- system-test-fedora-rawhide-runtime-environment-ubuntu
Expand Down
65 changes: 65 additions & 0 deletions playbooks/arch/dependencies.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
#
# Copyright © 2024 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

- name: Install Arch Linux packages
become: yes
package:
name:
- apache
- bash-completion
- bats
- codespell
- crun
- fish
- flatpak
- gcc
- go
- go-md2man
- meson
- ninja
- openssl
- pkgconf
- podman
- shadow
- shellcheck
- skopeo
- systemd
- udisks2
update_cache: "{{ true if zuul.attempts > 1 else false }}"

- name: Download Go modules
command: go mod download -x
args:
chdir: '{{ zuul.project.src_dir }}/src'

- name: Initialize Git submodules
command: git submodule init
args:
chdir: '{{ zuul.project.src_dir }}'

- name: Update Git submodules
command: git submodule update
args:
chdir: '{{ zuul.project.src_dir }}'

- name: Check versions of crucial packages
command: pacman --query bash bats codespell conmon containers-common crun flatpak gcc glibc go go-md2man linux podman shadow shellcheck skopeo

- name: Show Podman version
command: podman version

- name: Show Podman related system information
command: podman info --debug
25 changes: 25 additions & 0 deletions playbooks/arch/setup.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#
# Copyright © 2021 – 2024 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

---
- hosts: all
tasks:
- include_tasks: dependencies.yaml

- name: Set up build directory
command: meson setup --fatal-meson-warnings builddir
args:
chdir: '{{ zuul.project.src_dir }}'

0 comments on commit eed02a8

Please sign in to comment.