Create-metapackage#

Description#

Creates a metapackage containing only dependencies to other packages, with no files of its own.

The create-metapackage command creates packages that contain only dependencies to other packages, with no files of their own.

Instead of installing packages into a worktree and calling create, create-metapackage simplifies this by directly specifying package names, versions, repository paths, and their relative locations in the metapackage.

Metapackages can reference multiple repositories and servers. Consumers need access to all referenced repositories, or alternatively, use mirror with dependencies to transport everything to a single location.

Note that the metapackage is a normal wrapp package, the only difference is that it is created with an empty catalog of itself having only dependencies to other packages that were already created.

For CLI options, run wrapp create-metapackage --help.

Python API Reference#

async wrapp.create_metapackage(
package_name: str,
version: str,
repo: str,
content: DependencySet,
*,
context: CommandParameters | None = None,
scheduler: SchedulerContext | None = None,
) None#

Creates a metapackage containing only dependencies to other packages, with no files of its own.

Parameters:
  • package_name – Name of the package to create

  • version – Version of the package to create, can be any string identifier

  • repo – URL of the repository where to create the package

  • content – DependencySet containing the dependencies that should become part of the metapackage

  • context – Global configuration parameters

  • scheduler – Optionally pre-constructed SchedulerContext. When calling many functions in a row make sure to pre-construct the scheduler.

Raises:
  • FailedCommand – When prerequisites not matched

  • StorageOperationError – Raised when network or file operations fail