As I was re-arranging my recipe files, I needed a way to ensure that the
order of my recipe is correct without having to read through the
generated `Containerfile`. So I added a `-d`/`--display-full-recipe` arg
to `template` that will print out all of your modules in the order
defined by following the `from-file` property.
```
$> bluebuild template --help
Generate a Containerfile from a recipe
Usage: bluebuild template [OPTIONS] [RECIPE]
Arguments:
[RECIPE]
The recipe file to create a template from
Options:
-o, --output <OUTPUT>
File to output to instead of STDOUT
--registry <REGISTRY>
The registry domain the image will be published to.
This is used for modules that need to know where the image is being published (i.e. the signing module).
--registry-namespace <REGISTRY_NAMESPACE>
The registry namespace the image will be published to.
This is used for modules that need to know where the image is being published (i.e. the signing module).
-d, --display-full-recipe
Instead of creating a Containerfile, display the full recipe after traversing all `from-file` properties.
This can be used to help debug the order you defined your recipe.
-t, --syntax-theme <SYNTAX_THEME>
Choose a theme for the syntax highlighting for the Containerfile or Yaml.
The default is `mocha-dark`.
[possible values: mocha-dark, ocean-dark, ocean-light, eighties-dark, inspired-github, solarized-dark, solarized-light]
-s, --squash
Puts the build in a `squash-stage` and COPY's the results to the final stage as one layer.
WARN: This doesn't work with the docker driver as it has been deprecated.
NOTE: Squash has a performance benefit for the newer versions of podman and buildah.
-B, --build-driver <BUILD_DRIVER>
Select which driver to use to build your image
[possible values: buildah, podman, docker]
-v, --verbose...
Increase logging verbosity
-I, --inspect-driver <INSPECT_DRIVER>
Select which driver to use to inspect images
[possible values: skopeo, podman, docker]
-q, --quiet...
Decrease logging verbosity
-h, --help
Print help (see a summary with '-h')
```
Preview of Containerfile/Dockerfile syntax highlighting:

Preview of Yaml highlighting:

37 lines
785 B
TOML
37 lines
785 B
TOML
[package]
|
|
name = "blue-build-utils"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
description.workspace = true
|
|
repository.workspace = true
|
|
license.workspace = true
|
|
|
|
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
|
|
|
|
[dependencies]
|
|
atty = "0.2.14"
|
|
directories = "5"
|
|
process_control = { version = "4.0.3", features = ["crossbeam-channel"] }
|
|
syntect = "5.2.0"
|
|
which = "6"
|
|
|
|
anyhow.workspace = true
|
|
chrono.workspace = true
|
|
colored.workspace = true
|
|
env_logger.workspace = true
|
|
format_serde_error.workspace = true
|
|
log.workspace = true
|
|
serde.workspace = true
|
|
serde_yaml.workspace = true
|
|
serde_json.workspace = true
|
|
|
|
[dependencies.clap]
|
|
workspace = true
|
|
features = ["derive"]
|
|
|
|
[build-dependencies]
|
|
syntect = "5.2.0"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|