From 946aecd75f8a99e1a8a59a0d2b8e9a8da0b89a92 Mon Sep 17 00:00:00 2001 From: sylvainar Date: Sun, 17 Sep 2017 21:25:30 +0200 Subject: [PATCH] Add support for users --- README.md | 7 +++++++ default/main.yml | 1 + tasks/main.yml | 4 ++++ tasks/users.yml | 18 ++++++++++++++++++ 4 files changed, 30 insertions(+) create mode 100644 tasks/users.yml diff --git a/README.md b/README.md index 701f181..8ac06ba 100644 --- a/README.md +++ b/README.md @@ -32,6 +32,13 @@ yunohost: args: # Provide here args. Path and domain are mandatory, other args depend of the app (cf manifest.json of app). path: /ttrss domain: example.com + # The list of users. + users: + - name: admin + pass: p@ssw0rd + firstname: admin + lastname: admin + mail: admin@example.com ``` Dependencies diff --git a/default/main.yml b/default/main.yml index f344a86..320dc21 100644 --- a/default/main.yml +++ b/default/main.yml @@ -5,3 +5,4 @@ yunohost: password: MYINSECUREPWD_PLZ_OVERRIDE_THIS ignore_dyndns: False apps: ~ + users: ~ diff --git a/tasks/main.yml b/tasks/main.yml index bdaf213..4ad3764 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -38,6 +38,10 @@ shell: yunohost domain cert-install changed_when: False +- name: Add users + include: users.yml + when: yunohost.users + - name: Install apps include: apps.yml when: yunohost.apps diff --git a/tasks/users.yml b/tasks/users.yml new file mode 100644 index 0000000..853accd --- /dev/null +++ b/tasks/users.yml @@ -0,0 +1,18 @@ +--- +- name: List users + 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 }}" + +- name: Create missing users + shell: | + yunohost user create {{ item.name }} --admin-password {{ yunohost.password }} \ + -f {{ item.firstname }} \ + -l {{ item.lastname }} \ + -m {{ item.mail }} \ + -p {{ item.pass }} + with_items: "{{ yunohost.users }}" + when: item.name not in yunohost_registered_users.users.keys()