cans.package-install

cans.package-install

Estado de Construcción Ansible Galaxy Licencia

Rol de Ansible simple que instala una lista dada de paquetes de Debian (.deb).

La intención de este rol no es ofrecer muchas funcionalidades. Es más un método minimalista, pero eficiente y reutilizable, para instalar paquetes. Es básicamente un procedimiento que, al recibir una lista de paquetes, los instala.

Requisitos

Este rol no tiene pre-requisitos particulares. Pero asume que el(los) servidor(es) objetivo utilizan la distribución Debian o un derivado.

Variables del Rol

Todas las variables en este rol están nombradas con el prefijo pkginstall_.

Este rol también define variables para su uso interno. Estas están precedidas por _pkginstall_. No debes usar esas variables.

Variables de entrada

Para que este rol ejecute cualquier tarea, debes definir ya sea o ambas de las variables pkginstall_packages_absent y pkginstall_packages_present.

  • pkginstall_packages: OBSOLETA Usa pkginstall_packages_present en su lugar (predeterminado: []);
  • pkginstall_packages_present: una lista de nombres de paquetes que deben estar instalados en el(los) host(s) objetivo (predeterminado: []);
  • pkginstall_packages_absent: una lista de nombres de paquetes que deben no estar instalados en el(los) host(s) objetivo (predeterminado: []);

Predeterminados

  • pkginstall_apt_package_list_cache_directory: ruta al directorio que almacena listas de paquetes disponibles y listas de contenido de paquetes. Esta variable solo es necesaria si estableces pkginstall_cache_purge en true (ver más abajo). Es muy poco probable que necesites cambiar esto. (predeterminado: "/var/lib/apt/lists")
  • pkginstall_cache_ttl: duración de validez de la caché de paquetes, en segundos (predeterminado: 3600)
  • pkginstall_cache_update: si se debe actualizar la caché de paquetes o no antes de instalar paquetes (predeterminado: true)
  • pkginstall_purge: al eliminar paquetes, también eliminar sus archivos de configuración (predeterminado: true);
  • pkginstall_recommended: si se deben instalar paquetes recomendados junto con los paquetes explícitamente listados para instalación (predeterminado: false).
  • pkginstall_update_cache: OBSOLETO usa pkginstall_cache_update en su lugar (predeterminado: true)

Dependencias

Este rol no tiene dependencias formales. Pero requiere que sobreescribas la variable pkginstall_packages para realizar cualquier acción (cf. ejemplo de libro de jugadas a continuación).

También puede interesarte usar el rol cans.package-source en conjunto con este, para agregar repositorios de paquetes adicionales a los ya conocidos por APT.

Ejemplos de Libros de Jugadas

Supongamos que tienes dos roles, first_role y second_role, cada uno de los cuales define una variable que contiene una lista de paquetes a instalar, digamos first_role_packages y second_role_packages, respectivamente. Entonces, para usar este rol, comenzamos asignando la variable pkginstall_packages con la concatenación de ambas listas. Luego solo necesitas llamar al rol.

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

Si por alguna razón no puedes instalar todos los paquetes a la vez (por ejemplo, porque first_role instala o configura algo necesario antes de poder instalar los paquetes requeridos por second_role):

- 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

Los ejemplos anteriores asumen que Ansible se conecta a los servidores objetivo con una identidad que tiene suficientes privilegios para instalar paquetes. Si no, es posible que debas utilizar uno o ambos de los términos remote_user y become:

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

Licencia

GPLv2

Información del Autor

Copyright © 2017-2018, Nicolas CANIART.

Acerca del proyecto

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

Instalar
ansible-galaxy install cans.package-install
Licencia
gpl-2.0
Descargas
536
Propietario