-
Notifications
You must be signed in to change notification settings - Fork 221
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
.zuul, playbooks: Run the CI on Arch Linux #1588
base: main
Are you sure you want to change the base?
Conversation
0242889
to
ae7f071
Compare
/cc @Foxboron |
Cool, this looks good to me |
ae7f071
to
9d882b5
Compare
recheck |
recheck |
Updated image once again. |
recheck |
recheck |
nodes: | ||
- name: arch | ||
label: arch-linux | ||
pre-run: playbooks/arch/setup.yaml |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
so if something will fail in pre-run, you might have RETRY_LIMIT.
Maybe try to do:
- 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
run:
- playbooks/arch/setup.yaml
- playbooks/system-test-commands-options.yaml
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It was intentional to use pre-run
for downloads that can fail due to passing network problems, outdated caches, etc..
We use zuul.attempts > 1
to decide if the DNF cache needs to be forcibly updated on Fedora Rawhide nodes, or to resolve problems arising from the DNF5 transition.
Downloading the Go modules is another thing that has proven to be flaky and benefits from this. It's still not 100% robust, but a lot more than what it used to be.
9d882b5
to
f5d4e0c
Compare
@Foxboron It seems that installing Podman or Toolbx on an Arch Linux host doesn't install We had recently removed Users with Podman containers and images that predate the use of the Linux kernel's overlay file system still need Another problem is if Podman is supposed to be usable on a live media that itself uses the Linux kernel's This led to a discussion that ended up restoring It's fine to drop |
be501ee
to
565b46e
Compare
565b46e
to
7b7b8a9
Compare
7b7b8a9
to
1ac6b53
Compare
1ac6b53
to
e8315a1
Compare
This is a step towards running the CI on Arch Linux. containers#1438
e8315a1
to
6491082
Compare
6491082
to
eed02a8
Compare
The arch | not ok 3 network: /etc/resolv.conf inside the default container
arch | # tags: arch-fedora runtime-environment
arch | # (from function `assert_line' in file test/system/libs/bats-assert/src/assert.bash, line 488,
arch | # in test file test/system/203-network.bats, line 72)
arch | # `assert_line --index 0 "/run/host/etc/resolv.conf"' failed
arch | # ~ ~/src/github.com/containers/toolbox
arch | #
arch | # -- line differs --
arch | # index : 0
arch | # expected : /run/host/etc/resolv.conf
arch | # actual : /run/host/run/systemd/resolve/stub-resolv.conf
arch | # --
arch | #
...
...
arch | not ok 36 ulimit: real-time non-blocking time (hard)
arch | # tags: arch-fedora runtime-environment
arch | # (from function `assert_line' in file test/system/libs/bats-assert/src/assert.bash, line 488,
arch | # in test file test/system/210-ulimit.bats, line 45)
arch | # `assert_line --index 0 "$limit"' failed
arch | #
arch | # -- line differs --
arch | # index : 0
arch | # expected : unlimited
arch | # actual :
arch | # --
arch | # I might have to install an Arch Linux host to see how things are on the host. |
eed02a8
to
f900585
Compare
f789d30
to
bb1d09c
Compare
Some Arch Linux hosts have /etc/resolv.conf as an absolute symbolic link to /run/systemd/resolve/stub-resolv.conf, instead of being a relative symbolic link to ../run/systemd/resolve/stub-resolv.conf or a regular file. eg., the images built by arch-boxes [1]. This changes the target that the Toolbx container's /etc/resolv.conf points at and confuses the tests [2]. Ideally, these host operating systems should be fixed to use relative symbolic links. This is highlighted by skipping the tests, because there's no point in failing them until that happens. This is a step towards running the CI on Arch Linux. [1] https://gitlab.archlinux.org/archlinux/arch-boxes https://geo.mirror.pkgbuild.com/images/latest/ [2] Commit 88a95b0 containers@88a95b07af335be2 containers#187 containers#1438
bb1d09c
to
4d72443
Compare
The problem with I have now added a note to the Toolbx tests to detect such cases without failing. I will send a merge request to |
There's also this failure that I didn't notice before: arch | not ok 7 network: DNS inside the default container
arch | # tags: arch-fedora runtime-environment
arch | # (from function `assert_success' in file test/system/libs/bats-assert/src/assert.bash, line 114,
arch | # in test file test/system/203-network.bats, line 228)
arch | # `assert_success' failed
arch | # ~ ~/src/github.com/containers/toolbox
arch | #
arch | # -- command failed --
arch | # status : 127
arch | # output :
arch | # --
arch | # |
I need to context switch from this for a few days. So, I have merged the finished patches from this pull request through #1597 |
There was already an attempt to change ... but it had to be reverted: |
#1438