03922893af
Currently, 'meson compile' and 'meson install' were being invoked from pre-run playbooks. This meant that a genuine build failure from either of those commands would be shown as a RETRY_LIMIT failure by the CI. This was misleading. It made it look as if the failure was caused by some transient networking problem or that the CI node was too slow due to momentary heavy load, whereas the failure was actually due to a problem in the Toolbx sources. A genuine problem in the sources should be reflected as a FAILURE, not RETRY_LIMIT. However, it's worth noting that 'meson compile' invokes 'go build', which downloads all the Go modules required by the Toolbx sources. This is worth retaining in the pre-run playbooks since it primarily depends on Internet infrastructure beyond the Toolbx sources. As a nice side-effect, the CI no longer gets mysteriously stuck like this while the Go modules are being downloaded: TASK [Build Toolbox] ci-node-36 | ninja: Entering directory `/home/zuul-worker/src/github.com/containers/toolbox/builddir' ... ci-node-36 | [8/13] Generating doc/toolbox-rmi.1 with a custom command ci-node-36 | [9/13] Generating doc/toolbox-run.1 with a custom command ci-node-36 | [10/13] Generating doc/toolbox.conf.5 with a custom command ci-node-36 | [11/13] Generating src/toolbox with a custom command https://github.com/containers/toolbox/pull/1158
41 lines
936 B
YAML
41 lines
936 B
YAML
- name: Install requirements
|
|
become: yes
|
|
package:
|
|
use: dnf
|
|
name:
|
|
- ShellCheck
|
|
- bash-completion
|
|
- bats
|
|
- flatpak-session-helper
|
|
- golang
|
|
- golang-github-cpuguy83-md2man
|
|
- httpd-tools
|
|
- meson
|
|
- ninja-build
|
|
- openssl
|
|
- podman
|
|
- skopeo
|
|
- systemd
|
|
- udisks2
|
|
|
|
- name: Download Go modules
|
|
shell: |
|
|
go mod download -x
|
|
args:
|
|
chdir: '{{ zuul.project.src_dir }}/src'
|
|
|
|
- name: Setup submodules
|
|
shell: |
|
|
git submodule init
|
|
git submodule update
|
|
args:
|
|
chdir: '{{ zuul.project.src_dir }}'
|
|
|
|
- name: Check versions of crucial packages
|
|
command: rpm -qa *kernel* *glibc* golang podman conmon containernetworking-plugins containers-common container-selinux crun runc fuse-overlayfs flatpak-session-helper
|
|
|
|
- name: Show podman versions
|
|
command: podman version
|
|
|
|
- name: Show podman debug information
|
|
command: podman info --debug
|