blob: 431f27f0d0d7fa57d82a6fce8729e56e0b9ad3ac (
plain) (
tree)
|
|
# =========================================================================== #
# __ __ __ _
# _________ / /__ _______ ______ _____/ /_/ /_ (_)___ ____ _
# / ___/ __ \/ / _ \ / ___/ / / / __ \/ ___/ __/ __ \/ / __ \/ __ `/
# / / / /_/ / / __/ (__ ) /_/ / / / / /__/ /_/ / / / / / / / /_/ /
# /_/ \____/_/\___(_) /____/\__, /_/ /_/\___/\__/_/ /_/_/_/ /_/\__, /
# /____/ /____/
#
# =========================================================================== #
---
- name: Add group syncthing
group:
name: "{{ syncthing_user }}"
state: present
- name: Add user syncthing
user:
name: "{{ syncthing_user }}"
comment: "{{ syncthing_group }}"
group: "{{ syncthing_group }}"
- name: Create syncthing bin directory
file:
path: "{{ syncthing_bin_directory }}"
state: directory
owner: "{{ syncthing_user }}"
group: "{{ syncthing_group }}"
mode: 0755
recurse: True
- name: Create syncthing sync directory
file:
path: "{{ syncthing_files_directory }}"
state: directory
owner: "{{ syncthing_user }}"
group: "{{ syncthing_group }}"
mode: 0755
recurse: True
- name: Download and extract syncthing archive
become_user: syncthing
unarchive:
src: "{{ syncthing_download_url }}/{{ syncthing_version }}/syncthing-{{ syncthing_os }}-{{ syncthing_architecture }}-{{ syncthing_version }}.tar.gz"
dest: "{{ syncthing_download_directory }}"
remote_src: yes
- name: Copy syncthing bin
copy:
src: "{{ syncthing_download_directory }}/syncthing-{{ syncthing_os }}-{{ syncthing_architecture }}-{{ syncthing_version }}/syncthing"
remote_src: yes
dest: "{{ syncthing_bin_directory }}"
owner: "{{ syncthing_user }}"
group: "{{ syncthing_group }}"
mode: 0744
- name: Copy syncthing systemd unit
template:
src: "{{ syncthing_daemon_unit }}.service"
dest: "{{ g_systemd_unit_directory }}"
owner: root
group: root
mode: 0644
- name: Start syncthing systemd unit
systemd:
name: "{{ syncthing_daemon_unit }}"
state: restarted
daemon_reload: yes
- name: Stop syncthing systemd unit
systemd:
name: "{{ syncthing_daemon_unit }}"
state: stopped
- name: Config networking
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: /configuration/gui/address
value: "0.0.0.0:{{ g_port_syncthing_gui }}"
- name: Config clear directory path
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: "/configuration/folder/@path"
state: present
- name: Config directory path
replace:
path: "{{ syncthing_config_directory }}/config.xml"
regexp: "path=\"\""
replace: "path=\"{{ syncthing_files_directory }}\""
- name: Config disable relay
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: /configuration/options/relaysEnabled
value: "{{ syncthing_b_relays }}"
- name: Config disable global announcements
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: /configuration/options/globalAnnounceEnabled
value: "{{ syncthing_b_global_announcements }}"
- name: Config disable nat
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: /configuration/options/natEnabled
value: "{{ syncthing_b_nat }}"
- name: Config disable crash reporting
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: /configuration/options/crashReportingEnabled
value: "{{ syncthing_b_crash_reporting }}"
- name: Config disable browser autostart
xml:
path: "{{ syncthing_config_directory }}/config.xml"
xpath: /configuration/options/startBrowser
value: "{{ syncthing_b_start_browser }}"
- name: Start and enable syncthing systemd unit
systemd:
name: "{{ syncthing_daemon_unit }}"
state: restarted
daemon_reload: yes
enabled: yes
|