The Bundler CNB provides the Bundler binary.
The buildpack installs Bundler onto the $PATH
and $GEM_PATH
which makes it available for subsequent buildpacks
and/or in the final running container.
The Bundler CNB provides bundler as a dependency. Downstream buildpacks can require the bundler dependency by generating a Build Plan TOML file that looks like the following:
[[requires]]
# The name of the Bundler dependency is "bundler". This value is considered
# part of the public API for the buildpack and will not change without a plan
# for deprecation.
name = "bundler"
# The Bundler buildpack supports some non-required metadata options.
[requires.metadata]
# Use `version` to request a specific version of `bundler`.
# This buildpack supports specifying a semver constraint in the form of "2.*", "2.1.*",
# or even "2.1.4".
# Optional, defaults to the latest version of `bundler` found in the `buildpack.toml` file.
version = "2.1.4"
# When `build` is true, this buildpack will ensure that `bundler` is available
# on the `$PATH` and `$GEM_PATH` for later buildpacks.
# Optional, default false.
build = true
# When `launch` is true, this buildpack will ensure that `bundler` is available
# on the `$PATH` and `$GEM_PATH` for the running application.
# Optional, default false.
launch = true
To package this buildpack for consumption:
$ ./scripts/package.sh
This builds the buildpack's Go source using GOOS=linux by default. You can supply another value as the first argument to package.sh.
Specifying the Bundler
version through buildpack.yml
configuration will be
deprecated in Bundler Buildpack v1.0.0.
To migrate from using buildpack.yml
please set the $BP_BUNDLER_VERSION
environment variable at build time either directly (ex. pack build my-app --env BP_BUNDLER_VERSION=2.7.*
) or through a project.toml
file
$BP_BUNDLER_VERSION="2.1.4"
This will replace the following structure in buildpack.yml
:
bundler:
version: 2.1.4
To configure the level of log output from the buildpack itself, set the
$BP_LOG_LEVEL
environment variable at build time either directly (ex. pack build my-app --env BP_LOG_LEVEL=DEBUG
) or through a project.toml
file
If no value is set, the default value of INFO
will be used.
The options for this setting are:
INFO
: (Default) log information about the progress of the build processDEBUG
: log debugging information about the progress of the build process
$BP_LOG_LEVEL="DEBUG"
This buildpack is currently only supported on the Paketo Bionic and Jammy stack
distributions. A pre-compiled distribution of Bundler is provided for the Paketo stacks (i.e.
io.buildpacks.stack.jammy
and io.buildpacks.stacks.bionic
).