Added engelsystem role

This commit is contained in:
2022-02-01 08:48:38 +01:00
parent 0479f1496e
commit 88c1cd00bc
13 changed files with 395 additions and 1 deletions

View File

@ -0,0 +1,11 @@
---
- name: Disable directory listing
ansible.builtin.template:
src: htaccess.j2
dest: ~/html/.htaccess
mode: 0644
- name: Use custom config file
ansible.builtin.template:
src: config.php.j2
dest: /var/www/virtual/{{ uberspace_user }}/config/config.php
mode: 0644

View File

@ -0,0 +1,59 @@
---
- name: delete nocontent
ansible.builtin.file:
path: ~/html/nocontent.html
state: absent
- name: create directory for download
ansible.builtin.file:
path: ~/engelsystem
state: directory
mode: 0755
- name: download Engelsystem
ansible.builtin.unarchive:
src: https://github.com/engelsystem/engelsystem/releases/download/v{{ engelsystem_version }}/engelsystem-v{{ engelsystem_version }}.zip
dest: ~/engelsystem
remote_src: yes
creates: ~/engelsystem/release
register: engelsystem_archive
- name: check web root
ansible.builtin.stat:
path: /var/www/virtual/{{ uberspace_user }}/engelsystem/storage
register: storage
- name: ensure correct mode for web directory
when: storage.stat.isdir is not defined
ansible.builtin.file:
path: /var/www/virtual/{{ uberspace_user }}/engelsystem
mode: 0755
state: directory
- name: copy to web root
when: storage.stat.isdir is not defined
ansible.builtin.copy:
src: ~/engelsystem/release/
dest: /var/www/virtual/{{ uberspace_user }}/engelsystem
remote_src: yes
directory_mode: 0755
mode: 0644
- name: ensure correct mode for web directory
ansible.builtin.file:
path: /var/www/virtual/{{ uberspace_user }}
mode: 0750
state: directory
- name: point html directory to engelsystem public directory
block:
- name: remove old html directory
ansible.builtin.file:
path: /var/www/virtual/{{ uberspace_user }}/html
state: absent
- name: create symlink to public directory
ansible.builtin.file:
path: /var/www/virtual/{{ uberspace_user }}/html
src: /var/www/virtual/{{ uberspace_user }}/engelsystem/public
state: link
- name: ensure correct SE settings
ansible.builtin.shell:
cmd: /usr/sbin/restorecon -R -v /var/www/virtual/{{ uberspace_user|quote }}/html
- name: download database install script
ansible.builtin.get_url:
url: https://github.com/engelsystem/engelsystem/releases/download/v{{ engelsystem_version }}/install-v{{ engelsystem_version }}.sql
dest: ~/engelsystem/install.sql
mode: 0644

View File

@ -0,0 +1,4 @@
---
- include: download.yml
- include: mysql.yml
- include: config.yml

View File

@ -0,0 +1,13 @@
---
- name: create MySQL database
community.mysql.mysql_db:
name: "{{ uberspace_user }}_engelsystem"
encoding: utf8
register: create_database
- name: import initial database contents
when: create_database.changed
community.mysql.mysql_db:
name: "{{ uberspace_user }}_engelsystem"
state: import
target: ~/engelsystem/install.sql
encoding: utf8