migrate forgejo
This commit is contained in:
parent
9eb399876e
commit
589f45b786
7 changed files with 73 additions and 35 deletions
|
|
@ -14,3 +14,4 @@
|
||||||
- caddy
|
- caddy
|
||||||
- vaultwarden
|
- vaultwarden
|
||||||
- redbot
|
- redbot
|
||||||
|
- forgejo
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
- name: Deploy Caddyfile for {{ service_name }}
|
||||||
|
ansible.builtin.template:
|
||||||
|
src: compose-service.caddy.j2
|
||||||
|
dest: '{{ caddyfiles_directory }}/{{ service_name }}'
|
||||||
|
mode: '644'
|
||||||
|
when: "'caddy' in group_names"
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
http://{{ service_name }}.{{ ansible_hostname }} {
|
http://{{ service_name }}.{{ ansible_hostname }} {
|
||||||
reverse_proxy {{ service_name }}:80
|
reverse_proxy {{ service_name }}:{{ docker_http_port }}
|
||||||
encode zstd gzip
|
encode zstd gzip
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1,32 +1,30 @@
|
||||||
- name: Deploy service
|
- name: Assert mandatory variables are defines
|
||||||
block:
|
ansible.builtin.assert:
|
||||||
- name: Assert mandatory variables are defines
|
that:
|
||||||
ansible.builtin.assert:
|
- service_name is defined
|
||||||
that:
|
- docker_image is defined
|
||||||
- service_name is defined
|
|
||||||
- docker_image is defined
|
|
||||||
|
|
||||||
- name: Setup {{ service_user }} user and directories
|
- name: Setup {{ service_user }} user and directories
|
||||||
ansible.builtin.import_tasks: ../../common/tasks/create_service_user.yml
|
ansible.builtin.import_tasks: ../../common/tasks/create_service_user.yml
|
||||||
|
|
||||||
- name: Deploy {{ service_name }} docker-compose
|
- name: Deploy {{ service_name }} docker-compose
|
||||||
ansible.builtin.template:
|
ansible.builtin.template:
|
||||||
src: 'service.yml.j2'
|
src: 'service.yml.j2'
|
||||||
dest: '{{ service_root }}/docker-compose.yml'
|
dest: '{{ service_root }}/docker-compose.yml'
|
||||||
owner: '{{ service_user }}'
|
owner: '{{ service_user }}'
|
||||||
group: '{{ service_user }}'
|
group: '{{ service_user }}'
|
||||||
mode: '0644'
|
mode: '644'
|
||||||
|
|
||||||
- name: Start {{ service_name }} container
|
- name: Start {{ service_name }} container
|
||||||
community.docker.docker_compose_v2:
|
community.docker.docker_compose_v2:
|
||||||
project_src: '{{ service_root }}'
|
project_src: '{{ service_root }}'
|
||||||
state: present
|
state: present
|
||||||
remove_orphans: true
|
remove_orphans: true
|
||||||
recreate: always
|
recreate: always
|
||||||
|
|
||||||
- name: Add container to Caddy network
|
- name: Add container to Caddy network
|
||||||
community.docker.docker_network:
|
community.docker.docker_network:
|
||||||
name: Caddy
|
name: Caddy
|
||||||
connected:
|
connected:
|
||||||
- '{{ service_name }}'
|
- '{{ service_name }}'
|
||||||
appends: true
|
appends: true
|
||||||
|
|
|
||||||
5
roles/forgejo/defaults/main.yml
Normal file
5
roles/forgejo/defaults/main.yml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
service_name: forgejo
|
||||||
|
docker_image: codeberg.org/forgejo/forgejo
|
||||||
|
docker_image_version: 11
|
||||||
|
data_directory: "{{ service_root }}/data"
|
||||||
|
public_ssh_port: 222
|
||||||
31
roles/forgejo/tasks/main.yml
Normal file
31
roles/forgejo/tasks/main.yml
Normal file
|
|
@ -0,0 +1,31 @@
|
||||||
|
- name: Deploy Forgejo
|
||||||
|
ansible.builtin.import_role:
|
||||||
|
name: compose-service
|
||||||
|
vars:
|
||||||
|
docker_volumes:
|
||||||
|
- '{{ data_directory }}:/data'
|
||||||
|
- /etc/timezone:/etc/timezone:ro
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
|
docker_env:
|
||||||
|
USER_UID: '{{ getent_passwd[service_user].1 }}'
|
||||||
|
USER_GID: '{{ getent_passwd[service_user].2 }}'
|
||||||
|
FORGEJO__server__SSH_PORT: '{{ public_ssh_port }}'
|
||||||
|
FORGEJO__openid__ENABLE_OPENID_SIGNIN: false
|
||||||
|
FORGEJO__openid__ENABLE_OPENID_SIGNUP: false
|
||||||
|
docker_ports:
|
||||||
|
- "{{ public_ssh_port }}:22"
|
||||||
|
use_docker_user: false
|
||||||
|
|
||||||
|
- name: Ensure data directory exists
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: '{{ data_directory }}'
|
||||||
|
state: directory
|
||||||
|
owner: '{{ service_user }}'
|
||||||
|
group: '{{ service_user }}'
|
||||||
|
mode: '700'
|
||||||
|
|
||||||
|
|
||||||
|
- name: Deploy Caddyfile for Forgejo
|
||||||
|
vars:
|
||||||
|
docker_http_port: 3000
|
||||||
|
ansible.builtin.import_tasks: ../../common/tasks/create_caddyfile_for_compose-service.yml
|
||||||
|
|
@ -14,8 +14,6 @@
|
||||||
- '{{ data_directory }}:/data'
|
- '{{ data_directory }}:/data'
|
||||||
|
|
||||||
- name: Deploy Caddyfile for vaultwarden
|
- name: Deploy Caddyfile for vaultwarden
|
||||||
ansible.builtin.template:
|
vars:
|
||||||
src: vaultwarden.caddy.j2
|
docker_http_port: 80
|
||||||
dest: '{{ caddyfiles_directory }}/vaultwarden'
|
ansible.builtin.import_tasks: ../../common/tasks/create_caddyfile_for_compose-service.yml
|
||||||
mode: '644'
|
|
||||||
when: "'caddy' in group_names"
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue