Apk Operations

Manage apk packages.

Facts used in these operations: apk.ApkPackages.

apk.packages

Add/remove/update apk packages.

apk.packages(
    packages: str | list[str] | None=None, present=True, latest=False, update=False,
    upgrade=False, **kwargs,
)
  • packages: list of packages to ensure
  • present: whether the packages should be installed
  • latest: whether to upgrade packages without a specified version
  • update: run apk update before installing packages
  • upgrade: run apk upgrade before installing packages
Versions:
Package versions can be pinned like apk: <pkg>=<version>.

Examples:

# Update package list and install packages
apk.packages(
    name="Install Asterisk and Vim",
    packages=["asterisk", "vim"],
    update=True,
)

# Install the latest versions of packages (always check)
apk.packages(
    name="Install latest Vim",
    packages=["vim"],
    latest=True,
)
Note:
This operation also inherits all global arguments.

apk.update

Stateless operation

This operation will always execute commands and is not idempotent.

Updates apk repositories.

apk.update(**kwargs)
Note:
This operation also inherits all global arguments.

apk.upgrade

Stateless operation

This operation will always execute commands and is not idempotent.

Upgrades all apk packages.

apk.upgrade(available: bool=False, **kwargs)
  • available: force all packages to be upgraded (recommended on whole Alpine version upgrades)
Note:
This operation also inherits all global arguments.