ansible-role-redmine/tasks/redmine-plugins.yml

365 lines
16 KiB
YAML

---
#
# Plugins
#
- name: Create the directory where the plugins are downloaded
ansible.builtin.file: dest={{ redmine_glob_root_dir }}/plugins_download state=directory
tags: [ 'redmine', 'redmine_plugins' ]
- name: Install the better gantt plugin
ansible.builtin.git:
repo: '{{ rm_better_gantt_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/better_gantt_chart'
update: no
notify:
- Reload unicorn when needed
when: rm_better_gantt_plugin
tags: [ 'redmine', 'redmine_plugins' ]
- name: Install the ldap sync plugin
ansible.builtin.git:
repo: '{{ rm_ldap_sync_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_ldap_sync'
update: no
notify: Bundle install and reconfigure redmine
when: rm_ldap_sync
tags: [ 'redmine', 'redmine_plugins', 'rm_ldap_sync' ]
- name: Cron job that manages the ldap sync
ansible.builtin.cron:
name: Sync the ldap users and groups
job: '{{ redmine_ldap_sync_cron_job }}'
user: '{{ redmine_user }}'
minute: '{{ redmine_ldap_sync_freq }}'
cron_file: redmine-ldap-sync
state: present
when: rm_ldap_sync
tags: [ 'redmine', 'redmine_plugins', 'rm_ldap_sync' ]
- name: Redmine login audit plugin
ansible.builtin.git:
repo: '{{ rm_login_audit_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_login_audit'
update: false
notify:
- Bundle install and reconfigure redmine
when: rm_login_audit_plugin
tags: ['redmine', 'redmine_plugins', 'rm_audit_plugin']
- name: Redmine auto_watcher_from_groups plugin
ansible.builtin.git:
repo: '{{ rm_auto_watcher_from_groups_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_auto_watchers_from_groups'
update: no
notify:
- Bundle install and reconfigure redmine
when: rm_auto_watchers_from_groups
tags: [ 'redmine', 'redmine_plugins', 'rm_auto_watchers_plugin' ]
- name: Redmine subversion links plugin
ansible.builtin.git:
repo: '{{ rm_addsubversionlinks_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_add_subversion_links'
update: no
when: rm_addsubversionlinks_plugin
notify:
- Reload unicorn when needed
tags: [ 'redmine', 'redmine_plugins', 'rm_addsubversionlinks_plugin' ]
- name: Progressive projects list plugin
ansible.builtin.git: repo={{ rm_progressive_projects_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/progressive_projects_list update=no
notify:
- Reconfigure redmine
when: rm_progressive_projects_plugin
tags: [ 'redmine', 'redmine_plugins' ]
- name: didyoumean plugin
ansible.builtin.git: repo={{ rm_didyoumean_plugin_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_didyoumean update=no
notify:
- Reconfigure redmine
when: rm_didyoumean_plugin
tags: [ 'redmine', 'redmine_plugins' ]
- name: Install the graphs plugin
ansible.builtin.git: repo={{ rm_graphs_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_graphs update=no
notify:
- Reconfigure redmine
when: rm_graphs_plugin
tags: [ 'redmine', 'redmine_plugins' ]
- name: Install the embedded tab plugin
ansible.builtin.git: repo={{ rm_embedded_tabs_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_tab update=no
notify:
- apache2 reload when needed
- Reload unicorn when needed
when: rm_embedded_tabs_plugin
tags: [ 'redmine', 'redmine_plugins', 'rm_embedded_tabs' ]
- name: Install the recurring-tasks plugin
ansible.builtin.git: repo={{ rm_recurring_tasks_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/recurring_tasks update=no
notify:
- Bundle install and reconfigure redmine
when: rm_recurring_tasks_plugin
tags: [ 'redmine', 'redmine_plugins', 'rm_recurring_tasks' ]
- name: Cron job that manages the recurring tasks
ansible.builtin.template: src=redmine-recurring-tasks.cron.j2 dest=/etc/cron.d/redmine-recurring-tasks owner=root group=root mode=0444
when: rm_recurring_tasks_plugin
tags: [ 'redmine', 'redmine_plugins', 'rm_recurring_tasks' ]
- name: Install the redmine advanced roadmap plugin
ansible.builtin.git: repo={{ rm_advanced_roadmap_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/advanced_roadmap_v2 update=no
when: rm_advanced_roadmap_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_ar' ]
- name: Install the redmine scrum2b plugin
ansible.builtin.git: repo={{ rm_scrum2b_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/scrum2b update=no
when: rm_scrum2b_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_scrum2b' ]
- name: Install the issue reminder plugin
ansible.builtin.git: repo={{ rm_issuereminder_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_mail_reminder update=no
when: rm_issuereminder_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_issuereminder' ]
- name: Install the issue reminder plugin cron job.
ansible.builtin.template: src=redmine_issue_reminder.cron.j2 dest=/etc/cron.d/redmine_issue_reminder owner=root group=root mode=0644
when: rm_issuereminder_plugin
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_issuereminder' ]
- name: Install the update reminder plugin
ansible.builtin.git: repo={{ rm_updatereminder_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_update_reminder update=no
when: rm_updatereminder_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_updatereminder' ]
- name: Install the update reminder plugin cron job. The ruby scheduler does not work, it seems
ansible.builtin.template: src=redmine_update_reminder.cron.j2 dest=/etc/cron.d/redmine_update_reminder owner=root group=root mode=0644
when: rm_updatereminder_plugin
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_updatereminder' ]
- name: Install the default custom query plugin
ansible.builtin.git: repo={{ rm_defaultcustomquery_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_default_custom_query update=no
when: rm_defaultcustomquery_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_defaultcustomquery' ]
- name: Install the closes resolved issues plugin
ansible.builtin.git:
repo: '{{ rm_closesresolvedissue_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_closes_resolved_issues'
update: no
when: rm_closesresolvedissue_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_closesresolvedissue' ]
- name: Install the tasks handler for the close resolved issues plugin
ansible.builtin.copy:
src: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_closes_resolved_issues/config/initializers/task_scheduler.rb'
remote_src: True
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/config/initializers/task_scheduler.rb'
notify: Reload unicorn
when: rm_closesresolvedissue_plugin
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_closesresolvedissue' ]
- name: Install the default assign plugin
ansible.builtin.git: repo={{ rm_defaultassign_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_default_assign update=no
when: rm_defaultassign_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_defaultassign' ]
- name: Install the once assigned ever watcher plugin
ansible.builtin.git: repo={{ rm_onceassignedeverwatcher_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/once_assigned_ever_watcher update=no
when: rm_onceassignedeverwatcher_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_onceassignedeverwatcher' ]
- name: Install the clipboard image paste plugin
ansible.builtin.git: repo={{ rm_clipboardimagepaste_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/clipboard_image_paste update=no
when: rm_clipboardimagepaste_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_clipboardimagepaste' ]
- name: Install the hotkeys js plugin
ansible.builtin.git: repo={{ rm_hotkeysjs_url }} version=v0.0.3 dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_hotkeys_js update=no
when: rm_hotkeysjs_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_hotkeysjs' ]
- name: Install the issues sorting plugin
ansible.builtin.git: repo={{ rm_issuessorting_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_issues_sorting update=no
when: rm_issuessorting_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_issuessorting' ]
- name: Install the mylyn plugin
ansible.builtin.git: repo={{ rm_mylyn_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_mylyn_plugin update=no
when: rm_mylyn_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_mylyn' ]
- name: Install the quick edit plugin
ansible.builtin.git: repo={{ rm_quickedit_url }} accept_hostkey=yes dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/quick_edit update=no
when: rm_quickedit_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_quickedit' ]
- name: Install the quick view plugin
ansible.builtin.git: repo={{ rm_quickview_url }} accept_hostkey=yes dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/quick_view update=no
when: rm_quickview_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_quickview' ]
- name: Install the mylyn connector plugin
ansible.builtin.git: repo={{ rm_mylynconnector_url }} accept_hostkey=yes dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_mylyn_connector update=no
when: rm_mylynconnector_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_mylynconnector' ]
- name: Install the mentions plugin
ansible.builtin.git: repo={{ rm_mentions_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_mentions update=no
when: rm_mentions_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_mentions' ]
- name: Install the external wiki plugin
ansible.builtin.git: repo={{ rm_wiki_external_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/wiki_external update=no
when: rm_wiki_external_plugin
notify: Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_wiki_external' ]
- name: Install the wiki backlinks
ansible.builtin.git:
repo: '{{ rm_wiki_backlinks_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_wiki_backlinks'
update: no
when: rm_wiki_backlinks_plugin
notify: Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_wiki_backlinks' ]
- name: Install the paste plugin
ansible.builtin.git: repo={{ rm_pastebin_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_pastebin update=no
when: rm_pastebin_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_pastebin' ]
- name: Install the issue_templates plugin
ansible.builtin.git: repo={{ rm_issue_templates_url }} dest={{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_issue_templates update=no
when: rm_issue_templates_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_issue_templates' ]
- name: Install the issue_todo_lists plugin
ansible.builtin.git:
repo: '{{ rm_issue_todo_lists_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_issue_todo_lists'
update: no
when: rm_issue_todo_lists_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_issue_todo_lists' ]
- name: Install the involvement filter plugin
ansible.builtin.git:
repo: '{{ rm_involvement_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_involvement_filter'
update: no
when: rm_involvement_plugin
notify:
- Bundle install and reconfigure redmine
tags: [ 'redmine', 'redmine_plugins', 'redmine_plugins_involvement_filter' ]
- name: Install the omniauth Oauth plugin
ansible.builtin.git:
repo: '{{ rm_omniauth_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_omniauth_client'
update: no
notify:
- Bundle install and reconfigure redmine
when: rm_omniauth_plugin
tags: [ 'redmine', 'redmine_plugins', 'rm_oauth', 'rm_omniauth' ]
- name: Remove the omniauth Oauth plugin
ansible.builtin.file:
dest: "{{ item }}"
state: absent
loop:
- "{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_omniauth_client"
- "{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/public/plugin_assets/redmine_omniauth_client"
notify: Reload unicorn
when: not rm_omniauth_plugin
tags: ['redmine', 'redmine_plugins', 'rm_oauth', 'rm_omniauth']
- name: Install the OpenId connect plugin
ansible.builtin.git:
repo: '{{ rm_openid_connect_plugin_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/redmine_openid_connect'
update: no
notify:
- Bundle install and reconfigure redmine
when: rm_openid_connect_plugin
tags: [ 'redmine', 'redmine_plugins', 'rm_oidc', 'rm_openid_connect' ]
- name: Install the additionals plugin
ansible.builtin.git:
repo: '{{ rm_additionals_plugin_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/additionals'
version: "{{ rm_additionals_plugin_branch }}"
update: false
notify:
- Bundle install and reconfigure redmine
when: rm_additionals_plugin or rm_saml_plugin
tags: ['redmine', 'redmine_plugins', 'rm_saml', 'rm_additionals']
- name: Install the SAML auth plugin
ansible.builtin.git:
repo: '{{ rm_saml_plugin_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/additionals'
version: "{{ rm_saml_branch }}"
update: false
notify:
- Bundle install and reconfigure redmine
when: rm_saml_plugin
tags: ['redmine', 'redmine_plugins', 'rm_saml']
- name: Configure the SAML plugin
ansible.builtin.template:
src: saml.rb.j2
dest: "{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/config/initializers/saml.rb"
owner: root
group: redmine
mode: 0440
notify: Reload unicorn
when: rm_saml_plugin
tags: ['redmine', 'redmine_plugins', 'rm_saml']
- name: Install the dashboard plugin
ansible.builtin.git:
repo: '{{ rm_dashboard_plugin_url }}'
dest: '{{ redmine_glob_root_dir }}/{{ redmine_inst_dir }}/plugins/dashboard'
update: no
notify: Reload unicorn
when: rm_dashboard_plugin
tags: [ 'redmine', 'redmine_plugins', 'rm_dashboard' ]