WIP: Initial work on woodpecker ci. #152
|
@ -163,6 +163,12 @@ services:
|
||||||
volume_folder: "{{ volume_root_folder }}/drone"
|
volume_folder: "{{ volume_root_folder }}/drone"
|
||||||
version: 1
|
version: 1
|
||||||
|
|
||||||
|
woodpecker:
|
||||||
|
file: woodpecker.yml
|
||||||
|
domain: "ci.{{ base_domain }}"
|
||||||
|
volume_folder: "{{ volume_root_folder }}/woodpecker"
|
||||||
|
version: v0.15
|
||||||
|
|
||||||
mailu:
|
mailu:
|
||||||
file: mailu.yml
|
file: mailu.yml
|
||||||
version: 1.9
|
version: 1.9
|
||||||
|
|
41
roles/docker/tasks/services/woodpecker.yml
Normal file
41
roles/docker/tasks/services/woodpecker.yml
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
# vim: ft=yaml.ansible
|
||||||
|
---
|
||||||
|
- name: Set up Woodpecker CI with Docker runner
|
||||||
|
docker_compose:
|
||||||
|
project_name: woodpecker
|
||||||
|
pull: true
|
||||||
|
definition:
|
||||||
|
version: "3.8"
|
||||||
|
services:
|
||||||
|
server:
|
||||||
|
image: "woodpeckerci/woodpecker-server:{{ services.woodpecker.version }}"
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
samsapti marked this conversation as resolved
|
|||||||
|
- external_services
|
||||||
|
volumes:
|
||||||
|
- "{{ services.woodpecker.volume_folder }}:/data"
|
||||||
|
- "/var/run/docker.sock:/var/run/docker.sock"
|
||||||
|
environment:
|
||||||
|
WOODPECKER_GITEA: "true"
|
||||||
|
WOODPECKER_GITEA_URL: "https://{{ services.gitea.domain }}"
|
||||||
|
WOODPECKER_GITEA_CLIENT: "{{ woodpecker_secrets.oauth_client_id }}"
|
||||||
|
WOODPECKER_GITEA_SECRET: "{{ woodpecker_secrets.oauth_client_secret }}"
|
||||||
|
WOODPECKER_HOST: "https://{{ services.woodpecker.domain }}"
|
||||||
|
WOODPECKER_AGENT_SECRET: "{{ woodpecker_secrets.agent_secret }}"
|
||||||
|
VIRTUAL_HOST: "{{ services.woodpecker.domain }}"
|
||||||
|
LETSENCRYPT_HOST: "{{ services.woodpecker.domain }}"
|
||||||
|
LETSENCRYPT_EMAIL: "{{ letsencrypt_email }}"
|
||||||
|
|
||||||
|
agent:
|
||||||
|
image: "woodpeckerci/woodpecker-agent:{{ services.woodpecker.version }}"
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- "/var/run/docker.sock:/var/run/docker.sock"
|
||||||
|
environment:
|
||||||
|
WOODPECKER_SERVER: "server:9000"
|
||||||
|
WOODPECKER_AGENT_SECRET: "{{ woodpecker_secrets.agent_secret }}"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
external_services:
|
||||||
|
external: true
|
Loading…
Reference in a new issue
Unless you add
purge_networks: yes
thedefault
network is implicitly added (IMHO an annoying default). I think we should either addpurge_networks: yes
or leave outdefault
.default
is needed forserver
to be able to communicate with the other Compose services. (Why is it an annoying default?)