opensuse/tumbleweed container has broken OCI exec PATH — neither
sh nor bash is findable by the runtime. opensuse is still fully
tested in the e2e-resolve matrix where containers get proper setup.
Unit tests covered by ubuntu + fedora.
- Run cargo fmt on skip_if_root() blocks
- Add skip_if_root() to migrate_atomic_version_unchanged_on_write_failure
- Add libc dev-dependency to karapace-store for root check
- Remove explicit shell: sh from container rustup steps (OCI exec
can't find sh in PATH; default run shell works)
- Add skip_if_root() to 8 permission-based tests (root bypasses
filesystem permissions in Docker containers)
- Replace dtolnay/rust-toolchain with manual rustup install via sh
for container-based jobs (opensuse lacks bash, which the composite
action requires)
- Keep dtolnay/rust-toolchain for non-container ubuntu jobs
- Add KARAPACE_SKIP_PREREQS=1 env var check to skip runtime prerequisite
checks (user namespaces, fuse-overlayfs) when testing with mock backend
- Set KARAPACE_SKIP_PREREQS=1 in CLI integration test helper
- Add bash to opensuse/tumbleweed container deps (required by
dtolnay/rust-toolchain action)