aboutsummaryrefslogtreecommitdiff
path: root/roles/gitea_runner/tasks
diff options
context:
space:
mode:
authorGravatar Jonas Gunz <himself@jonasgunz.de> 2023-04-14 17:22:21 +0200
committerGravatar Jonas Gunz <himself@jonasgunz.de> 2023-04-14 17:22:21 +0200
commit613cc4b223fe2fd29070a2df52cc6a8f4cf0e271 (patch)
treee077f4ab47f94c5ecfa2908e58b3386b26528756 /roles/gitea_runner/tasks
parent59b5e6cbb13bf00f074ec9cd4944055cc36192bc (diff)
downloadansible_collection-613cc4b223fe2fd29070a2df52cc6a8f4cf0e271.tar.gz
gitea_runner
Diffstat (limited to 'roles/gitea_runner/tasks')
-rw-r--r--roles/gitea_runner/tasks/main.yml87
1 files changed, 87 insertions, 0 deletions
diff --git a/roles/gitea_runner/tasks/main.yml b/roles/gitea_runner/tasks/main.yml
new file mode 100644
index 0000000..b050a12
--- /dev/null
+++ b/roles/gitea_runner/tasks/main.yml
@@ -0,0 +1,87 @@
+---
+- name: Install packages
+ apt:
+ name:
+ - docker.io
+ become: true
+
+- name: Create User
+ user:
+ name: runner
+ system: true
+ state: present
+ groups:
+ - docker
+ become: true
+
+- name: Folder structure
+ file:
+ path: '{{ item }}'
+ owner: runner
+ group: runner
+ mode: '750'
+ state: directory
+ become: true
+ loop:
+ - /var/lib/act_runner/
+ - /etc/act_runner/
+
+- name: Configuration
+ copy:
+ dest: /etc/act_runner/config.yaml
+ owner: runner
+ group: runner
+ content: '{{ gitea_runner.config | to_yaml }}'
+ become: true
+
+- name: pull sha256sum
+ uri:
+ url: 'https://dl.gitea.io/act_runner/{{ gitea_runner.version.ver }}/act_runner-{{ gitea_runner.version.ver }}-linux-amd64.sha256'
+ method: GET
+ return_content: yes
+ register: runner_sha256
+
+- name: Download Gitea act_runner
+ get_url:
+ url: 'https://dl.gitea.io/act_runner/{{ gitea_runner.version.ver }}/act_runner-{{ gitea_runner.version.ver }}-linux-amd64'
+ checksum: 'sha256:{{ (runner_sha256.content | split(" "))[0] }}'
+ dest: /usr/local/bin/act_runner
+ owner: root
+ group: root
+ mode: '755'
+ become: yes
+ notify:
+ - Handle systemd
+
+- name: Install gitea unit file
+ copy:
+ src: act_runner.service
+ dest: /etc/systemd/system/act_runner.service
+ become: yes
+ notify:
+ - Handle systemd
+
+- debug:
+ msg: '--labels {% for k, v in gitea_runner.tags.items() %}{{ k }}:{{ v }},{% endfor %}'
+
+
+- name: Register runner
+ shell:
+ cmd: '/usr/local/bin/act_runner -c /etc/act_runner/config.yaml register --instance {{ gitea_runner.gitea_url }} --token {{ gitea_runner.runner_token }} --no-interactive --labels {% for k, v in gitea_runner.tags.items() %}{{ k }}:{{ v }},{% endfor %}'
+ creates: '/var/lib/act_runner/runner.conf'
+ become_user: runner
+ become: true
+ notify:
+ - Handle systemd
+
+- name: Configure labels
+ lineinfile:
+ path: '/var/lib/act_runner/runner.conf'
+ state: present
+ insertafter: '"labels"'
+ line: ' "{{ item.key }}:{{ item.value }}",'
+ search_string: ' "{{ item.key }}:{{ item.value }}",'
+ with_dict: '{{ gitea_runner.tags }}'
+ become: true
+ notify:
+ - Handle systemd