---
# -- --
timezone: "America/Los_Angeles"
# -- --
# -- --
ansible_user: serve
# -- --
# -- --
loadbalancer_ip: "10.128.0.200"
homelab_network: "10.128.0.0/16"
swarm_network: "10.0.0.0/8"
docker_network: "172.16.0.0/12"
headnet_network: "100.64.0.0/10"
rfc1918_cgnat_networks:
- 10.0.0.0/8
- "{{ docker_network }}"
- 192.168.0.0/16
- "{{ headnet_network }}"
# -- --
# -- --
domain: "liz.coffee"
idm_domain: "idm.{{ domain }}"
headscale_host: "vpn.{{ domain }}"
headscale_nodes_domain: "in.{{ domain }}"
mail_domain: "mail.{{ domain }}"
oci_domain: "oci.{{ domain }}"
passwd_domain: "passwd.{{ domain }}"
oauth_proxy_domain: "fwdauth.{{ domain }}"
outbound_domain: "outbound.{{ domain }}"
# -- --
# -- --
docker_gid: 995
# -- --
# -- --
info_mail_user: "info"
info_mail: "{{ info_mail_user }}@{{ domain }}"
# see secret for info mail password
# -- --
# -- --
traextor_base: "{{ swarm_base }}/traextor"
letsencrypt_certs: "{{ traextor_base }}/volumes/certs/letsencrypt"
# -- --
# -- --
# first deployment?
homelab_build: false
#homelab_build: true
# -- --
# -- --
deployment_time: "{{ now(utc=true,fmt='%s') }}"
# -- --
# -- --
admins: "coffee_admins@{{ idm_domain }}"
# -- --
# -- --
me_lizcoffee_key: "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDRHu3h9mDjQyFbojcxGKW0hPUDfgUmb2WCzd4Dv2qISM3GGt9LjD8o0IbWRNaTf5UyId5lu7wNHtygs5ZDfUVnlfxrI1CmoExuqkYFjy+R9Cu0x1J2w7+MrKPBd5akLCuKTTnXbyv79T0tLb07rCpGHojW8HH6wdDtg0siVqsPqZVTjg7WGbBYqiqlA5p8s+V9xN1q8lTOZrRI0PdgoU8W+1oIr9OHSG1ZeUBQx60izTEwMnWBxY2aA8SQolIVvsJCcMMc/EAnaz/rdJ5IkeqXGslIhUI7WCPHnPWN8CSdwMOLi5BNaOAK7Y2FkfKTUlO7I52BL87Cl3YpMxR0mTDrfSJTSp0B3ZAbUIXDA7biSh04YLwGQVI799vcyJf355A60btPaiuiBgI0am3h0WxnOACg7K6eV023EiUQ24UjlQ8pufHcJ1oDW8v6LHlp/atCWOl9KQIun9UUg8DD8/BLPprc0wzAV6Nco0ZIedouxZuUhduYYvUrLJ+ICpaZg6oPGitVJPIgyyI+WTfjRN4WTj/Z3Yhuj0RqF8b5ea4FNWuJtfF724t7SVnZsYlZGSCqL8gaEzbIATVe3THn5VwbK+S4ELD/9W6MOd6aZcTOK2yP3jlwjcjnW8sLuX+2qNwtSVVa4o5VsRZU40Da+3flzoBsyUwSE3H2PsFPH29lIQ== lizzy@yubikey"
# -- --
# -- --
mesh:
lucina:
gateway: "10.128.0.44"
domain: "lucina.cloud"
forward_dns: true
split_vpn_dns_to: "10.128.0.44"
private_records: []
public_healthchecks: []
private_healthchecks: []
liz:
gateway: "{{ loadbalancer_ip }}"
domain: "{{ domain }}"
forward_dns: false
split_vpn_dns_to: "{{ loadbalancer_ip }}"
public_healthchecks:
- "https://{{ domain }}"
- "https://{{ idm_domain }}/status"
- "https://{{ headscale_host }}/health"
- "https://fwdauth.{{ domain }}/oauth2/sign_in"
- "https://test.{{ domain }}/"
- "https://graph.{{ domain }}/"
- "https://src.{{ domain }}/"
private_healthchecks:
- "https://mon.{{ domain }}"
- "https://bin.{{ domain }}"
- "https://ci.{{ domain }}"
- "https://notes.{{ domain }}"
private_records:
- type: "A"
name: "piplup.{{ domain }}"
ip: "10.128.0.101"
- type: "A"
name: "togepi.{{ domain }}"
ip: "10.128.0.102"
- type: "A"
name: "roton.{{ domain }}"
ip: "10.128.0.103"
- type: "A"
name: "{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "oci.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "ci.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "test.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "bin.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "idm.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "kanban.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "loadbalancer.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "notes.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "passwd.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "pihole.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "proxy.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "src.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "fwdauth.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "swarm.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "traefik.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "prometheus.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "mon.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
- type: "A"
name: "graph.{{ domain }}"
ip: "{{ loadbalancer_ip }}"
# -- --
# -- --
logo: |
--| |--
--| ~ welcome to ~ |--
--| |--
--| .-. _ .--. .--. |--
--| :.: :_; : .-': .-' |--
--| :.: .-..---. .--. .--. : `; : `;.--. .--. |--
--| :.:_ : :`-'_.' _ ' ..'' .; :: : : :' '_.'' '_.' |--
--| `.__;:_;`.___;:_;`.__.'`.__.':_; :_;`.__.'`.__.' |--
--| |--
--| ~₊˚⊹ ⋆˚✿˖°~ -────୨ৎ────- ~₊˚⊹ ⋆˚✿˖°~ |--
--| ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⣀⣀⣀⣀⣀⣀⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ |--
--| ⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠤⠒⠉⠉⠉⣀⣂⣅⠬⡉⠭⢛⠿⢟⡶⣄⡀⠀⠀⠀⠀ we'll get brewing |--
--| ⠀⠀⠀⠀⠀⠀⠀⣠⠞⠁⠀⣄⢎⢩⢸⢉⣵⡖⢰⣶⣮⢹⣦⣡⢊⢻⡿⣦⠀⠀⠀ right away! |--
--| ⠀⠀⠀⠀⠀⠀⢠⡇⠀⠀⢎⠕⢭⢪⡶⠈⢿⣷⣿⠟⣋⣚⣯⣒⣣⡑⢨⢻⡇⠀⣀⣀⠀⠀⠀ |--
--| ⠀⠀⠀⠀⠀⣀⡼⣧⠀⠄⡊⢼⡩⣾⢌⠳⡜⣉⡠⡜⡞⣵⣊⡧⡠⠝⣣⡾⠁⠀⠻⠿⠗⠀⠀ /) /) (\ (\ |--
--| ⠀⠀⠀⣢⣾⡟⣥⠻⣷⣌⡀⠬⡘⢅⡟⡇⡮⣷⡾⡿⢋⣉⢣⢔⣎⠿⠊⠀⠀⡴⣛⠆⠌⠀⠀ ( . .) (. . ) |--
--| ⠀⢀⣶⡟⣡⣿⣿⣟⢯⣟⢿⣷⣶⣯⣬⣵⣾⣷⣶⡾⠧⠞⠓⠉⠀⠀⠀⢀⠘⠈⠀⠠⢘⡤⠀ ( づ ˚♡︎˖ ⊂ ) |--
--| ⠄⣾⠏⣐⣛⡻⢿⣿⣯⣿⣿⣿⣾⣽⣛⣍⢃⡂⢄⠀⡀⠀⡀⠄⢂⠄⠡⢈⠒⡈⢒⠘⠴⢀⠀ |--
--| ⢰⣿⠀⠈⠻⣜⣄⠈⢙⣾⢿⣿⣿⣿⡿⣜⢣⡜⢢⠁⠄⡐⢠⢉⠂⠌⠀⡀⠄⠐⡀⠄⠐⠀⢐ ___ |--
--| ⠸⣟⠀⡐⡅⠈⠑⠀⠊⠝⠈⢖⡿⠿⣿⣾⡱⢊⠅⡌⡰⢌⢆⠣⠈⢀⠐⠀⠄⠂⠠⡈⠠⣈⡧ (...) |--
--| ⠀⢿⣆⠱⣘⣧⣤⣀⣀⡀⢒⡥⣑⢨⠒⡰⠯⠾⡼⠶⠙⢈⠀⣀⠂⡄⢂⣁⢢⣑⣶⡽⣳⠟⠁ _ \ _ |--
--| ⠀⠀⠻⣧⡜⢹⣿⣿⣿⣿⣿⣿⣿⣿⣷⣦⣴⡀⡀⠀⠛⠺⢿⣶⣿⣾⣷⣿⣿⣿⢟⣵⠏⠀⠀ ('> <') |--
--| ⠀⠀⠀⠈⠿⣶⣉⠻⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣷⣧⣤⢀⠀⠀⠈⠉⠙⠻⣯⡷⠟⠁⠀⠀⠀ (v) (v) |--
--| ⠀⠀⠀⠀⠀⠈⠙⠿⣶⣽⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣾⣞⣤⠀⠀⠀⠈⠀⠀⠀⠀⠀⠀\(__w w__)/ |--
--| ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠉⠛⠛⠛⠿⠿⠿⠿⠿⠿⠛⠛⠛⠉⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀ |--
--| |--
--| |--
# -- --