bpt pkg

bpt pkg is a family of subcommands that can be used to create and inspect packages.

bpt pkg create

bpt pkg create will generate a CRS package from a bpt project.

--project <project-path>, -p <project-path>

Specify the filepath to a directory containing a bpt project. If not specified, the project in the working directory will be used.

--out <path>, -o <path>

Specify the filepath at which the CRS package archive file will be written. The default is a filename based on the name and version of the input package.

--if-exists {replace,ignore,fail}

Specify the behavior of bpt in case the output package file already exists. The default value is fail.

bpt pkg prefetch

bpt pkg prefetch can be used to fetch packages and package metadata from remotes so that it will be immediately available in subsequent operations.

Note

This only pulls packages into the CRS package cache (specified by bpt --crs-cache-dir). It can be used to pre-seed the package cache before subsequent operations need to pull those packages.

<pkg-id> ...

Any number of package IDs to fetch from repositories. Package IDs are of the form {name}@{version}.

--use-repo <url-or-path>, -r <url-or-path>

Specify the URL or filepath to a package repository to use for package/dependency lookup. This option can be repeated for multiple repositories. The default repository will always be available unless --no-default-repo is specified.

Only packages in any expressly-enabled repositories will be available.

--no-default-repo, -NDR

Disable the default package repository for dependency/package lookup.

This can also be enforced by setting the BPT_NO_DEFAULT_REPO environment variable to a “truthy” value.

--repo-sync {always,cached-okay,never}

Mode for repository metadata synchronization. Default is always.

always

Always try to keep the repository metadata up-to-date. If there is a failure to validate/update the repo metadata, the build fails immediately.

cached-okay

Attempt to update the repository metadata. If a low-level network error prevents such an update and we have cached metadata for the repository, ignore the error and continue.

never

Do not try to update the repository metadata. This option requires that there be a local cache of the repository metadata before being used.

If any packages need to be pulled for the build and those packages are not already locally cached, bpt will still attempt to download those packages from the repository.

Regardless of this option, the HTTP Cache-Control headers for the repository data will be respected. If repository data is within the lifetime of the max-age of the resource, bpt will not try to update the repository data.

bpt pkg solve

bpt pkg solve will attempt to generate a dependency solution from the given dependency strings specified on the command line.

The requirements will be printed as the output to the bpt command.

<requirement> ...

One or more dependency statements for which bpt will to try and generate a solution.

--use-repo <url-or-path>, -r <url-or-path>

Specify the URL or filepath to a package repository to use for package/dependency lookup. This option can be repeated for multiple repositories. The default repository will always be available unless --no-default-repo is specified.

Only packages in any expressly-enabled repositories will be available.

--no-default-repo, -NDR

Disable the default package repository for dependency/package lookup.

This can also be enforced by setting the BPT_NO_DEFAULT_REPO environment variable to a “truthy” value.

--repo-sync {always,cached-okay,never}

Mode for repository metadata synchronization. Default is always.

always

Always try to keep the repository metadata up-to-date. If there is a failure to validate/update the repo metadata, the build fails immediately.

cached-okay

Attempt to update the repository metadata. If a low-level network error prevents such an update and we have cached metadata for the repository, ignore the error and continue.

never

Do not try to update the repository metadata. This option requires that there be a local cache of the repository metadata before being used.

If any packages need to be pulled for the build and those packages are not already locally cached, bpt will still attempt to download those packages from the repository.

Regardless of this option, the HTTP Cache-Control headers for the repository data will be respected. If repository data is within the lifetime of the max-age of the resource, bpt will not try to update the repository data.