feat(gitea): create PersistentVolume and PersistentVolumeClaim for Gitea feat(gitea): add script to create Gitea runner registration token secret feat(gitea): deploy Gitea Actions runner with Docker socket access feat(media): deploy JDownloader with Ingress configuration feat(media): set up Jellyfin media server with NFS and Ingress feat(media): configure qBittorrent deployment with Ingress feat(monitoring): add Grafana Loki datasource ConfigMap feat(monitoring): create Grafana admin credentials secret feat(monitoring): define PersistentVolumes for monitoring stack feat(network): implement DDNS CronJob for Porkbun DNS updates feat(network): create secret for Porkbun DDNS API credentials feat(network): set up Glances service and Ingress for Debian node fix(network): patch Pi-hole DNS services with external IPs feat(network): configure Traefik dashboard Ingress with Authentik auth feat(network): set up Watch Party service and Ingress for Mac Mini refactor(values): update Helm values files for various services
32 lines
905 B
YAML
32 lines
905 B
YAML
---
|
|
# Part of role: watch-party
|
|
# Called by: ansible/playbooks/deploy-watch-party.yaml
|
|
# Description: Pulls the latest watch-party code from Gitea and deploys it via Docker Compose.
|
|
|
|
- name: Pull latest watch-party from Gitea
|
|
ansible.builtin.git:
|
|
repo: "{{ watch_party_repo }}"
|
|
dest: "{{ watch_party_dir }}"
|
|
version: main
|
|
update: yes
|
|
accept_hostkey: yes
|
|
environment:
|
|
GIT_SSL_NO_VERIFY: "true"
|
|
|
|
- name: Ensure .env exists
|
|
ansible.builtin.stat:
|
|
path: "{{ watch_party_dir }}/.env"
|
|
register: env_file
|
|
|
|
- name: Fail if .env is missing
|
|
ansible.builtin.fail:
|
|
msg: ".env file missing at {{ watch_party_dir }}/.env — create it manually on the Mac Mini first"
|
|
when: not env_file.stat.exists
|
|
|
|
- name: Deploy watch-party via Docker Compose
|
|
community.docker.docker_compose_v2:
|
|
project_src: "{{ watch_party_dir }}"
|
|
state: present
|
|
pull: always
|
|
become: false
|