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

Note

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

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 Choices/Defaults Comments
clean
boolean
    Choices:
  • no ←
  • yes
Clean packages cache
force
boolean
    Choices:
  • no ←
  • yes
Force package reinstall
full_upgrade
boolean
    Choices:
  • no ←
  • yes
Upgrade all packages to their newer versions
name
list / elements=string
Name of package to install/remove;
multiple names may be given, separated by commas

aliases: pkg
state
string
    Choices:
  • present ←
  • absent
Intended state of the package
update_cache
boolean
    Choices:
  • no ←
  • yes
Update repository database. Can be run with other steps or on it's own.
upgrade
boolean
    Choices:
  • no ←
  • yes
Upgrade main packages to their newer versions

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)