99 lines
2.1 KiB
YAML
99 lines
2.1 KiB
YAML
---
|
|
# Setup dependencies
|
|
- name: Install framadate APT dependencies
|
|
apt:
|
|
update_cache: true
|
|
name:
|
|
- nginx
|
|
- php-fpm
|
|
- php-intl
|
|
- php-mbstring
|
|
- php-pgsql
|
|
- composer
|
|
- python3-passlib # Necessary for htpasswd module
|
|
- python-pymsql
|
|
- mariadb-server
|
|
register: apt_result
|
|
retries: 3
|
|
until: apt_result is succeeded
|
|
|
|
- name: Clone framadate project
|
|
git:
|
|
repo: "{{ framadate.repo }}"
|
|
dest: "{{ framadate.path }}"
|
|
version: "{{ framadate.version }}"
|
|
|
|
# Cet item là raises forcement un changed à cause du recurse: true
|
|
# https://github.com/ansible/ansible/issues/32636
|
|
- name: Set perms on framadate code
|
|
file:
|
|
path: "{{ framadate.path }}"
|
|
state: directory
|
|
owner: www-data
|
|
group: www-data
|
|
recurse: true
|
|
|
|
- name: Install Framadate dependencies
|
|
composer:
|
|
command: install
|
|
working_dir: "{{ framadate.path }}"
|
|
become: true
|
|
become_user: www-data
|
|
register: composer_result
|
|
retries: 3
|
|
until: composer_result is succeeded
|
|
|
|
- name: Create log file
|
|
file:
|
|
path: "{{ framadate.path }}/admin/stdout.log"
|
|
owner: www-data
|
|
mode: 0600
|
|
|
|
- name: Configure framadate
|
|
template:
|
|
src: config.php.j2
|
|
dest: "{{ framadate.path }}/app/inc/config.php"
|
|
owner: www-data
|
|
group: www-data
|
|
|
|
- name: Configure admin password
|
|
htpasswd:
|
|
path: /etc/nginx/.htpasswd
|
|
name: "{{ framadate.admin_username }}"
|
|
password: "{{ framadate.admin_password }}"
|
|
owner: root
|
|
group: www-data
|
|
mode: 0640
|
|
|
|
- name: Configure nginx site
|
|
template:
|
|
src: nginx-site.j2
|
|
dest: /etc/nginx/sites-available/framadate
|
|
notify: restart nginx
|
|
|
|
- name: Enable nginx site
|
|
file:
|
|
src: /etc/nginx/sites-available/framadate
|
|
dest: /etc/nginx/sites-enabled/framadate
|
|
state: link
|
|
notify: restart nginx
|
|
|
|
- name: Indicate role in motd
|
|
template:
|
|
src: update-motd.d/05-service.j2
|
|
dest: /etc/update-motd.d/05-framadate
|
|
mode: 0755
|
|
|
|
- name: Create the database
|
|
mysql_db:
|
|
name: bobdata
|
|
state: present
|
|
|
|
- name: Grant access right to framadate
|
|
mysql_user:
|
|
name: framadate
|
|
password: "{{ db_password }}"
|
|
priv: 'framadate.*:ALL'
|
|
state: present
|
|
|