community.general.pkgin – Package manager for SmartOS, NetBSD, et al.

Note

This plugin is part of the community.general collection (version 3.8.3).

You might already have this collection installed if you are using the ansible package. It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general.

To use it in a playbook, specify: community.general.pkgin.

Synopsis

  • The standard package manager for SmartOS, but also usable on NetBSD or any OS that uses pkgsrc. (Home: http://pkgin.net/)

Parameters

Parameter

Comments

clean

boolean

Clean packages cache

Choices:

  • no ← (default)

  • yes

force

boolean

Force package reinstall

Choices:

  • no ← (default)

  • yes

full_upgrade

boolean

Upgrade all packages to their newer versions

Choices:

  • no ← (default)

  • yes

name

aliases: pkg

list / elements=string

Name of package to install/remove;

multiple names may be given, separated by commas

state

string

Intended state of the package

Choices:

  • present ← (default)

  • absent

update_cache

boolean

Update repository database. Can be run with other steps or on it’s own.

Choices:

  • no ← (default)

  • yes

upgrade

boolean

Upgrade main packages to their newer versions

Choices:

  • no ← (default)

  • yes

Notes

Note

  • Known bug with pkgin < 0.8.0: if a package is removed and another package depends on it, the other package will be silently removed as well. New to Ansible 1.9: check-mode support.

Examples

- name: Install package foo
  community.general.pkgin:
    name: foo
    state: present

- name: Install specific version of foo package
  community.general.pkgin:
    name: foo-2.0.1
    state: present

- name: Update cache and install foo package
  community.general.pkgin:
    name: foo
    update_cache: yes

- name: Remove package foo
  community.general.pkgin:
    name: foo
    state: absent

- name: Remove packages foo and bar
  community.general.pkgin:
    name: foo,bar
    state: absent

- name: Update repositories as a separate step
  community.general.pkgin:
    update_cache: yes

- name: Upgrade main packages (equivalent to pkgin upgrade)
  community.general.pkgin:
    upgrade: yes

- name: Upgrade all packages (equivalent to pkgin full-upgrade)
  community.general.pkgin:
    full_upgrade: yes

- name: Force-upgrade all packages (equivalent to pkgin -F full-upgrade)
  community.general.pkgin:
    full_upgrade: yes
    force: yes

- name: Clean packages cache (equivalent to pkgin clean)
  community.general.pkgin:
    clean: yes

Authors

  • Larry Gilbert (@L2G)

  • Shaun Zinck (@szinck)

  • Jasper Lievisse Adriaanse (@jasperla)