Add rclone role

This commit is contained in:
Ryan Cavicchioni 2019-11-10 15:36:23 -06:00
parent 0779fbabef
commit fd344fd385
Signed by: ryanc
GPG Key ID: 877EEDAF9245103D
5 changed files with 63 additions and 0 deletions

View File

@ -0,0 +1,9 @@
---
rclone_package_name: rclone
rclone_package_state: present
rclone_config_path: /etc/rclone
rclone_config: []
rclone_cron: []

View File

@ -0,0 +1,5 @@
---
- name: install package
apt:
deb: "{{ rclone_package_url }}"

View File

@ -0,0 +1,41 @@
---
- name: gather OS specific variables
include_vars: "{{ item }}"
with_first_found:
- "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yaml"
- "{{ ansible_distribution }}.yaml"
- "{{ ansible_os_family }}.yaml"
- name: OS specific tasks
include: "{{ item }}"
with_first_found:
- "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yaml"
- "{{ ansible_distribution }}.yaml"
- "{{ ansible_os_family }}.yaml"
- name: create configuration directory
file:
path: "{{ rclone_config_path }}"
state: directory
- name: configure
template:
src: rclone.conf.j2
dest: "{{ rclone_config_path }}/{{ item.name }}.conf"
owner: "{{ item.owner | default('root') }}"
group: "{{ item.group | default('root') }}"
mode: "{{ item.mode | default('0600') }}"
with_items: "{{ rclone_config }}"
- name: cron jobs
cron:
name: "{{ item.name }}"
user: "{{ item.user | default('root') }}"
minute: "{{ item.minute | default(omit) }}"
hour: "{{ item.hour | default(omit) }}"
day: "{{ item.day | default(omit) }}"
month: "{{ item.month | default(omit) }}"
weekday: "{{ item.weekday | default(omit) }}"
job: "{{ item.job }}"
state: "{{ item.state | default('present') }}"
with_items: "{{ rclone_cron }}"

View File

@ -0,0 +1,6 @@
# {{ ansible_managed }}
[{{ item.name }}]
type = {{ item.type }}
account = {{ item.account }}
key = {{ item.key }}

View File

@ -0,0 +1,2 @@
---
rclone_package_url: https://downloads.rclone.org/v1.50.1/rclone-v1.50.1-linux-amd64.deb