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
app.yml 2.6 KiB
Newer Older
  • Learn to ignore specific revisions
  • ---
    #-----------------------------------------------------------------------------#
    # ansible-yunohost allows to deploy Yunohost using Ansible                    #
    # Copyright 2021-2021 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/>.        #
    #                                                                             #
    #-----------------------------------------------------------------------------#
    
    # Installation part
    
    - name: Install yunohost apps
    
      ansible.builtin.command: yunohost app install {{ ynh_app.link }} \
         --label "{{ ynh_app.label }}" \
         --args "{% for key, value in ynh_app.args.items() %}{{ key }}={{ value }}{% if not loop.last %}&{% endif %}{% endfor %}"
      changed_when: False
    
    # Post-installation part
    - name: Transfer template to node (can be a config file or a script)
    
      ansible.builtin.template:
    
        src: "{{ item.src }}"
        dest: "{{ item.dest }}"
        owner: "{{ item.owner }}"
        group: "{{ item.group }}"
        mode: "{{ item.mode }}"
    
      loop: "{{ ynh_app.post_install|default([]) }}"
      when: ynh_app.post_install
    
    - name: Execute script if file type is a script then remove it
    
      ansible.builtin.command: "{{ ynh_app_post_install.dest }}"
    
      args:
        chdir: /tmp/
    
      loop: "{{ ynh_app.post_install|default([]) }}"
    
      loop_control:
    
        loop_var: ynh_app_post_install
      when: ynh_app_post_install.type == "script"
    
    - name: Remove script after execution
      ansible.builtin.file:
        path: "{{ ynh_app_post_install.dest }}"
        state: absent
      loop: "{{ ynh_app.post_install|default([]) }}"
      loop_control:
        loop_var: ynh_app_post_install
      when: ynh_app_post_install.type == "script"