runner

Ansible role that deployes services on my runner machine

2 KBYML
prerequisites.yml
2 KB75 lines • yaml
1---
2# Runner Services - Prerequisites and System Setup
3
4- name: Install required packages for runner services (excluding Docker - handled by geerlingguy.docker)
5  package:
6    name:
7      - nfs-common
8      - python3-docker
9      - python3-pip
10      - htop
11      - curl
12      - jq
13    state: present
14  become: yes
15  
16- name: Verify Docker is installed and running (installed by geerlingguy.docker role)
17  systemd:
18    name: docker
19    state: started
20  become: yes
21
22- name: Create local configuration directories
23  file:
24    path: "{{ item }}"
25    state: directory
26    owner: "{{ runner_user }}"
27    group: "{{ runner_group }}"
28    mode: '0775'
29  loop: "{{ runner_config_directories }}"
30
31- name: Set group sticky bit on runner directories for permission inheritance
32  file:
33    path: "{{ item }}"
34    state: directory
35    mode: "g+s"
36  loop: "{{ runner_config_directories }}"
37
38- name: Create NFS mount directories
39  file:
40    path: "{{ item }}"
41    state: directory
42    owner: "{{ runner_user }}"
43    group: "{{ runner_group }}"
44    mode: '0775'
45  loop: "{{ runner_nfs_directories }}"
46
47- name: Set group sticky bit on NFS directories for permission inheritance
48  file:
49    path: "{{ item }}"
50    state: directory
51    mode: "g+s"
52  loop: "{{ runner_nfs_directories }}"
53
54- name: Check Docker daemon is running
55  command: docker info
56  register: docker_info
57  changed_when: false
58  failed_when: docker_info.rc != 0
59  
60- name: Verify Docker Compose is working
61  command: docker compose version
62  register: compose_version
63  changed_when: false
64  failed_when: compose_version.rc != 0
65
66- name: Display Docker information
67  debug:
68    msg: |
69      Docker Information:
70      - Docker Compose Version: {{ compose_version.stdout }}
71      - Docker Status: Running
72      - Runner User: {{ runner_user }} (UID: {{ runner_uid }})
73      - Service Directory Structure: Each service in /docker/[service] format
74      - Total Config Directories: {{ runner_config_directories | length }}
75      - NFS Mount Path: {{ runner_nfs_mount_dir }}