L-P.syncthing

ansible-role-syncthing

Zainstaluj Syncthing.

Wymagania

Dystrybucja oparta na Debianie, dostęp root lub become na zdalnym hoście.
Zapoznaj się z dokumentacją Syncthing
aby sprawdzić, które porty należy otworzyć. Konfiguracja zapory ogniowej nie jest obsługiwana w tej roli.

Zmienne roli

Wszystkie zmienne są opcjonalne.
Jedynym sposobem na ustawienie opcji Syncthing jest edytowanie pliku config.xml, zobacz
sekcję Przykładowy Playbook po szczegóły.

# Jeśli repozytorium/klucz się zmienia lub chcesz hostować własne, zmień te:
syncthing_apt_key_id:
syncthing_apt_key_url:
syncthing_apt_repository:

# Jeśli chcesz zmienić nazwę użytkownika Syncthing lub jego katalog domowy:
syncthing_user:
syncthing_user_home:

# Ustaw na false, jeśli nie chcesz, aby rola tworzyła i zarządzała użytkownikiem.
# Musisz ręcznie stworzyć użytkownika określonego w syncthing_user
# _przed_ użyciem roli.
syncthing_manage_user:

# Ustaw na true, aby pobrać konfigurację Syncthing z zdalnego hosta,
# zobacz sekcję Przykładowy Playbook.
syncthing_fetch_config:

# Gdzie będą zapisywane pobrane pliki.
syncthing_fetch_dir:

# Zawartość plików konfiguracyjnych
syncthing_config_cert:
syncthing_config_key:
syncthing_config_https_cert:
syncthing_config_https_key:
syncthing_config_config:

Zależności

Brak.

Przykładowy Playbook

# Zainstaluj Syncthing
- hosts: servers
  roles:
    - { role: l-p.syncthing }

Konfiguracja Syncthing jest dynamiczna i edytowana w czasie rzeczywistym za pomocą GUI.
Musisz pobrać konfigurację z hosta i zapisać ją w zmiennych syncthing_config_*, jeśli chcesz
zachować ją w bezpieczny sposób i upewnić się, że to jest rzeczywista konfiguracja na serwerze, gdy
następnym razem uruchomisz rolę.

Niepobranie konfiguracji przed ponownym uruchomieniem roli oznacza, że
wszystkie nowe urządzenia/ foldery/ konfiguracja zostaną usunięte z zdalnego hosta.

Jeśli nie ustawisz zmiennych syncthing_config_*, nic nie zostanie nadpisane,
ale stracisz swoją konfigurację, jeśli Twój serwer sam się zrujnuje.

# Pobierz wygenerowaną konfigurację
- hosts: servers
  roles:
    - { role: l-p.syncthing, syncthing_fetch_config: true }

Możesz użyć lookup, aby odczytać pliki i ustawić zmienne:

syncthing_config_cert: "{{lookup('file', 'files/{{ inventory_hostname }}/home/syncthing/.config/syncthing/cert.pem')}}"
syncthing_config_key: "{{lookup('file', 'files/{{ inventory_hostname }}/home/syncthing/.config/syncthing/key.pem')}}"
syncthing_config_https_cert: "{{lookup('file', 'files/{{ inventory_hostname }}/home/syncthing/.config/syncthing/https-cert.pem')}}"
syncthing_config_https_key: "{{lookup('file', 'files/{{ inventory_hostname }}/home/syncthing/.config/syncthing/https-key.pem')}}"
syncthing_config_config: "{{lookup('file', 'files/{{ inventory_hostname }}/home/syncthing/.config/syncthing/config.xml')}}"

Zalecam użycie ansible-vault do szyfrowania kluczy, lookup odszyfruje je
w locie.

Licencja

MIT

O projekcie

Install Syncthing on Debian 11

Zainstaluj
ansible-galaxy install L-P.syncthing
Licencja
mit
Pobrania
114
Właściciel