From 77f8655e0cc2f0e1cb3b5e614c1af06af743982a Mon Sep 17 00:00:00 2001 From: Jakob Meier Date: Wed, 29 May 2024 08:36:59 +0200 Subject: [PATCH] containers/forgejo-runner: restore role --- roles/containers/forgejo-runner/README.org | 12 +++++++ .../forgejo-runner/defaults/main.yml | 5 +++ .../containers/forgejo-runner/tasks/main.yml | 3 ++ .../containers/forgejo-runner/tasks/setup.yml | 31 +++++++++++++++++++ run.yml | 6 ++++ 5 files changed, 57 insertions(+) create mode 100644 roles/containers/forgejo-runner/README.org create mode 100644 roles/containers/forgejo-runner/defaults/main.yml create mode 100644 roles/containers/forgejo-runner/tasks/main.yml create mode 100644 roles/containers/forgejo-runner/tasks/setup.yml diff --git a/roles/containers/forgejo-runner/README.org b/roles/containers/forgejo-runner/README.org new file mode 100644 index 0000000..9a4d6e7 --- /dev/null +++ b/roles/containers/forgejo-runner/README.org @@ -0,0 +1,12 @@ +* /roles/containers/forgejo-runner +[[https://code.forgejo.org/forgejo/runner][forgejo-runner]] module used to run [[https://forgejo.org/docs/latest/user/actions/][Actions]]. + +Before using this, +you probably want to set/edit the following variables +in your ~secret.yml~ (or your unencrypted config): +#+begin_src yaml +forgejo_runner_project_dir: "forgejo-runner" +forgejo_runner_token: "changeme" +forgejo_runner_name: "runner" +forgejo_runner_instance: "https://codeberg.org/" +#+end_src diff --git a/roles/containers/forgejo-runner/defaults/main.yml b/roles/containers/forgejo-runner/defaults/main.yml new file mode 100644 index 0000000..a84d6ea --- /dev/null +++ b/roles/containers/forgejo-runner/defaults/main.yml @@ -0,0 +1,5 @@ +--- +forgejo_runner_project_dir: "forgejo-runner" +forgejo_runner_token: "changeme" +forgejo_runner_name: "runner" +forgejo_runner_instance: "https://codeberg.org/" diff --git a/roles/containers/forgejo-runner/tasks/main.yml b/roles/containers/forgejo-runner/tasks/main.yml new file mode 100644 index 0000000..3141be7 --- /dev/null +++ b/roles/containers/forgejo-runner/tasks/main.yml @@ -0,0 +1,3 @@ +--- +- name: Setup forgejo runner docker images + ansible.builtin.include_tasks: setup.yml diff --git a/roles/containers/forgejo-runner/tasks/setup.yml b/roles/containers/forgejo-runner/tasks/setup.yml new file mode 100644 index 0000000..059e43e --- /dev/null +++ b/roles/containers/forgejo-runner/tasks/setup.yml @@ -0,0 +1,31 @@ +--- +- name: Ensure forgejo-runner-project-dir exists + ansible.builtin.file: + path: "{{ container_dir }}/{{ forgejo_runner_project_dir }}" + state: directory + recurse: true + +- name: Create forgejo-runner registration + community.docker.docker_container: + name: forgejo-runner-bootstrap + image: code.forgejo.org/forgejo/runner:2.3.0 + working_dir: "/data" + command: "register \ + --no-interactive \ + --token {{ forgejo_runner_token }} \ + --name {{ forgejo_runner_name }} \ + --instance {{ forgejo_runner_instance }} + --labels docker" + volumes: + - "{{ container_dir }}/{{ forgejo_runner_project_dir }}/:/data" + +- name: Setup forgejo-runner + community.docker.docker_container: + name: forgejo-runner + image: code.forgejo.org/forgejo/runner:2.3.0 + working_dir: "/data" + restart_policy: unless-stopped + command: daemon + volumes: + - "{{ container_dir }}/{{ forgejo_runner_project_dir }}/:/data" + - /var/run/docker.sock:/var/run/docker.sock diff --git a/run.yml b/run.yml index 12c93c5..cb5a013 100644 --- a/run.yml +++ b/run.yml @@ -40,6 +40,12 @@ roles: - role: containers/akkoma tags: akkoma +# Setup Forgejo Runner +- name: Setup Forgejo Runner + hosts: all + roles: + - role: containers/forgejo-runner + tags: forgejo-runner # Setup Wireguard - name: Setup Wireguard hosts: all -- 2.38.5