act runner
This commit is contained in:
109
playbooks/gitea.yml
Normal file
109
playbooks/gitea.yml
Normal file
@@ -0,0 +1,109 @@
|
||||
# code language=ansible
|
||||
---
|
||||
|
||||
- name: Install act_runner
|
||||
hosts: main
|
||||
vars:
|
||||
gitea__tasks:
|
||||
- all
|
||||
vars_prompt:
|
||||
- name: gitea__runner_token
|
||||
prompt: Input your runner token obtained on https://git.cantorgymnasium.de/org/gcg/settings/actions/runners
|
||||
private: false
|
||||
tasks:
|
||||
- name: Get latest act_runner version
|
||||
ansible.builtin.uri:
|
||||
url: https://gitea.com/api/v1/repos/gitea/act_runner/releases
|
||||
method: GET
|
||||
force: true
|
||||
return_content: true
|
||||
run_once: true
|
||||
register: json_response
|
||||
|
||||
- name: Install act_runner {{ act_runner_version }}
|
||||
vars:
|
||||
act_runner_version: "{{ (json_response.content | from_json)[0].name | replace('v', '') }}"
|
||||
ansible.builtin.get_url:
|
||||
url: https://gitea.com/gitea/act_runner/releases/download/v{{ act_runner_version }}/act_runner-{{ act_runner_version }}-linux-amd64
|
||||
dest: /usr/local/bin/act_runner
|
||||
mode: 0755
|
||||
|
||||
- name: Create runner user
|
||||
ansible.builtin.user:
|
||||
name: runner
|
||||
password: !
|
||||
append: true
|
||||
groups: docker
|
||||
create_home: true
|
||||
home: /opt/runner
|
||||
|
||||
- name: Set correct home directory permissions
|
||||
ansible.builtin.file:
|
||||
name: /opt/runner
|
||||
state: directory
|
||||
owner: runner
|
||||
group: runner
|
||||
recurse: true
|
||||
|
||||
- name: Copy config file
|
||||
ansible.builtin.copy:
|
||||
src: runner-config.yml
|
||||
dest: /opt/runner/config.yml
|
||||
owner: runner
|
||||
group: runner
|
||||
|
||||
- name: Register runner
|
||||
ansible.builtin.command:
|
||||
chdir: /opt/runner
|
||||
creates: /opt/runner/.runner
|
||||
argv:
|
||||
- /usr/local/bin/act_runner
|
||||
- register
|
||||
- --instance
|
||||
- "https://git.cantorgymnasium.de/"
|
||||
- --name
|
||||
- "{{ gitea__runner_name }}"
|
||||
- --labels
|
||||
- "{{ gitea__runner_labels }}"
|
||||
- --token
|
||||
- "{{ gitea__runner_token }}"
|
||||
- --no-interactive
|
||||
- -c
|
||||
- /opt/runner/config.yml
|
||||
|
||||
- name: Set correct .runner file permissions
|
||||
ansible.builtin.file:
|
||||
name: /opt/runner/.runner
|
||||
state: file
|
||||
owner: runner
|
||||
group: runner
|
||||
|
||||
- name: Copy systemd service file
|
||||
ansible.builtin.copy:
|
||||
src: act_runner.service
|
||||
dest: /etc/systemd/system/
|
||||
owner: root
|
||||
group: root
|
||||
|
||||
- name: Enable systemd service
|
||||
ansible.builtin.systemd_service:
|
||||
daemon_reload: true
|
||||
name: act_runner.service
|
||||
enabled: true
|
||||
state: started
|
||||
|
||||
- name: Copy update script
|
||||
ansible.builtin.copy:
|
||||
src: "act_runner-updater.sh"
|
||||
dest: /opt/act_runner-updater.sh
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: root
|
||||
|
||||
- name: Create working directory
|
||||
ansible.builtin.file:
|
||||
name: /opt/runner/workdir
|
||||
state: directory
|
||||
owner: runner
|
||||
group: runner
|
||||
recurse: true
|
||||
Reference in New Issue
Block a user