Runner for 'just' commands inside a container
Project description
justin
Run just commands inside a container.
Installation
System-wide:
$ just install
User:
$ just install ~/.local
Running just
$ justin --workspace . just ...
$ justin --workspace . --copy just ...
$ justin \
-E podman \
-F ci
-w . \
-v ./artifacts:/artifacts\
just -f ci.justfile somestage
Building images
Default image:
$ justin build
Flavors
$ justin --flavor minimal build
$ justin --flavor ci build
$ justin -F /path/to/my/flavor build
justin supports a concept of "flavors", which is a way to customize how images are built. justin ships with the following flavors:
minimal
(default one) - creates a minimal image viable for running just commands.ci
- creates a bigger image with some tools preinstalled, more suitable for continuous integration systems.
You may also point justin to a the directory with a custom flavor, which is located outside of the original build context. justin will copy and use your flavor.
During build flavors are copied to /install directory within a built container.
Flavors have the following requirements:
- they must provide a Flavor Configuration File (see below)
- inside a flavor directory there must be an
install
directory, which will be copied into/install
within the container, but which will be removed from the final image - they must provide an executable
/install/install.sh
- they must install
/usr/bin/tini
andjust
executables within the container - they must provide
/usr/local/bin/docker-entrypoint
executable within the container, which will be used as container entrypoint
Flavor Configuration File
Each flavor must provide a flavor.toml
file with [build.args]
section.
Each field from the [build.args]
section will be used as a --build-arg
during the build. In case of name conflicts between build args in flavor.toml
and --build-arg
passed in command line, command line ones have priority.
Example:
[build.args]
FROM_IMAGE = "debian"
FROM_TAG = "trixie-slim"
VENDOR = "John Doe's Company"
AUTHORS = "John Doe"
VERSION = "1.0"
ARCH = "x86-64"
DESCRIPTION = "One image to rule them all"
JUST_EXECUTABLE = "just"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for justin_runner-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3b4f636999bcb34bbe8e727b18d3c9a164b44b434f9a1569ec223f180578b00b |
|
MD5 | 751236c6eb2cf9996dc67e4b9be3e761 |
|
BLAKE2b-256 | 985614d9fdff708088093c499285cdad748ff2f4a089f1aaceb5f61f9c2f9b63 |