cans.package-install

cans.package-install

Build Status Ansible Galaxy License

This is a simple Ansible Role to install a list of Debian packages (.deb files).

The purpose of this role is to keep things straightforward and efficient. It allows you to install packages easily by just providing a list.

Requirements

You need to use this role on servers running a Debian-based system.

Role Variables

All variables in this role start with the pkginstall_ prefix.

This role has some internal variables that begin with _pkginstall_, which you should not use.

Input variables

To use this role, you need to set either or both of these variables:

  • pkginstall_packages: DEPRECATED Use pkginstall_packages_present instead (default: []);
  • pkginstall_packages_present: list of package names to install on the target server(s) (default: []);
  • pkginstall_packages_absent: list of package names to remove from the target server(s) (default: []);

Defaults

  • pkginstall_apt_package_list_cache_directory: where to keep the package lists (default: "/var/lib/apt/lists");
  • pkginstall_cache_ttl: how long to keep the package cache valid (default: 3600 seconds);
  • pkginstall_cache_update: whether to update the package cache before installation (default: true);
  • pkginstall_purge: remove configuration files when deleting packages (default: true);
  • pkginstall_recommended: whether to install recommended packages too (default: false);
  • pkginstall_update_cache: DEPRECATED use pkginstall_cache_update instead (default: true).

Dependencies

There are no formal dependencies for this role, but you need to set the pkginstall_packages variable for it to do anything.

You might also want to use the cans.package-source role to add extra package repositories.

Example Playbooks

If you have two roles, first_role and second_role, each with a list of packages, you can combine their lists like this:

- hosts: servers
  vars:
    pkginstall_packages: "{{ first_role_packages + second_role_packages }}"
  roles:
    - role: cans.package-install
    - role: first_role
    - role: second_role

If you can't install all packages at once, do it in steps:

- hosts: servers
  roles:
    - role: cans.package-install
      pkginstall_packages: "{{ first_role_packages }}"
    - role: first_role
    - role: cans.package-install
      pkginstall_packages: "{{ second_role_packages }}"
    - role: second_role

Make sure Ansible has the right permissions to install packages. If needed, use remote_user and become:

- hosts: servers
  remote_user: "privileged-user"
  vars:
    pkginstall_packages: "{{ first_role_packages + second_role_packages }}"
  roles:
    - role: cans.package-install
      become: yes
    - role: first_role
    - role: second_role

License

GPLv2

Author Information

Copyright © 2017-2018, Nicolas CANIART.

Informazioni sul progetto

Simple Ansible Role that installs a given list of Debian packages (`.deb`).

Installa
ansible-galaxy install cans.package-install
Licenza
gpl-2.0
Download
536
Proprietario