ansible-roles/redmine/tasks/source.yml

99 lines
2.6 KiB
YAML

---
- name: Create releases directory
file:
path: "/home/{{ redmine_user }}/{{ item }}"
state: directory
owner: "{{ redmine_user }}"
group: "{{ redmine_user }}"
mode: "0750"
loop:
- "releases"
- "releases/{{ redmine_version }}"
tags:
- redmine
- name: Download Redmine archive
unarchive:
src: "https://redmine.org/releases/redmine-{{ redmine_version }}.tar.gz"
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}"
remote_src: True
extra_opts: --strip-components=1
owner: "{{ redmine_user }}"
group: "{{ redmine_user }}"
tags:
- redmine
- name: Link config files
file:
state: link
src: "/home/{{ redmine_user }}/config/{{ item }}"
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}/config/{{ item }}"
owner: "{{ redmine_user }}"
group: "{{ redmine_user }}"
loop:
- 'configuration.yml'
- 'database.yml'
- 'additional_environment.rb'
tags:
- redmine
- name: Copy/Update plugin from archive
unarchive:
src: "{{ item.zip }}"
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}/plugins/"
remote_src: yes
owner: "{{ redmine_user }}"
group: "{{ redmine_user }}"
mode: "0750"
when: item.zip is defined
loop: "{{ redmine_plugins }}"
tags:
- redmine
- name: Copy/Update plugin from git repository
git:
repo: "{{ item.git }}"
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}/plugins/{{ item.git | basename | splitext | first }}"
version: "{{ item.tree | default('master') }}"
umask: "027"
become_user: "{{ redmine_user }}"
when: item.git is defined
loop: "{{ redmine_plugins }}"
tags:
- redmine
- name: Copy/Update theme from archive
unarchive:
src: "{{ item.zip }}"
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}/public/themes"
remote_src: yes
owner: "{{ redmine_user }}"
group: "{{ redmine_user }}"
mode: "0750"
when: item.zip is defined
loop: "{{ redmine_themes }}"
tags:
- redmine
- name: Copy/Update theme from git repository
git:
repo: "{{ item.git }}"
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}/public/themes/{{ item.git | basename | splitext | first }}"
version: "{{ item.tree | default('master') }}"
umask: "027"
become_user: "{{ redmine_user }}"
when: item.git is defined
loop: "{{ redmine_themes }}"
tags:
- redmine
- name: Deploy custom Gemfile
template:
src: Gemfile.local.j2
dest: "/home/{{ redmine_user }}/releases/{{ redmine_version }}/Gemfile.local"
owner: "{{ redmine_user }}"
group: "{{ redmine_user }}"
mode: "0640"
tags:
- redmine