diff options
Diffstat (limited to 'roles/radicale/tasks')
-rw-r--r-- | roles/radicale/tasks/main.yml | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/roles/radicale/tasks/main.yml b/roles/radicale/tasks/main.yml new file mode 100644 index 0000000..dbd6839 --- /dev/null +++ b/roles/radicale/tasks/main.yml @@ -0,0 +1,65 @@ +--- +# NOTE: Radicale requires nginx. + +- name: install packages + pkgng: + name: "{{ item }}" + state: present + with_items: + # - py36-radicale2 + - uwsgi-py36 + +- name: create data directory + file: + path: "{{ radicale.home }}" + state: directory + owner: radicale + group: radicale + mode: 0700 + +- name: generate config file + template: + src: config.j2 + dest: "{{ radicale.etcdir }}/config" + notify: reload-radicale + +- name: copy extra config files + copy: + src: "{{ item }}" + dest: "{{ radicale.etcdir }}/{{ item | basename }}" + with_items: + - logging + - rights + notify: reload-radicale + +- name: copy gitignore for storage + copy: + src: _gitignore + dest: "{{ radicale.home }}/.gitignore" + +- name: create nginx auth/ dirctory + file: + path: /usr/local/etc/nginx/auth + state: directory + +- name: generate passwd for nginx + template: + src: radicale.passwd.j2 + dest: /usr/local/etc/nginx/auth/radicale.passwd + group: www + mode: 0440 + notify: reload-nginx + +- name: setup uwsgi in rc.conf + blockinfile: + path: /etc/rc.conf + marker: "# {mark} ANSIBLE MANAGED - uwsgi/radicale" + block: | + uwsgi_profiles="${uwsgi_profiles} radicale" + uwsgi_radicale_socket="/var/run/uwsgi-radicale.sock" + uwsgi_radicale_uid="radicale" + uwsgi_radicale_gid="radicale" + uwsgi_radicale_flags="-L --env RADICALE_CONFIG={{ radicale.etcdir }}/config --plugin python --wsgi-file {{ radicale.wwwdir }}/radicale.wsgi" + +- name: enable and start uwsgi + command: rcenable uwsgi |