GRM-158: Fix rootless Docker 29 setup on Arch Linux runners #243

Merged
emo merged 3 commits from GRM-158-rootless-docker-29-arch-fixes into master 2026-08-05 23:57:28 +00:00
Member
No description provided.
emo reviewed 2026-08-05 22:35:11 +00:00
emo left a comment
Owner

Automated PR Review

  • Architecture compliance: OK
  • Best practices: OK
  • Security: OK
  • i18n: OK
  • Resource management: OK
  • Documentation: WARNING — Ansible role changed but no docs updated
  • Tests: OK
  • Commit conventions: OK

No issues found by automated checks.


Auto-merge: If all CI checks pass, this PR will be merged automatically.

## Automated PR Review - Architecture compliance: OK - Best practices: OK - Security: OK - i18n: OK - Resource management: OK - Documentation: WARNING — Ansible role changed but no docs updated - Tests: OK - Commit conventions: OK No issues found by automated checks. --- **Auto-merge:** If all CI checks pass, this PR will be merged automatically.
emo reviewed 2026-08-05 23:38:39 +00:00
emo left a comment
Owner

Automated PR Review

  • Architecture compliance: OK
  • Best practices: OK
  • Security: OK
  • i18n: OK
  • Resource management: OK
  • Documentation: WARNING — Ansible role changed but no docs updated
  • Tests: OK
  • Commit conventions: OK

No issues found by automated checks.


Auto-merge: If all CI checks pass, this PR will be merged automatically.

## Automated PR Review - Architecture compliance: OK - Best practices: OK - Security: OK - i18n: OK - Resource management: OK - Documentation: WARNING — Ansible role changed but no docs updated - Tests: OK - Commit conventions: OK No issues found by automated checks. --- **Auto-merge:** If all CI checks pass, this PR will be merged automatically.
emil approved these changes 2026-08-05 23:46:43 +00:00
Dismissed
emil left a comment
Owner

Auto-approved: all CI checks passed (validate, molecule-tests).

Auto-approved: all CI checks passed (validate, molecule-tests).
emo added 3 commits 2026-08-05 23:46:54 +00:00
Five fixes for rootless Docker setup on Arch Linux runners:

1. Write daemon.json (with containerd-snapshotter: false) BEFORE running
   dockerd-rootless-setuptool.sh, so Docker 29 starts with overlay2 from
   the very first boot instead of containerd snapshots.

2. Add DBUS_SESSION_BUS_ADDRESS to all systemctl --user tasks. Without it,
   systemctl --user fails with "Connection refused" on Arch Linux where
   the D-Bus session bus isn't auto-discovered.

3. Fix pre-configure override port driver: use 'builtin' for slirp4netns
   and 'implicit' only for pasta. The previous unconditional 'implicit'
   caused dockerd to exit immediately on slirp4netns hosts.

4. Fix prune timer schedule from '*-* * */6:00:00' (invalid) to
   '*-*-* 00/6:00:00' (every 6 hours, valid systemd calendar spec).

5. Add explicit Docker 29→28 downgrade task for Debian/Ubuntu using
   version-pinned apt install with allow_downgrades.

Closes GRM-158

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Rootless Docker cannot set RLIMIT_NOFILE to 1048576 on all hosts
(notably Arch Linux with Docker 29), causing container creation to
fail with "error setting rlimit type 7: operation not permitted".
65536 is a safe value that works across all supported platforms.

Closes GRM-158

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
fix(ansible): remove Docker 28.x pin/downgrade in gitea_runner
CI / validate (pull_request) Successful in 1m38s
CI / molecule-tests (2) (pull_request) Successful in 3m42s
CI / molecule-tests (3) (pull_request) Successful in 3m50s
CI / molecule-tests (4) (pull_request) Successful in 4m10s
CI / molecule-tests (6) (pull_request) Successful in 5m19s
CI / molecule-tests (1) (pull_request) Successful in 5m32s
CI / molecule-tests (5) (pull_request) Successful in 7m33s
CI / auto-merge (pull_request) Successful in 1m14s
bdb6521d2a
Docker 28.x packages are not available for recent Ubuntu releases
(e.g. 26.04/plucky) in the official Docker APT repo. Keep installing
the latest Docker and rely on daemon.json to disable the containerd
snapshotter and set a conservative nofile ulimit for rootless mode.

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
emo force-pushed GRM-158-rootless-docker-29-arch-fixes from cc374f8b2e to bdb6521d2a 2026-08-05 23:46:54 +00:00 Compare
emo reviewed 2026-08-05 23:48:31 +00:00
emo left a comment
Owner

Automated PR Review

  • Architecture compliance: OK
  • Best practices: OK
  • Security: OK
  • i18n: OK
  • Resource management: OK
  • Documentation: WARNING — Ansible role changed but no docs updated
  • Tests: OK
  • Commit conventions: OK

No issues found by automated checks.


Auto-merge: If all CI checks pass, this PR will be merged automatically.

## Automated PR Review - Architecture compliance: OK - Best practices: OK - Security: OK - i18n: OK - Resource management: OK - Documentation: WARNING — Ansible role changed but no docs updated - Tests: OK - Commit conventions: OK No issues found by automated checks. --- **Auto-merge:** If all CI checks pass, this PR will be merged automatically.
emil approved these changes 2026-08-05 23:57:21 +00:00
emil left a comment
Owner

Auto-approved: all CI checks passed (validate, molecule-tests).

Auto-approved: all CI checks passed (validate, molecule-tests).
emo merged commit 179e47bbb2 into master 2026-08-05 23:57:28 +00:00
emo deleted branch GRM-158-rootless-docker-29-arch-fixes 2026-08-05 23:57:30 +00:00
Sign in to join this conversation.
No Reviewers
3 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: oblachno-oss/grm#243