Skip to content

e2e tests: run with podman as well as docker - #178

Open
krishnapermi wants to merge 1 commit into
apple:mainfrom
krishnapermi:add-podman-e2e-tests
Open

krishnapermi wants to merge 1 commit into
apple:mainfrom
krishnapermi:add-podman-e2e-tests

Conversation

@krishnapermi

Copy link
Copy Markdown

Closes #52

Adds podman as a second container runtime to the end-to-end test matrix, alongside the existing docker jobs.

Changes

  • Add runtime: [docker, podman] as a new matrix dimension in endtoend_tests.yml
  • Add a "Configure podman to allow the local registry" step (runs only when matrix.runtime == 'podman') that registers localhost:5000 as an insecure registry in /etc/containers/registries.conf.d/. Podman rejects plain-HTTP registries by default, so this step is necessary for the local registry:2 service used in CI.
  • Replace the hardcoded docker run in the "Run the example" step with ${{ matrix.runtime }} run, so the same step exercises both runtimes.

The step name also includes ${{ matrix.runtime }} to make it easy to distinguish docker vs podman runs in the Actions UI.

I spotted this while looking through the open issue list after submitting previous PRs. Podman is pre-installed on ubuntu-latest, and since the test already pushes to a local registry and pulls from it at run time, switching the pull/run step to use podman should be a faithful compatibility check with no other changes needed.

@euanh
euanh self-requested a review September 7, 2026 08:04
@euanh
euanh force-pushed the add-podman-e2e-tests branch from e26e3b4 to da82486 Compare September 7, 2026 08:32
# Podman rejects insecure registries by default, so we register
# localhost:5000 as a trusted insecure source.
sudo mkdir -p /etc/containers/registries.conf.d
printf '[registries.insecure]\nregistries = ["localhost:5000"]\n' | \

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like this is an older configuration format which doesn't match the rest of the podman configuration:

Error: loading drop-in registries configuration "/etc/containers/registries.conf.d/local-registry.conf": registry must be in v2 format but is in v1

@euanh euanh added semver/none No version bump required. area/testing Improvements to tests. labels Sep 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/testing Improvements to tests. semver/none No version bump required.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

End to end tests should use podman as well as docker

2 participants