Skip to content

feat: add containerized test runner with runc.sh and Dockerfile#3391

Merged
mkoura merged 1 commit intomasterfrom
tests_in_container
Apr 7, 2026
Merged

feat: add containerized test runner with runc.sh and Dockerfile#3391
mkoura merged 1 commit intomasterfrom
tests_in_container

Conversation

@mkoura
Copy link
Copy Markdown
Collaborator

@mkoura mkoura commented Apr 7, 2026

  • Introduce runner/runc.sh script to build and run tests inside a container using podman or docker, with support for Alpine, NixOS, Ubuntu, Debian, and Mint images.
  • Add runner/Dockerfile and runner/entrypoint.sh to set up the container environment, including Nix profile sourcing and command execution.
  • Update README with instructions for running tests in a container, including usage examples and options.
  • Add procps to devShells.base in flake.nix for improved shell compatibility.

@mkoura mkoura requested a review from saratomaz as a code owner April 7, 2026 10:01
@mkoura mkoura requested review from Copilot and removed request for saratomaz April 7, 2026 10:06
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a containerized test runner to make it easier to execute the repository’s regression tests in a consistent Linux environment (via podman/docker), while keeping existing Nix-based workflows intact.

Changes:

  • Introduces runner/runc.sh to build/run a test container (with distro selection and optional host /nix bind-mount).
  • Adds runner/Dockerfile + runner/entrypoint.sh to provision bash/coreutils and bootstrap Nix inside the container before executing test commands.
  • Updates README.md with container usage instructions and extends flake.nix dev shell inputs (procps).

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
runner/runc.sh New container build/run wrapper with distro selection, repo mounting, and .bin compatibility checks.
runner/entrypoint.sh Container entrypoint that configures Nix and executes the requested command inside the mounted repo.
runner/Dockerfile Minimal image wrapper to ensure bash/coreutils exist and install the entrypoint.
README.md Adds “Running Tests in a Container” documentation and examples.
flake.nix Adds procps to devShells.base inputs.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@mkoura mkoura force-pushed the tests_in_container branch from 82f8db7 to b79e211 Compare April 7, 2026 13:03
- Introduce `runner/runc.sh` script to build and run tests inside a container using podman or docker, with support for Alpine, NixOS, Ubuntu, Debian, and Mint images.
- Add `runner/Dockerfile` and `runner/entrypoint.sh` to set up the container environment, including Nix profile sourcing and command execution.
- Update README with instructions for running tests in a container, including usage examples and options.
- Add `procps` to devShells.base in flake.nix for improved shell compatibility.
@mkoura mkoura force-pushed the tests_in_container branch from b79e211 to 5e1eb01 Compare April 7, 2026 13:15
@mkoura mkoura merged commit 6745dd3 into master Apr 7, 2026
2 checks passed
@mkoura mkoura deleted the tests_in_container branch April 7, 2026 13:34
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants