Add initial templates for docker-compose services (gitea, nextcloud, traefik)
This commit is contained in:
33
roles/gitea/tasks/main.yml
Normal file
33
roles/gitea/tasks/main.yml
Normal file
@@ -0,0 +1,33 @@
|
||||
# https://stackoverflow.com/questions/41667864/can-the-templates-module-handle-multiple-templates-directories
|
||||
|
||||
- name: Ensure service directory exists
|
||||
file:
|
||||
path: "{{ current_svc_path }}"
|
||||
state: directory
|
||||
mode: "500"
|
||||
|
||||
- name: Ensure directory structure exists
|
||||
file:
|
||||
path: "{{ current_svc_path }}/{{ item.path }}"
|
||||
state: directory
|
||||
mode: "500"
|
||||
with_community.general.filetree: "{{ templates_source }}"
|
||||
when: item.state == "directory"
|
||||
|
||||
|
||||
- name: Include app config variables
|
||||
include_vars:
|
||||
file: "{{ role_path }}/vars/app_config.yml"
|
||||
|
||||
- name: Generate {{ current_svc_name }} deployment from templates
|
||||
template:
|
||||
src: "{{ item.src }}"
|
||||
dest: "{{ current_svc_path }}/{{ item.path | regex_replace('\\.j2$', '') }}"
|
||||
mode: "400"
|
||||
with_community.general.filetree: "{{ templates_source }}"
|
||||
when: item.state == "file"
|
||||
|
||||
- name: Deploy docker-compose for {{ current_svc_name }}
|
||||
community.docker.docker_compose:
|
||||
project_src: "{{ current_svc_path }}"
|
||||
state: present
|
3
roles/gitea/templates/.env.db.j2
Normal file
3
roles/gitea/templates/.env.db.j2
Normal file
@@ -0,0 +1,3 @@
|
||||
POSTGRES_USER=gitea
|
||||
POSTGRES_DB=gitea
|
||||
POSTGRES_PASSWORD="{{ db_password }}"
|
25
roles/gitea/templates/.env.gitea.j2
Normal file
25
roles/gitea/templates/.env.gitea.j2
Normal file
@@ -0,0 +1,25 @@
|
||||
GITEA____APP_NAME=CazGitea
|
||||
|
||||
# Database
|
||||
GITEA__database__DB_TYPE=postgres
|
||||
GITEA__database__HOST=db:5432
|
||||
GITEA__database__NAME="{{ db_user }}"
|
||||
GITEA__database__USER="{{ db_name }}"
|
||||
GITEA__database__PASSWD="{{ db_password }}"
|
||||
|
||||
# Server
|
||||
GITEA__server__ROOT_URL=https://gitea.cazzzer.com/
|
||||
GITEA__server__DISABLE_SSH=true
|
||||
|
||||
# Mail
|
||||
GITEA__mailer__ENABLED=true
|
||||
GITEA__mailer__HOST=smtp.sendgrid.net:587
|
||||
GITEA__mailer__FROM=gitea@cazzzer.com
|
||||
GITEA__mailer__USER=apikey
|
||||
GITEA__mailer__PASSWD="{{ sendgrid_api_key }}"
|
||||
|
||||
# Security
|
||||
GITEA__security__SECRET_KEY="{{ secret_key }}"
|
||||
GITEA__security__INTERNAL_TOKEN="{{ internal_token }}"
|
||||
|
||||
GITEA__oauth2__JWT_SECRET="{{ jwt_secret }}"
|
41
roles/gitea/templates/docker-compose.yml.j2
Normal file
41
roles/gitea/templates/docker-compose.yml.j2
Normal file
@@ -0,0 +1,41 @@
|
||||
version: "3.9"
|
||||
|
||||
networks:
|
||||
default:
|
||||
traefik_traefik:
|
||||
external: true
|
||||
|
||||
volumes:
|
||||
gitea:
|
||||
postgres:
|
||||
|
||||
services:
|
||||
server:
|
||||
image: gitea/gitea:1.16.9
|
||||
container_name: gitea_server
|
||||
labels:
|
||||
- traefik.enable=true
|
||||
- traefik.http.routers.gitea.rule=Host(`gitea.lab.cazzzer.com`)
|
||||
- traefik.http.services.gitea.loadbalancer.server.port=3000
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
- .env.gitea
|
||||
networks:
|
||||
- default
|
||||
- traefik_traefik
|
||||
volumes:
|
||||
- gitea:/data
|
||||
ports:
|
||||
- "8011:3000"
|
||||
depends_on:
|
||||
- db
|
||||
db:
|
||||
image: postgres:14-alpine
|
||||
container_name: gitea_db
|
||||
restart: unless-stopped
|
||||
env_file:
|
||||
- .env.db
|
||||
networks:
|
||||
- default
|
||||
volumes:
|
||||
- postgres:/var/lib/postgresql/data
|
27
roles/gitea/vars/app_config.yml
Normal file
27
roles/gitea/vars/app_config.yml
Normal file
@@ -0,0 +1,27 @@
|
||||
$ANSIBLE_VAULT;1.2;AES256;alpina
|
||||
35303032386566343430633238343936366234333434343763666231666232633539303232383534
|
||||
3035346233346162373939333531613535353232626531640a646537616163353736653161326265
|
||||
31336530316335623335353661373834613264326436303933326135396166346562343136353931
|
||||
6439383039346465300a366266393130356630316630333336616565366562613038393239623738
|
||||
65626664643630353236333932373337333363626337386163613464306638633964663264363964
|
||||
30373661393531306662323134626664656233323762393037356434353066343830333033316365
|
||||
65616636613437663737306263373066306361376630616331663031346434336663393862316464
|
||||
62343339663461353934323063653566303932656264363562333136353665336263646230323832
|
||||
35376666303531383961646234663230663634393135326664386665633538616233613866373965
|
||||
64363361313232316336376631646662376565353536316438306361306261663532386564616566
|
||||
61663534393035343233326562303863646165346538393761326335376165623964396130393831
|
||||
64333665313461666335383134613831376138393061343238643661366439636534626265323865
|
||||
35393035336632653038623438626366373733626331633866373935616531623664303063376562
|
||||
31356332346164663364636235333461383437623161343338643839323765336237633266633864
|
||||
64363234646533616439313638363865373364623637636537623666383664656630333533303233
|
||||
64383734366666633832393230663739333435666138636462336332373061346239306136336263
|
||||
39643666303863303035313738343664636536663939616335303834333834363739303938646665
|
||||
66303637633239373461393434313036316563313132356432633337666537616363373830313034
|
||||
61313538633663653230643262613333306361666131663036643162343966313365653566393235
|
||||
36623832663034373734653664613038363137366437326565373761663963636336393536386435
|
||||
30393831326134376639366661653439616138643438646363343632346131306532663439396534
|
||||
32383661306539306635336262383563376561303862396532633362666266313562623336383235
|
||||
36366565633734633639653239306331333237353233326563653930653739316230666362323931
|
||||
39663931376562653530323434656436353166393836643238643632396430353034333034333665
|
||||
62323338373839383132323537353431636537616366393965643463316164323034316536383961
|
||||
6164333537633631646663333463306236613038326339643439
|
5
roles/gitea/vars/main.yml
Normal file
5
roles/gitea/vars/main.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
current_svc_name: gitea
|
||||
current_svc_path: "{{ my_svc_path }}/{{ current_svc_name }}"
|
||||
|
||||
templates_source: "{{ role_path }}/templates"
|
Reference in New Issue
Block a user