Add rclone role
This commit is contained in:
5
roles/rclone/tasks/Debian.yaml
Normal file
5
roles/rclone/tasks/Debian.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
---
|
||||
- name: install package
|
||||
apt:
|
||||
deb: "{{ rclone_package_url }}"
|
||||
|
41
roles/rclone/tasks/main.yaml
Normal file
41
roles/rclone/tasks/main.yaml
Normal 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 }}"
|
Reference in New Issue
Block a user