♻: separate app from user data for shaarli
All checks were successful
ansible-lint / lint-everything (push) Successful in 5s
All checks were successful
ansible-lint / lint-everything (push) Successful in 5s
This commit is contained in:
@@ -1,34 +1,70 @@
|
||||
---
|
||||
|
||||
- name: Create application directory
|
||||
## Remove the previous app & install the new version
|
||||
- name: Remove Shaarli previous version
|
||||
ansible.builtin.file:
|
||||
state: absent
|
||||
dest: "{{ shaarli_app_home }}"
|
||||
|
||||
- name: Create app home
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
path: "{{ shaarli_home }}"
|
||||
path: "{{ shaarli_app_home }}"
|
||||
owner: root
|
||||
group: www-data
|
||||
mode: "a-rwx,u+rwX,g+rX"
|
||||
|
||||
- name: Install Shaarli
|
||||
- name: Install Shaarli app
|
||||
ansible.builtin.unarchive:
|
||||
remote_src: true
|
||||
src: "{{ shaarli_url }}"
|
||||
dest: "{{ shaarli_home }}"
|
||||
dest: "{{ shaarli_app_home }}"
|
||||
owner: root
|
||||
group: www-data
|
||||
mode: "a-rwx,u+rwX,g+rX"
|
||||
extra_opts: ['--strip-components=1']
|
||||
exclude:
|
||||
- "data"
|
||||
exclude: "{{ shaarli_userdata_app_dirs }}"
|
||||
|
||||
- name: Check writable dirs
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
dest: "{{ shaarli_home }}/{{ item }}"
|
||||
dest: "{{ shaarli_app_home }}/{{ item }}"
|
||||
owner: root
|
||||
group: www-data
|
||||
recurse: true
|
||||
mode: "g+w"
|
||||
loop:
|
||||
- "data"
|
||||
- "tmp"
|
||||
- "pagecache"
|
||||
loop: "{{ shaarli_writable_app_dirs }}"
|
||||
|
||||
## Ensure the data dirs exists, populate them if not
|
||||
- name: Create data home
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
path: "{{ shaarli_data_home }}"
|
||||
owner: www-data
|
||||
group: www-data
|
||||
mode: "a-rwx,u+rwX,g+rX"
|
||||
|
||||
# If the first data dir exists, others should exist too
|
||||
- name: Get data dir
|
||||
ansible.builtin.stat:
|
||||
path: "{{ shaarli_data_home }}/{{ shaarli_userdata_app_dirs[0] }}"
|
||||
register: _shaarli_userdata_dir_stat
|
||||
|
||||
- name: Install Shaarli data dir
|
||||
ansible.builtin.unarchive:
|
||||
remote_src: true
|
||||
src: "{{ shaarli_url }}"
|
||||
dest: "{{ shaarli_data_home }}"
|
||||
owner: www-data
|
||||
group: www-data
|
||||
mode: "a-rwx,u+rwX,g+rX"
|
||||
extra_opts: ['--strip-components=1']
|
||||
include: "{{ shaarli_userdata_app_dirs | map('regex_replace', '^', 'Shaarli/') }}"
|
||||
when: not _shaarli_userdata_dir_stat.stat.exists
|
||||
|
||||
- name: Link Shaarli userdata dirs
|
||||
ansible.builtin.file:
|
||||
state: link
|
||||
src: "{{ shaarli_data_home }}/{{ item }}"
|
||||
dest: "{{ shaarli_app_home }}/{{ item }}"
|
||||
loop: "{{ shaarli_userdata_app_dirs }}"
|
||||
|
Reference in New Issue
Block a user