109 lines
3.4 KiB
YAML
109 lines
3.4 KiB
YAML
---
|
|
#-----------------------------------------------------------------------------#
|
|
# ansible-yunohost allows to deploy Yunohost using Ansible #
|
|
# Copyright 2021-present Lydra https://www.lydra.fr/ #
|
|
# #
|
|
# this program is free software: you can redistribute it and/or modify #
|
|
# it under the terms of the GNU General Public License as published by #
|
|
# the Free Software Foundation, either version 3 of the License, or #
|
|
# (at your option) any later version. #
|
|
# #
|
|
# this program is distributed in the hope that it will be useful, #
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of #
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
|
|
# GNU General Public License for more details. #
|
|
# #
|
|
# You should have received a copy of the GNU General Public License #
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>. #
|
|
# #
|
|
#-----------------------------------------------------------------------------#
|
|
|
|
- name: Install requirements
|
|
ansible.builtin.apt:
|
|
name:
|
|
- git
|
|
- dialog
|
|
state: present
|
|
tags:
|
|
- pkg
|
|
- linux
|
|
|
|
- name: Create data and config subdirs of Yunohost
|
|
ansible.builtin.file:
|
|
path: "{{ item.path }}"
|
|
state: directory
|
|
mode: "0755"
|
|
with_items:
|
|
- "{{ ynh_data_dirs }}"
|
|
tags:
|
|
- linux
|
|
when: ynh_data_dirs_enabled
|
|
|
|
- name: Create symbolic links for Yunohost subdirs
|
|
ansible.builtin.file:
|
|
src: "{{ item.path }}"
|
|
dest: "{{ item.link }}"
|
|
state: link
|
|
with_items:
|
|
- "{{ ynh_data_dirs }}"
|
|
tags:
|
|
- linux
|
|
when: ynh_data_dirs_enabled
|
|
|
|
- name: Test if Yunohost is already installed
|
|
ansible.builtin.stat: path=/etc/yunohost/installed
|
|
register: ynh_file_install
|
|
tags:
|
|
- yunohost
|
|
|
|
- name: Download Yunohost install script
|
|
ansible.builtin.get_url:
|
|
url: "{{ ynh_install_script_url }}"
|
|
dest: /tmp/install_yunohost.sh
|
|
mode: 700
|
|
when: not ynh_file_install.stat.exists
|
|
tags:
|
|
- yunohost
|
|
|
|
- name: Launch Yunohost install script
|
|
ansible.builtin.command: /tmp/install_yunohost.sh -a
|
|
when: not ynh_file_install.stat.exists
|
|
tags:
|
|
- yunohost
|
|
|
|
- name: Launch Yunohost postinstall
|
|
ansible.builtin.command:
|
|
yunohost tools postinstall \
|
|
--domain "{{ ynh_main_domain }}" \
|
|
--password "{{ ynh_admin_password }}" \
|
|
{% if ynh_ignore_dyndns_server %} --ignore-dyndns {% endif %}
|
|
when: not ynh_file_install.stat.exists
|
|
tags:
|
|
- yunohost
|
|
- domains
|
|
|
|
- name: Create extra domains
|
|
ansible.builtin.include_tasks: domains.yml
|
|
when: ynh_extra_domains
|
|
tags:
|
|
- yunohost
|
|
- domains
|
|
|
|
- name: Run first Yunohost diagnosis
|
|
ansible.builtin.command: yunohost diagnosis run
|
|
when: not ynh_file_install.stat.exists
|
|
tags:
|
|
- yunohost
|
|
|
|
- name: Install domain certificates
|
|
ansible.builtin.command: yunohost domain cert-install
|
|
changed_when: False
|
|
tags:
|
|
- yunohost
|
|
|
|
- name: Add Yunohost users
|
|
ansible.builtin.include_tasks: users.yml
|
|
when: ynh_users
|
|
tags:
|
|
- yunohost
|
|
- users
|