ansible-role-drone/tasks/main.yml

99 lines
2.1 KiB
YAML

---
# tasks file for drone
- name: 'Install dependencies'
package:
name:
- 'git'
- 'golang'
state: 'present'
- name: 'Create drone user'
user:
name: "{{ drone_user }}"
comment: "drone user"
home: "{{ drone_home }}"
shell: "/bin/false"
- name: 'Download latest drone'
git:
dest: "{{ drone_home }}/drone"
repo: https://github.com/drone/drone.git
version: "{{ drone_version }}"
force: true
become: true
become_user : "{{ drone_user }}"
notify: "Build drone"
- name: "Setup systemd service"
template:
src: drone.service.j2
dest: /lib/systemd/system/drone.service
owner: root
group: root
mode: 0644
notify:
- "Reload systemd"
- "Restart drone"
when: ansible_service_mgr == "systemd"
- name: "Clone runner"
get_url:
url: https://github.com/drone-runners/drone-runner-exec/releases/latest/download/drone_runner_exec_linux_amd64.tar.gz
dest: "{{ drone_home }}"
become: true
become_user : "{{ drone_user }}"
notify: "Unzip runner"
- name: "Make local runner config dir"
file:
path: "/etc/drone-runner-exec/"
state: directory
owner: drone
group: drone
mode: '0700'
notify:
- "Install drone runner exec"
- "Stop drone runner exec"
- "Start drone runner exec"
- name: "Make local runner config dir"
file:
path: "/var/log/drone-runner-exec/"
state: directory
owner: drone
group: drone
mode: '0700'
notify:
- "Install drone runner exec"
- "Stop drone runner exec"
- "Start drone runner exec"
- name: "Configure local runner"
template:
src: exec_runner_config.j2
dest: "/etc/drone-runner-exec/config"
owner: drone
group: drone
mode: '0700'
notify:
- "Install drone runner exec"
- "Stop drone runner exec"
- "Start drone runner exec"
- name: "Configure drone"
template:
src: "rundrone.sh.j2"
dest: "{{ drone_home }}/rundrone.sh"
owner: "{{ drone_user }}"
mode: 0700
notify: "Restart drone"
- name: "Service drone"
service:
name: "drone"
state: "started"
enabled: true
when: ansible_service_mgr == "systemd"