A Podman environment in which to run Tox on the diSimplex fork of PlasTeX.
Besides the Dockerfile
itself, we provide a collection of scripts
designed to automate the build, running and removal of these PlasTeX Tox
images.
All of these scripts are meant to be run in the plastex-tox
root
directory.
-
./scripts/build
uses the suppliedDockerfile
to build theplastex-tox-testeri
image. -
./scripts/run
uses theplastex-tox-testeri
image to run as a simple command line environment (using/bin/bash
) sufficient to runtox
.This script requires one command line argument, the location of the plastex code which needs to be tested.
This running container will stop when the
/bin/bash
instance is exited. -
./scripts/enter
re-enters a runningplastex-tox-testerc
container (created by the./scripts/run
script) to provide another command line environment (using/bin/bash
). -
./scripts/cleanupContainer
removes any existingplastex-tox-testerc
container. -
./scripts/cleanupImage
removes any existingplastex-tox-testeri
image.
These scripts explicitly require the Podman tools run rootlessly.
In particular, in rootless mode, the root
user inside a Podman container
maps to the user running the Podman container on the host-machine. This
makes file permissions transparent, which is why you will see that our
Dockerfile
simply uses the root
user.
To install Podman rootlessly see: Podman Installation | Podman.
For Podman's documentation see: What is Podman? — Podman documentation.
NOTE while Docker now has a rootless mode, I have no experience with using Docker.
These tools SHOULD NOT be used with a rooted Podman/Docker instance!
If you use the suggested tox
commands, the Tox results are stored in the
appropriate Python version in the toxDir
in the plastex-tox
root
directory.