ntfy-emergency-app: remove it

No longer used. Playbook, vars, the avisame subdomain, its DNS and HTTP
checks and the setup docs all go.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
counterweight 2026-10-19 22:10:22 +02:00
parent f8fe3c6baf
commit 9181ff6e10
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
6 changed files with 0 additions and 104 deletions

View file

@ -36,7 +36,6 @@ subdomains:
lnbits: wallet
# Secondary services (vipy)
ntfy_emergency_app: avisame
personal_blog: pablohere
# Memos (memos-box)

View file

@ -26,7 +26,6 @@
- {sub: "{{ subdomains.vaultwarden }}", host: vipy}
- {sub: "{{ subdomains.forgejo }}", host: vipy}
- {sub: "{{ subdomains.lnbits }}", host: vipy}
- {sub: "{{ subdomains.ntfy_emergency_app }}", host: vipy}
- {sub: "{{ subdomains.personal_blog }}", host: vipy}
- {sub: "{{ subdomains.memos }}", host: vipy}
- {sub: "{{ subdomains.mempool }}", host: vipy}
@ -52,7 +51,6 @@
- {name: vaultwarden, sub: "{{ subdomains.vaultwarden }}", path: "/", status: 200}
- {name: forgejo, sub: "{{ subdomains.forgejo }}", path: "/", status: 200}
- {name: lnbits, sub: "{{ subdomains.lnbits }}", path: "/", status: 200}
- {name: avisame, sub: "{{ subdomains.ntfy_emergency_app }}", path: "/", status: 200}
- {name: blog, sub: "{{ subdomains.personal_blog }}", path: "/", status: 200}
- {name: memos, sub: "{{ subdomains.memos }}", path: "/", status: 200}
- {name: mempool, sub: "{{ subdomains.mempool }}", path: "/", status: 200}

View file

@ -1,62 +0,0 @@
- name: Deploy ntfy-emergency-app with Docker Compose and configure Caddy reverse proxy
hosts: edge
become: yes
vars_files:
- ./ntfy_emergency_app_vars.yml
vars:
ntfy_emergency_app_subdomain: "{{ subdomains.ntfy_emergency_app }}"
ntfy_emergency_app_domain: "{{ ntfy_emergency_app_subdomain }}.{{ root_domain }}"
# ⚠ UNRESOLVED: this app sends its notifications to an ntfy server, and the
# server it points at ran on watchtower, which is being destroyed. This was
# derived from subdomains.ntfy, which is now gone with it.
#
# Until an ntfy server exists again this URL is dead, and the app fails
# silently at exactly the moment it matters - it is an EMERGENCY notifier.
# Three ways out, none of them automatic:
# * stand ntfy up somewhere else (the monitoring VPS, or vipy)
# * point this at the public ntfy.sh
# * retire the app
ntfy_emergency_app_ntfy_url: "{{ ntfy_service_url }}"
ntfy_emergency_app_ntfy_user: "{{ ntfy_username | default('') }}"
ntfy_emergency_app_ntfy_password: "{{ ntfy_password | default('') }}"
tasks:
- name: Create ntfy-emergency-app directory
file:
path: "{{ ntfy_emergency_app_dir }}"
state: directory
owner: "{{ ansible_user }}"
group: "{{ ansible_user }}"
mode: '0755'
- name: Create docker-compose.yml for ntfy-emergency-app
copy:
dest: "{{ ntfy_emergency_app_dir }}/docker-compose.yml"
content: |
version: "3"
services:
ntfy-emergency-app:
image: ghcr.io/pmartincalvo/ntfy-emergency-app:latest
container_name: ntfy-emergency-app
restart: unless-stopped
ports:
- "{{ ntfy_emergency_app_port }}:3000"
environment:
NTFY_TOPIC: "{{ ntfy_emergency_app_topic }}"
NTFY_URL: "{{ ntfy_emergency_app_ntfy_url }}"
NTFY_USER: "{{ ntfy_emergency_app_ntfy_user }}"
NTFY_PASSWORD: "{{ ntfy_emergency_app_ntfy_password }}"
UI_MESSAGE: "{{ ntfy_emergency_app_ui_message }}"
- name: Deploy ntfy-emergency-app container with docker compose
command: docker compose up -d
args:
chdir: "{{ ntfy_emergency_app_dir }}"
- name: Publish ntfy-emergency-app through Caddy
ansible.builtin.include_role:
name: caddy_site
vars:
caddy_site_name: ntfy-emergency-app
caddy_site_domain: "{{ ntfy_emergency_app_domain }}"
caddy_site_upstream: "localhost:{{ ntfy_emergency_app_port }}"

View file

@ -1,22 +0,0 @@
# General
ntfy_emergency_app_dir: /opt/ntfy-emergency-app
ntfy_emergency_app_port: 3000
# (subdomain in group_vars/all/main.yml, caddy_sites_dir in roles/caddy_site/defaults/)
# ntfy configuration
ntfy_emergency_app_topic: "emergencia"
ntfy_emergency_app_ui_message: "Leave Pablo a message, he will respond as soon as possible"
# Remote access
remote_host_name: "{{ groups['edge'] | first }}"
remote_host: "{{ hostvars.get(remote_host_name, {}).get('ansible_host', remote_host_name) }}"
remote_user: "{{ hostvars.get(remote_host_name, {}).get('ansible_user', 'counterweight') }}"
remote_key_file: "{{ hostvars.get(remote_host_name, {}).get('ansible_ssh_private_key_file', '') }}"
remote_port: "{{ hostvars.get(remote_host_name, {}).get('ansible_port', 22) }}"
# Where the emergency notifications are sent. This pointed at ntfy.contrapeso.xyz
# on watchtower; that host is being destroyed, so this MUST be repointed before
# the app can work again. Left at the old value so the break is visible rather
# than silently defaulted to something plausible.
ntfy_service_url: "https://ntfy.contrapeso.xyz"

View file

@ -64,7 +64,6 @@
- import_playbook: services/vaultwarden/deploy_vaultwarden_playbook.yml
- import_playbook: services/forgejo/deploy_forgejo_playbook.yml
- import_playbook: services/lnbits/deploy_lnbits_playbook.yml
- import_playbook: services/ntfy-emergency-app/deploy_ntfy_emergency_app_playbook.yml
- import_playbook: services/personal-blog/deploy_personal_blog_playbook.yml
# ── Backups: each source dumps itself, the box pulls ────────────────────────