--- - name: List currently installed apps ansible.builtin.shell: yunohost app map --output-as json register: ynh_installed_apps_raw changed_when: False - name: Format json of apps ansible.builtin.set_fact: ynh_installed_apps="{{ ynh_installed_apps_raw.stdout | from_json }}" - name: Install yunohost apps 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: "{{ ynh_apps }}" when: item.label not in ynh_installed_apps.values()