1
0
Fork 0

Initial version of woodpecker collection
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

Signed-off-by: Nis Wechselberg <enbewe@enbewe.de>
This commit is contained in:
Nis Wechselberg 2024-06-27 22:18:51 +02:00
parent 07a8b255d8
commit e30c984e12
Signed by: enbewe
GPG key ID: 7B25171F921B9E57
11 changed files with 309 additions and 0 deletions

View file

@ -0,0 +1,9 @@
---
woodpecker_podman_network: 'woodpecker'
woodpecker_server_image_name: 'docker.io/woodpeckerci/woodpecker-server'
woodpecker_server_image_tag: 'v3.5.2-alpine'
woodpecker_agent_image_name: 'docker.io/woodpeckerci/woodpecker-agent'
woodpecker_agent_image_tag: 'v3.5.2-alpine'
woodpecker_server_container_name: 'woodpecker-server'

View file

@ -0,0 +1,41 @@
---
- name: 'Reload woodpecker services'
become: true
ansible.builtin.service:
daemon_reload: true
- name: 'Restart woodpecker network'
become: true
ansible.builtin.service:
name: '{{ woodpecker_podman_network }}-network'
state: 'restarted'
- name: 'Restart woodpecker volumes'
become: true
ansible.builtin.service:
name: '{{ item }}'
state: 'restarted'
loop:
- '{{ woodpecker_server_data_volume }}-volume'
- '{{ woodpecker_agent_config_volume }}-volume'
- name: 'Restart woodpecker images'
become: true
ansible.builtin.service:
name: '{{ item }}'
state: 'restarted'
loop:
- 'woodpecker-server-image'
- 'woodpecker-agent-image'
- name: 'Restart woodpecker-server'
become: true
ansible.builtin.service:
name: 'woodpecker-server'
state: 'restarted'
- name: 'Restart woodpecker-agent'
become: true
ansible.builtin.service:
name: 'woodpecker-agent'
state: 'restarted'

View file

@ -0,0 +1,78 @@
---
- name: 'Install required software'
become: true
ansible.builtin.apt:
name: 'podman'
state: 'present'
- name: 'Prepare network'
become: true
containers.podman.podman_network:
name: '{{ woodpecker_podman_network }}'
ipv6: true
state: 'quadlet'
notify:
- 'Reload woodpecker services'
- 'Restart woodpecker network'
- name: 'Create woodpecker volumes'
become: true
containers.podman.podman_volume:
name: '{{ item }}'
state: 'quadlet'
loop:
- '{{ woodpecker_server_data_volume }}'
- '{{ woodpecker_agent_config_volume }}'
notify:
- 'Reload woodpecker services'
- 'Restart woodpecker volumes'
- name: 'Define woodpecker images'
become: true
containers.podman.podman_image:
name: '{{ item.image }}'
quadlet_filename: '{{ item.quadlet_name }}'
state: 'quadlet'
loop:
- image: '{{ woodpecker_server_image_name }}:{{ woodpecker_server_image_tag }}'
quadlet_name: 'woodpecker-server'
- image: '{{ woodpecker_agent_image_name }}:{{ woodpecker_agent_image_tag }}'
quadlet_name: 'woodpecker-agent'
notify:
- 'Reload woodpecker services'
- 'Restart woodpecker images'
- name: 'Create woodpecker-server container'
become: true
containers.podman.podman_container:
name: '{{ woodpecker_server_container_name }}'
image: 'woodpecker-server.image'
network: '{{ woodpecker_podman_network }}.network'
state: 'quadlet'
volume:
- '{{ woodpecker_server_data_volume }}.volume:/var/lib/woodpecker'
env: '{{ woodpecker_server_environments }}'
quadlet_options: |
[Install]
WantedBy=default.target
notify:
- 'Reload woodpecker services'
- 'Restart woodpecker-server'
- name: 'Create woodpecker-agent container'
become: true
containers.podman.podman_container:
name: 'woodpecker-agent'
image: 'woodpecker-agent.image'
network: '{{ woodpecker_podman_network }}.network'
state: 'quadlet'
volume:
- '{{ woodpecker_agent_config_volume }}.volume:/etc/woodpecker'
- '/var/run/podman/podman.sock:/var/run/docker.sock'
env: '{{ woodpecker_agent_environments }}'
quadlet_options: |
[Install]
WantedBy=default.target
notify:
- 'Reload woodpecker services'
- 'Restart woodpecker-agent'