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
installdirectory, which will be copied into/installwithin the container, but which will be removed from the final image - they must provide an executable
/install/install.sh - they must install
/usr/bin/tiniandjustexecutables within the container - they must provide
/usr/local/bin/docker-entrypointexecutable 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"
Metadata
Release files for justin-runner 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| justin_runner-0.1.0.tar.gz | 22.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| justin_runner-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 47.1 kB
Release files / justin_runner-0.1.0.tar.gz
| Download URL | justin_runner-0.1.0.tar.gz |
|---|---|
| Size | 22.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7e519c801c1576b5d5399fa4ccfe1f2b096007d832dbce589a59a6319acab75a
|
|
BLAKE2b-256 checksum How to use checksums |
d37fc3d594c9a8a2f09f018e7b2e4e08d36e98e62d5a94a614c8631e00ad1c0a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.5.1 CPython/3.11.6 Linux/6.5.0-4-amd64
|
Release files / justin_runner-0.1.0-py3-none-any.whl
| Download URL | justin_runner-0.1.0-py3-none-any.whl |
|---|---|
| Size | 24.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3b4f636999bcb34bbe8e727b18d3c9a164b44b434f9a1569ec223f180578b00b
|
|
BLAKE2b-256 checksum How to use checksums |
985614d9fdff708088093c499285cdad748ff2f4a089f1aaceb5f61f9c2f9b63
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.5.1 CPython/3.11.6 Linux/6.5.0-4-amd64
|