Skip to content

Commit

Permalink
Merge pull request #1 from TheRojam/upgrade/ansible_version_3
Browse files Browse the repository at this point in the history
Upgrade/ansible version 3
  • Loading branch information
TheRojam authored May 1, 2021
2 parents 25315c3 + c6adcf5 commit 9220e1c
Show file tree
Hide file tree
Showing 6 changed files with 25 additions and 23 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
ansible-yunohost
=========

Deploy Yunohost with Ansible !
Deploy Yunohost with Ansible!

Requirements
------------
Expand Down Expand Up @@ -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

Expand Down
4 changes: 3 additions & 1 deletion meta/main.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
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
Expand Down
6 changes: 3 additions & 3 deletions tasks/apps.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
- 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()
6 changes: 3 additions & 3 deletions tasks/domains.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
---
- 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
20 changes: 10 additions & 10 deletions tasks/main.yml
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
---
- 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 }} \
Expand All @@ -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
8 changes: 4 additions & 4 deletions tasks/users.yml
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
---
- 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 comments on commit 9220e1c

Please sign in to comment.