Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
Unverified Commit 9220e1cd authored by Anton's avatar Anton Committed by GitHub
Browse files

Merge pull request #1 from TheRojam/upgrade/ansible_version_3

Upgrade/ansible version 3
parents 25315c37 c6adcf58
No related branches found
No related tags found
No related merge requests found
ansible-yunohost
=========
Deploy Yunohost with Ansible !
Deploy Yunohost with Ansible!
Requirements
------------
......@@ -54,7 +54,7 @@ Example Playbook
remote_user: root
pre_tasks:
- name: Update all packages and index
apt:
ansible.builtin.apt:
upgrade: dist
update_cache: yes
......
galaxy_info:
role_name: yunohost
author: sylvainar
description: Deploy Yunohost with Ansible
license: GPL-v3
min_ansible_version: 1.2
min_ansible_version: 2.10
galaxy_tags: [yunohost]
platforms:
- name: Debian
versions:
- jessie
- buster
categories:
- cloud
- web
......
---
- name: List currently installed apps
shell: yunohost app map --output-as json
ansible.builtin.shell: yunohost app map --output-as json
register: yunohost_installed_apps_raw
changed_when: False
- name: Format json of apps
set_fact: yunohost_installed_apps="{{ yunohost_installed_apps_raw.stdout | from_json }}"
ansible.builtin.set_fact: yunohost_installed_apps="{{ yunohost_installed_apps_raw.stdout | from_json }}"
- name: Install apps
shell: yunohost app install {{ item.link }} --label "{{ item.label }}" --args "{% for key, value in item.args.items() %}{{key}}={{value}}{% if not loop.last %}&{% endif %}{% endfor %}"
ansible.builtin.shell: yunohost app install {{ item.link }} --label "{{ item.label }}" --args "{% for key, value in item.args.items() %}{{key}}={{value}}{% if not loop.last %}&{% endif %}{% endfor %}"
with_items: "{{ yunohost.apps }}"
when: item.label not in yunohost_installed_apps.values()
---
- name: List currently installed domains
shell: yunohost domain list --output-as json
ansible.builtin.shell: yunohost domain list --output-as json
register: yunohost_installed_domains_raw
changed_when: False
- name: Format json of domains
set_fact: yunohost_installed_domains="{{ yunohost_installed_domains_raw.stdout | from_json }}"
ansible.builtin.set_fact: yunohost_installed_domains="{{ yunohost_installed_domains_raw.stdout | from_json }}"
- name: Create domains
shell: yunohost domain add {{ item }}
ansible.builtin.shell: yunohost domain add {{ item }}
with_items: "{{ yunohost.extra_domains }}"
when: item not in yunohost_installed_domains.domains
---
- name: Install requirements
apt:
ansible.builtin.apt:
name:
- git
- dialog
state: present
- name: Test if Yunohost is already installed
stat: path=/etc/yunohost/installed
ansible.builtin.stat: path=/etc/yunohost/installed
register: yunohost_file_install
- name: Download install script
get_url:
ansible.builtin.get_url:
url: "{{ yunohost.install_script_url }}"
dest: /tmp/install_yunohost.sh
mode: 700
when: yunohost_file_install.stat.exists == False
- name: Launch script
command: /tmp/install_yunohost.sh -a
ansible.builtin.command: /tmp/install_yunohost.sh -a
when: yunohost_file_install.stat.exists == False
- name: Launch postinsstall
shell: "
ansible.builtin.shell: "
yunohost tools postinstall \
--domain {{ yunohost.domain }} \
--password {{ yunohost.password }} \
......@@ -31,20 +31,20 @@
when: yunohost_file_install.stat.exists == False
- name: Create domains
include: domains.yml
ansible.builtin.include: domains.yml
when: yunohost.extra_domains
- name: Run diagnosis # Required to install certificates
shell: yunohost diagnosis run
ansible.builtin.shell: yunohost diagnosis run
- name: Install certificates
shell: yunohost domain cert-install
ansible.builtin.shell: yunohost domain cert-install
changed_when: False
- name: Add users
include: users.yml
ansible.builtin.include: users.yml
when: yunohost.users
- name: Install apps
include: apps.yml
ansible.builtin.include: apps.yml
when: yunohost.apps
---
- name: List users
shell: yunohost user list --output-as json
ansible.builtin.shell: yunohost user list --output-as json
register: yunohost_registered_users_raw
changed_when: False
- name: Format json of users
set_fact: yunohost_registered_users="{{ yunohost_registered_users_raw.stdout | from_json }}"
ansible.builtin.set_fact: yunohost_registered_users="{{ yunohost_registered_users_raw.stdout | from_json }}"
- name: Create missing users
shell: |
ansible.builtin.shell: |
yunohost user create {{ item.name }} \
-f {{ item.firstname }} \
-l {{ item.lastname }} \
-m {{ item.mail }} \
-p {{ item.pass }}
with_items: "{{ yunohost.users }}"
loop: "{{ yunohost.users }}"
when: item.name not in yunohost_registered_users.users.keys()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment