Files
ansible-fet/roles/sojus/tasks/sojus.yml
2018-07-26 12:27:47 +02:00

53 lines
1.7 KiB
YAML

---
- name: borg - install packages
package: "name={{ item }} state=latest update_cache=yes"
with_items:
- python3
- python3-devel
- python3-pip
- python3-virtualenv
- libressl-devel
- acl-devel
- fuse3-devel
- pkg-config
- name: borg - pip3 install
pip: name=pip executable=pip3 state=latest
- name: borg - install
pip: name=borg executable=pip3 state=latest
- name: borg - create group
group: "name={{ group }} state=present"
- name: borg - create user
user: "name={{ user }} shell=/bin/bash home={{ home }} createhome=yes group={{ group }} groups= state=present"
- name: borg - create user home
file: "path={{ home }} owner={{ user }} group={{ group }} mode=0700 state=directory"
- name: borg - create user .ssh
file: "path={{ home }}/.ssh owner={{ user }} group={{ group }} mode=0700 state=directory"
- name: borg - deploy authorized keys
authorized_key:
user: "{{ user }}"
key: "{{ item.key }}"
key_options: 'command="cd {{ pool }}/{{ item.host }};borg serve --append-only --restrict-to-path {{ pool }}/{{ item.host }}",restrict'
with_items: "{{ auth_users }}"
- name: borg - deploy authorized keys permissions
file: "path={{ home }}/.ssh/authorized_keys owner={{ user }} group={{ group }} mode=0600 state=file"
- name: borg - create repos dir
file: "path={{ pool }} owner={{ user }} group={{ group }} mode=0700 state=directory"
- name: borg - create repo dir
file: "path={{ pool }}/{{ item.host }} owner={{ user }} group={{ group }} mode=0700 state=directory"
with_items: "{{ auth_users }}"
- name: borg - create repo
command: borg init -e none "{{ pool }}/{{ item.host }}"
creates: "{{ pool }}/{{ item.host }}/config"
with_items: "{{ auth_users }}"