52 lines
2.5 KiB
YAML
52 lines
2.5 KiB
YAML
---
|
|
# The Proxmox LXC created by src/forgejo/terraform (VMID 160), on
|
|
# turtle-proxmox-02. Named for the container's hostname, which is how it
|
|
# appears in the API-backed dynamic inventory.
|
|
#
|
|
# This was empty for a long time while Forgejo also ran as a Compose stack on
|
|
# nas2 — two deployments sharing one Vault path and one database means the
|
|
# second to start wins and the other quietly serves stale state. nas2 has
|
|
# since been retired, so there is no longer a second copy to collide with and
|
|
# the `apps:` list below is live.
|
|
#
|
|
# WHAT THIS DOES NOT DO: nothing here moves repository data. Ansible
|
|
# provisions the database and installs the app; a Forgejo with no
|
|
# /var/lib/forgejo/data/forgejo-repositories is a working, empty forge. If the
|
|
# nas2 repositories still exist somewhere, restore them into
|
|
# `FORGEJO_DATA_PATH` and `chown -R git:git /var/lib/forgejo/data` before
|
|
# pointing DNS at this host — the original instructions here were an rsync
|
|
# off nas2, which is no longer a machine that can be read from.
|
|
#
|
|
# Also note SSH clone URLs move from port 2222 to 22 (see FORGEJO_SSH_PORT in
|
|
# src/forgejo/ansible/proxmox/vars.yml): existing remotes need editing, and
|
|
# git.turtlesystems.uk has to resolve to this container.
|
|
|
|
# The address Terraform assigns this guest (build/config/terraform/main.tf).
|
|
# Pinned here rather than left to DNS: the API-backed dynamic inventory
|
|
# supplies no `ansible_host`, so without this Ansible SSHes to the bare
|
|
# inventory name `forgejo`, which the LAN's resolver has no record for at
|
|
# all. These addresses are hand-assigned from the 192.168.50.50-.59 band
|
|
# anyway, so restating one here duplicates nothing that was ever derived.
|
|
ansible_host: 192.168.50.52
|
|
|
|
apps:
|
|
- name: forgejo
|
|
src: forgejo
|
|
vault_path: homelab/forgejo
|
|
db:
|
|
# The shared Postgres LXC, reached over the LAN. Unlike the Unraid
|
|
# host_vars this can't be `{{ ansible_host }}` — that would be this
|
|
# container's own address, not the database's. Keep in step with
|
|
# DB_HOST in src/forgejo/ansible/proxmox/vars.yml; the authoritative
|
|
# copy of both is the `postgres_address` output in
|
|
# build/config/terraform/main.tf.
|
|
#
|
|
# Provisioning runs from the Ansible controller (`delegate_to:
|
|
# localhost` in roles/lxc_app), so this address has to be reachable
|
|
# from wherever you run the playbook, not just from this container.
|
|
provision_host: 192.168.50.54
|
|
provision_port: 5432
|
|
name: forgejo
|
|
user: forgejo
|
|
password_vault_key: DB_PASSWORD
|
|
admin_vault_path: homelab/shared/postgres
|