Skip to main content

Build apps with buildpacks and Dagger

Project description

bpcli

Uses Dagger Python SDK to build an app with buildpacks and pushes the built image to a registry.

bpcli calls the Cloud Native Buildpacks lifecycle commands from within a builder container to build or rebase images.

It does not rely on the Pack CLI.

Also bpcli does not require Docker, if a buildkit daemon is available. This has currently been tested with Podman.

Install

pip install bpcli

Usage

Build

Usage: bpcli build [OPTIONS] IMAGE

  Generate app image from source code using the provided image name.

Options:
  --builder TEXT             Builder image  [default:
                             paketobuildpacks/builder:base]
  --path TEXT                Path to app dir  [default: .]
  --log-level TEXT           Log level  [default: info]
  --docker-config-json TEXT  Path to docker config json file with registry
                             credentials
  --env TEXT                 Set an environment variable
  --help                     Show this message and exit.

Examples

bpcli build --path=/path/to/your/go/app <your image name>

Build a PHP application using the paketo full builder, with debug logs, registry authentication and report containing the image tag and digest:

bpcli build \
  --path=/path/to/your/php/app \
  --builder=paketobuildpacks/builder:full \
  --log-level=debug foo/bar \
  --docker-config-json=$HOME/.docker/config.json > report.toml

Adding environment variables:

bpcli build --path=/path/to/your/app foo/bar --env FOO=bar --env BAR=foo

Rebase

Usage: bpcli rebase [OPTIONS] IMAGE

  Rebase app image.

Options:
  --builder TEXT             Builder image  [default:
                             paketobuildpacks/builder:base]
  --log-level TEXT           Log level  [default: info]
  --docker-config-json TEXT  Path to docker config json file with registry
                             credentials
  --help                     Show this message and exit.

Example

bpcli rebase --log-level=debug --docker-config-json=$HOME/.docker/config.json foo/bar

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bpcli-0.3.0.tar.gz (3.8 kB view details)

Uploaded Source

Built Distribution

bpcli-0.3.0-py3-none-any.whl (4.3 kB view details)

Uploaded Python 3

File details

Details for the file bpcli-0.3.0.tar.gz.

File metadata

  • Download URL: bpcli-0.3.0.tar.gz
  • Upload date:
  • Size: 3.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for bpcli-0.3.0.tar.gz
Algorithm Hash digest
SHA256 32394e4416b6af5a045acbddfdc8d5448016fc916c38dae31395031e019c40cc
MD5 be327c7cea24025336f013bd1faab6ab
BLAKE2b-256 f3f33a3d49c00aa9fb854dcff6fbda8368b6af4465f2cdfa4e4a7e6978b35c44

See more details on using hashes here.

File details

Details for the file bpcli-0.3.0-py3-none-any.whl.

File metadata

  • Download URL: bpcli-0.3.0-py3-none-any.whl
  • Upload date:
  • Size: 4.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for bpcli-0.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3f1cff0bf287bdf3ca9a8e9e077be21c7f4e9575de4dddd719098e9bcd1e83ce
MD5 7ed0bd1a597995168b8be647d8bdb216
BLAKE2b-256 e7fbe330b8005150bd65477a23442b4cd3a791f38a8e1211f2a5e1eddab7379e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page