From 223020f5cded23b8f9d2681761b9be67330e1cc0 Mon Sep 17 00:00:00 2001 From: Alpha Chen Date: Sun, 16 Jul 2023 19:13:47 -0700 Subject: [PATCH] woodpecker --- lotus-land-story/main.yml | 4 +- lotus-land-story/templates/Caddyfile | 8 ++++ lotus-land-story/templates/prometheus.yml | 5 +++ lotus-land-story/woodpecker.yml | 53 +++++++++++++++++++++++ 4 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 lotus-land-story/woodpecker.yml diff --git a/lotus-land-story/main.yml b/lotus-land-story/main.yml index c3aad08..5fda767 100644 --- a/lotus-land-story/main.yml +++ b/lotus-land-story/main.yml @@ -97,7 +97,9 @@ - import_playbook: grafana.yml # noqa: name[play] - import_playbook: loki.yml # noqa: name[play] - import_playbook: miniflux.yml # noqa: name[play] -- import_playbook: caddy.yml # noqa: name[play] - import_playbook: golink.yml # noqa: name[play] +- import_playbook: woodpecker.yml # noqa: name[play] + +- import_playbook: caddy.yml # noqa: name[play] # vim: ft=yaml.ansible diff --git a/lotus-land-story/templates/Caddyfile b/lotus-land-story/templates/Caddyfile index bd26f53..0e518cf 100644 --- a/lotus-land-story/templates/Caddyfile +++ b/lotus-land-story/templates/Caddyfile @@ -17,3 +17,11 @@ prometheus.{{ domain }} { grafana.{{ domain }} { reverse_proxy grafana:3000 } + +ci.{{ domain }} { + reverse_proxy woodpecker-server:8000 +} + +woodpecker.{{ domain }} { + reverse_proxy woodpecker-server:8000 +} diff --git a/lotus-land-story/templates/prometheus.yml b/lotus-land-story/templates/prometheus.yml index d45ddff..b7fb768 100644 --- a/lotus-land-story/templates/prometheus.yml +++ b/lotus-land-story/templates/prometheus.yml @@ -37,6 +37,11 @@ scrape_configs: static_configs: - targets: ['miniflux:8080'] + - job_name: woodpecker + bearer_token: {{ woodpecker.api_token }} + static_configs: + - targets: ['woodpecker-server:8000'] + - job_name: linode linode_sd_configs: - authorization: diff --git a/lotus-land-story/woodpecker.yml b/lotus-land-story/woodpecker.yml new file mode 100644 index 0000000..ec5732e --- /dev/null +++ b/lotus-land-story/woodpecker.yml @@ -0,0 +1,53 @@ +- name: Set up Woodpecker + hosts: lotus-land-story + vars_files: + - vars.yml + tasks: + + - name: Make /mnt/lotus-land-story/woodpecker + ansible.builtin.file: + path: /mnt/lotus-land-story/woodpecker + state: directory + mode: "0755" + # owner: 65532 + # group: 65532 + + - name: Run Woodpecker server + community.docker.docker_container: + name: woodpecker-server + image: woodpeckerci/woodpecker-server:v0.15.11 + restart: true + env: + # WOODPECKER_OPEN: "true" + WOODPECKER_HOST: "{{ woodpecker.host }}" + WOODPECKER_AGENT_SECRET: "{{ woodpecker.secret }}" + WOODPECKER_GITEA: "true" + WOODPECKER_GITEA_URL: "{{ woodpecker.gitea.url }}" + WOODPECKER_GITEA_CLIENT: "{{ woodpecker.gitea.client }}" + WOODPECKER_GITEA_SECRET: "{{ woodpecker.gitea.secret }}" + WOODPECKER_ADMIN: "alpha" + volumes: + - /mnt/lotus-land-story/woodpecker:/var/lib/woodpecker + restart_policy: unless-stopped + networks: + - name: lotus_land_story + + - name: Run Woodpecker agent + community.docker.docker_container: + name: woodpecker-agent + image: woodpeckerci/woodpecker-agent:v0.15.11 + restart: true + env: + WOODPECKER_SERVER: woodpecker-server:9000 + WOODPECKER_AGENT_SECRET: "{{ woodpecker.secret }}" + volumes: + - /var/run/docker.sock:/var/run/docker.sock + restart_policy: unless-stopped + networks: + - name: lotus_land_story + + handlers: + - name: Import restarts + ansible.builtin.import_tasks: restarts.yml + +# vim: ft=yaml.ansible