ivansible.lin_rclone

ivansible.lin_rclone

Estado de Pruebas en Github Ansible Galaxy

Este rol instala rclone en Linux, crea un envoltorio de fuse para montar, configura remotos, añade entradas en fstab o unidades de montaje de systemd y activa el montador automático de systemd. También crea el grupo rclone para acceso de solo lectura a la configuración de rclone y montajes no root.

Requisitos

Ninguno

Variables

Las variables disponibles se enumeran a continuación, junto con los valores predeterminados.

lin_rclone_version: latest
lin_rclone_repo_owner: rclone
lin_rclone_upgrade: false

Establece la ubicación de descarga de rclone, permite actualizar el binario ya instalado.

lin_rclone_binary: /usr/bin/rclone
lin_rclone_config: /etc/rclone/rclone.conf

Estos dos son rara vez modificados.

lin_rclone_allow_nonroot: false
lin_rclone_group_gid: 911

Ansible creará un grupo de unix llamado rclone con el Id dado. Si allow_nonroot es verdadero, el usuario remoto se añadirá al grupo y, en consecuencia, tendrá acceso de lectura a la configuración de rclone y a montajes de rclone no root.

lin_rclone_idle_timeout: 900
lin_rclone_mount_timeout: 10
lin_rclone_vfs_cache_mode: writes
lin_rclone_dir_cache_time: 30s
lin_rclone_mount_verb: mount, cmount, mount2 o none

Estas configuraciones establecen algunas opciones específicas de montaje.

lin_rclone_bash_alias: true

Crea un alias de comando rc en el perfil del usuario.

lin_rclone_mounts: []

Lista de montajes. Cada montaje se describe mediante un diccionario que se explica a continuación.

Elemento de Montaje

name: remote

El nombre del remoto. Requerido.

path: /mnt/remote

Punto de montaje. Requerido incluso si mount es no (se eliminará de fstab y de systemd).

enabled: true

Booleano opcional, por defecto es true. Si es falso, ansible simplemente ignorará este elemento.

config: |
  type = ...
  token = [TOKEN]

Sección de remoto en texto plano que se añadirá en el archivo de configuración de rclone. La sección puede contener un marcador de posición especial [TOKEN] (literalmente), que será reemplazado por la autorización para este remoto.

token: '{json...}'

Cadena opcional que contiene el token de autorización para este remoto en formato libre. Como esto suele ser un diccionario JSON, por favor envuelve la cadena entre comillas simples para evitar problemas con el analizador YAML de Ansible.

reuse_token: false

Esto puede ser verdadero, falso, cadena vacía o el nombre de la sección en la configuración de rclone. Cuando es falso o una cadena vacía (el valor predeterminado), solo se dará el token configurado arriba al remoto (si está presente). Si esto es verdadero, ansible buscará un token anterior en la configuración y preferirá el que se encuentre. Si no se encuentra ninguno, ansible volverá al token literal anterior. El token anterior se busca por defecto en la misma sección que el nombre de este remoto, pero puedes proporcionar un nombre de sección personalizado en su lugar.

mount: true

Booleano opcional. Cuando es verdadero (el valor predeterminado), el montaje se añadirá a fstab o systemd. Cuando es falso, la entrada de montaje será eliminada (si se encuentra).

systemd: <depende de lin_rclone_prefer_systemd>

Booleano opcional, por defecto es lin_rclone_prefer_systemd. Si es verdadero, se creará una unidad de systemd. Si es falso, se añadirá una línea en fstab.

automount: false

Booleano opcional, por defecto es falso. Si es verdadero, se habilitará el montador automático de systemd para la entrada correspondiente en fstab.

nonroot: false

Normalmente, los montajes de rclone solo son accesibles por root. Si nonroot es verdadero, el montaje será accesible de solo lectura por los miembros del grupo rclone.

bglog: false

Si es verdadero, el proceso de rclone en segundo plano volcará un registro de depuración en /tmp.

proxy: proto://host:port

Proxy opcional, el protocolo es uno de http, https, socks, socks5.

Etiquetas

  • lin_rclone_install -- instalar rclone
  • lin_rclone_wrapper -- crear envoltorio de fuse para montar
  • lin_rclone_config -- añadir remotos en el archivo de configuración
  • lin_rclone_mounts -- crear entradas en fstab/systemd y configurar el montado automático
  • lin_rclone_bashrc -- crear alias de bash para rclone
  • lin_rclone_docker_plugin -- configurar el plugin de rclone en docker
  • lin_rclone_all -- todo lo anterior

Dependencias

Este rol utiliza el controlador de recargar el daemon de systemd del rol ivansible.lin_base.

Ejemplo de Playbook

- hosts: mystorage
  roles:
     - role: ivansible.lin_rclone
       lin_rclone_allow_nonroot: true
       lin_rclone_mounts:
       - name: box
         path: /mnt/box
         token: "my_box_token"
         reuse_token: another_box_section  # (o simplemente true)
         automount: true
         nonroot: true
         config: |
           type = box
           token = [TOKEN]

Licencia

MIT

Información del Autor

Creado entre 2019-2021 por IvanSible

Acerca del proyecto

install rclone on linux and create mounts

Instalar
ansible-galaxy install ivansible.lin_rclone
Licencia
Unknown
Descargas
163
Propietario
ivandeex ansible roles, molecule tests: https://galaxy.ansible.com/ivansible/