A Bash script which uses Cloud Native Buildpacks and Podman to create a runnable app image from source code.
bpsh
calls the CNB lifecycle
commands from within a builder
container to build or rebase images.
It does not rely on the Pack CLI nor Docker.
wget https://raw.githubusercontent.com/jfhovinne/bpsh/master/bpsh && chmod +x bpsh
$ bpsh
bpsh - A shell script for building apps using Cloud Native Buildpacks and Podman
Usage:
bpsh COMMAND
bpsh [COMMAND] --help | -h
bpsh --version | -v
Commands:
build Create a runnable app image from source code
rebase Rebase app image with latest run image
$ bpsh build --help
bpsh build - Create a runnable app image from source code
Alias: b
Usage:
bpsh build IMAGE [OPTIONS]
bpsh build --help | -h
Options:
--help, -h
Show this help
--path, -p PATH
Path to app dir
Default: .
--builder, -B BUILDER
Builder image
Default: docker.io/paketobuildpacks/builder
--authfile AUTHFILE
Path to file containing registry credentials
--env, -e ENV (repeatable)
Set an environment variable
Arguments:
IMAGE
The name of the image that will be built
Examples:
bpsh build foo/goapp --path /path/to/foo/goapp
bpsh build bar/phpapp --builder docker.io/paketobuildpacks/builder:full
bpsh build foo/bar --authfile $HOME/.docker/config.json
bpsh build bar/foo --env FOO=bar --env BAR=foo
$ bpsh rebase --help
bpsh rebase - Rebase app image with latest run image
Alias: r
Usage:
bpsh rebase IMAGE [OPTIONS]
bpsh rebase --help | -h
Options:
--help, -h
Show this help
--builder, -B BUILDER
Builder image
Default: docker.io/paketobuildpacks/builder
--authfile AUTHFILE
Path to file containing registry credentials
Arguments:
IMAGE
The name of the image to rebase
Examples:
bpsh rebase foo/bar --authfile $HOME/.docker/config.json