Remove old homelab configs
This commit is contained in:
parent
4771981fc8
commit
caa5210559
@ -1,152 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
# Webservers
|
||||
---
|
||||
- hosts: pi-octoprint-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
module_defaults:
|
||||
docker_container:
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
tasks:
|
||||
- name: include tasks for applications
|
||||
include_tasks: tasks/{{ item }}
|
||||
with_items:
|
||||
- app/octoprint.yml
|
||||
tags: [ always ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
tags: [ backup ]
|
||||
- hosts: vm-ddns-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
module_defaults:
|
||||
docker_container:
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
tasks:
|
||||
- name: include tasks for applications
|
||||
include_tasks: tasks/{{ item }}
|
||||
with_items:
|
||||
- app/ddclient.yml
|
||||
- app/ddns-route53.yml
|
||||
tags: [ always ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
tags: [ backup ]
|
||||
- hosts: vm-scan-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
module_defaults:
|
||||
docker_container:
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
pre_tasks:
|
||||
- name: ensure docker network
|
||||
docker_network: name=web
|
||||
tags: [ docker ]
|
||||
tasks:
|
||||
- name: include tasks for applications
|
||||
include_tasks: tasks/{{ item }}
|
||||
with_items:
|
||||
- app/gvm.yml
|
||||
tags: [ always ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
tags: [ backup ]
|
||||
- hosts: vm-syncthing-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
module_defaults:
|
||||
docker_container:
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
pre_tasks:
|
||||
- name: ensure docker network
|
||||
docker_network: name=web
|
||||
tags: [ docker ]
|
||||
tasks:
|
||||
- name: assure nfs mount directory
|
||||
ansible.builtin.file: path=/data/syncthing/data state=directory mode=0755
|
||||
tags: [ storage ]
|
||||
- name: assure nfs mount
|
||||
mount: path=/data/syncthing/data src=192.168.190.1:/nfs/syncthing fstype=nfs4 opts="rsize=10248576,wsize=1048576,soft,timeo=600,retrans=2,_netdev" state=mounted
|
||||
tags: [ storage ]
|
||||
- name: include tasks for applications
|
||||
include_tasks: tasks/{{ item }}
|
||||
with_items:
|
||||
- app/syncthing.yml
|
||||
tags: [ always ]
|
||||
- name: assure movement cronjobs
|
||||
ansible.builtin.cron:
|
||||
name: "{{ item.name }}"
|
||||
minute: 0
|
||||
hour: 5
|
||||
job: "rsync -avHS --remove-source-files '/data/syncthing/data/{{ item.src }}/' '/data/syncthing/data/{{ item.dest }}/' && rmdir '/data/syncthing/data/{{ item.src }}' "
|
||||
with_items:
|
||||
# This works around a bug in my Android app lol
|
||||
- name: husky workaround
|
||||
src: Pictures/Husky
|
||||
dest: Pictures/Unsorted/Husky
|
||||
- name: husky test workaround
|
||||
src: Pictures/Husky Test
|
||||
dest: Pictures/Unsorted/Husky
|
||||
- name: move messaging to unsorted
|
||||
src: Pictures/Messaging
|
||||
dest: Pictures/Unsorted/Messaging
|
||||
- name: move discord to unsorted
|
||||
src: Pictures/Discord
|
||||
dest: Pictures/Unsorted/Discord
|
||||
- name: move camera roll to unsorted
|
||||
src: Pictures/Camera Roll
|
||||
dest: Pictures/Unsorted/Camera Roll
|
||||
- name: move cp2077 to screenshots
|
||||
src: Pictures/Cyberpunk 2077
|
||||
dest: Pictures/Screenshots/Vidya/Cyberpunk 2077
|
||||
tags: [ cron ]
|
||||
- name: assure zone identifier cleanup cronjob
|
||||
ansible.builtin.cron:
|
||||
name: cleanup zone.identtifier
|
||||
minute: 0
|
||||
hour: 3
|
||||
job: 'find /data/syncthing/data/ -type f -iname "*:Zone.Identifier" -delete'
|
||||
tags: [ cron ]
|
||||
- name: assure filename sanitize cronjobs
|
||||
ansible.builtin.cron:
|
||||
name: "sanitize {{ item }}"
|
||||
minute: 0
|
||||
hour: 4
|
||||
job: 'find /data/syncthing/data/ -type f -iname "*{{ item }}" | while read line; do mv "$line" "${line%{{ item }}}"; done'
|
||||
with_items:
|
||||
- ?name=orig.png
|
||||
- ?name=orig.jpeg
|
||||
tags: [ cron ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data/syncthing/config
|
||||
tags: [ backup ]
|
||||
- role: ingress
|
||||
vars:
|
||||
ingress_container_image: "nginx:latest"
|
||||
ingress_container_ports:
|
||||
- 80:80
|
||||
ingress_container_config_mount: /etc/nginx/conf.d
|
||||
ingress_container_persist_dir: /data/nginx
|
||||
ingress_listen_args: 80
|
||||
ingress_listen_tls: no
|
||||
ingress_servers:
|
||||
- name: syncthing.local.desu.ltd
|
||||
proxy_pass: http://syncthing:8384
|
||||
tags: [ ingress ]
|
@ -1,43 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
---
|
||||
# Home media storage Pi
|
||||
- hosts: pi-homeauto-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
module_defaults:
|
||||
docker_container:
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
pre_tasks:
|
||||
- name: ensure docker network
|
||||
docker_network: name=web
|
||||
tags: [ docker ]
|
||||
tasks:
|
||||
- name: include tasks for apps
|
||||
include_tasks: tasks/app/{{ task }}
|
||||
with_items:
|
||||
- homeassistant.yml
|
||||
loop_control:
|
||||
loop_var: task
|
||||
tags: [ always ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
backup_time: "Sun *-*-* 02:00:00"
|
||||
tags: [ backup ]
|
||||
- role: ingress
|
||||
vars:
|
||||
ingress_container_image: "nginx:latest"
|
||||
ingress_container_ports:
|
||||
- 80:80
|
||||
ingress_container_config_mount: /etc/nginx/conf.d
|
||||
ingress_container_persist_dir: /data/nginx
|
||||
ingress_listen_args: 80
|
||||
ingress_listen_tls: no
|
||||
ingress_servers:
|
||||
- name: homeauto.local.desu.ltd
|
||||
proxy_pass: http://localhost:8123
|
||||
tags: [ ingress ]
|
@ -1,12 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
---
|
||||
- hosts: vm-bastion-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
tasks:
|
||||
- name: assure nfs mount directory
|
||||
ansible.builtin.file: path=/nfs/projects state=directory mode=0755
|
||||
tags: [ storage ]
|
||||
- name: assure nfs mount
|
||||
mount: path=/nfs/projects src=192.168.190.1:/nfs/projects fstype=nfs4 opts="rsize=10248576,wsize=1048576,soft,timeo=600,retrans=2,_netdev" state=mounted
|
||||
tags: [ storage ]
|
@ -1,45 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
---
|
||||
# Home media storage Pi
|
||||
- hosts: vm-psql-1.home.mgmt.desu.ltd
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_time: "Mon *-*-* 02:00:00"
|
||||
tags: [ backup ]
|
||||
- role: geerlingguy.postgresql
|
||||
vars:
|
||||
postgresql_global_config_options:
|
||||
- option: listen_addresses
|
||||
value: "*"
|
||||
# All of these options are just for debugging stuff
|
||||
# This IS a lab environment after all
|
||||
- option: log_directory
|
||||
value: "pg_log"
|
||||
- option: log_filename
|
||||
value: "postgresql-%Y-%m-%d_%H%M%S.log"
|
||||
- option: log_statement
|
||||
value: all
|
||||
- option: logging_collector
|
||||
value: "on"
|
||||
postgresql_hba_entries:
|
||||
- { type: local, database: all, user: postgres, auth_method: peer }
|
||||
- { type: local, database: all, user: all, auth_method: md5 }
|
||||
- { type: host, database: all, user: all, address: '127.0.0.0/8', auth_method: md5 }
|
||||
- { type: host, database: all, user: all, address: '::1/128', auth_method: md5 }
|
||||
# Used for internal access from other nodes
|
||||
- { type: host, database: all, user: all, address: '192.168.0.0/16', auth_method: md5 }
|
||||
postgresql_users:
|
||||
- name: gulagbot-desultd
|
||||
password: "{{ secret_gulagbot_db_pass }}"
|
||||
- name: gulagbot-test
|
||||
password: "{{ secret_gulagbot_db_pass }}"
|
||||
- name: nagios
|
||||
password: "{{ secret_postgresql_monitoring_password }}"
|
||||
postgresql_databases:
|
||||
- name: gulagbot-desultd
|
||||
owner: gulagbot-desultd
|
||||
- name: gulagbot-test
|
||||
owner: gulagbot-test
|
||||
tags: [ home, db, psql ]
|
@ -1,35 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
---
|
||||
# Home media storage Pi
|
||||
- hosts: vm-fs-1.home.mgmt.desu.ltd
|
||||
tasks:
|
||||
- name: assure nfs directory
|
||||
ansible.builtin.file: path=/nfs state=directory mode=0755
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
backup_time: "Mon *-*-* 02:00:00"
|
||||
tags: [ backup ]
|
||||
- role: geerlingguy.nfs
|
||||
vars:
|
||||
nfs_exports:
|
||||
- "/nfs 192.168.0.0/16(rw,no_root_squash,sync) 172.24.0.0/16(rw,no_root_squash,sync)"
|
||||
tags: [ storage, nfs ]
|
||||
# - role: bertvv.samba
|
||||
# vars:
|
||||
# samba_users:
|
||||
# - name: salt
|
||||
# password: "{{ samba_user_salt_password }}"
|
||||
# samba_shares:
|
||||
# - name: media
|
||||
# browseable: yes
|
||||
# comment: 'Mass storage for all the things'
|
||||
# group: salt
|
||||
# guest_ok: yes
|
||||
# owner: 911
|
||||
# public: yes
|
||||
# path: /nfs
|
||||
# tags: [ storage, samba, smb ]
|
@ -1,96 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
# Game servers
|
||||
---
|
||||
- hosts: vm-tes3mp-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
roles:
|
||||
- role: docker-tes3mp
|
||||
vars:
|
||||
tes3mp_server_hostname: "The N'Wah Spitoon"
|
||||
tes3mp_server_port: "55455"
|
||||
tags: [ tes3mp ]
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
backup_s3backup_exclude_list_extra:
|
||||
- /data/tes3mp/generic/backups
|
||||
tags: [ backup ]
|
||||
- hosts: vm-str-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
tasks:
|
||||
- name: assure str container
|
||||
docker_container:
|
||||
name: str
|
||||
state: started
|
||||
image: tiltedphoques/st-reborn-server:latest
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
ports:
|
||||
- "10578:10578/udp"
|
||||
volumes:
|
||||
- /data/str/config:/home/server/config
|
||||
- /data/str/data:/home/server/Data
|
||||
- /data/str/logs:/home/server/logs
|
||||
tags: [ str, skyrim, docker ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
tags: [ backup ]
|
||||
- hosts: vm-minecraft-2.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
roles:
|
||||
- role: docker-minecraft
|
||||
vars:
|
||||
minecraft_name: oldpack
|
||||
minecraft_external_port: 40501
|
||||
minecraft_pack_zip: "https://srv.9iron.club/files/packs/1.7.10-magicpack/server.zip"
|
||||
minecraft_image: "rehashedsalt/minecraft-forge:1.7.10-master"
|
||||
minecraft_server_properties:
|
||||
allow-flight: "true"
|
||||
difficulty: "3"
|
||||
motd: "Ya boy at it again with another playthrough of the same goddamn modpack"
|
||||
tags: [ minecraft ]
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
- /etc
|
||||
backup_s3backup_exclude_list_extra:
|
||||
- /data/minecraft/oldpack/backups
|
||||
tags: [ backup ]
|
||||
- hosts: vm-terraria-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
roles:
|
||||
- role: docker-tmodloader13
|
||||
vars:
|
||||
tmodloader_name: thorium
|
||||
tmodloader_mods:
|
||||
- ThoriumMod
|
||||
- BossChecklist
|
||||
- MagicStorageExtra
|
||||
- SmartDoors
|
||||
- SummonersAssociation
|
||||
- VeinMiner
|
||||
- Unleveled
|
||||
- FKBossHealthBar
|
||||
- ZoomOut
|
||||
- AlchemistNPC
|
||||
- BossCursor
|
||||
- Bags_To_Money
|
||||
- WingSlot
|
||||
- StarsAbove
|
||||
- SubworldLibrary
|
||||
- StarsAboveMusic
|
||||
tags: [ tmodloader, terraria ]
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data
|
||||
- /etc
|
||||
backup_s3backup_exclude_list_extra:
|
||||
- /data/terraria-thorium/backups
|
||||
tags: [ backup ]
|
@ -1,70 +0,0 @@
|
||||
#!/usr/bin/env ansible-playbook
|
||||
# vim:ft=ansible:
|
||||
---
|
||||
- hosts: vm-media-1.home.mgmt.desu.ltd
|
||||
gather_facts: no
|
||||
module_defaults:
|
||||
docker_container:
|
||||
state: started
|
||||
restart_policy: unless-stopped
|
||||
pull: yes
|
||||
pre_tasks:
|
||||
- name: assure nfs mount directory
|
||||
ansible.builtin.file: path=/data state=directory mode=0755
|
||||
tags: [ pis, storage ]
|
||||
- name: assure nfs mount
|
||||
mount: path=/data/shared src=192.168.190.1:/nfs/media fstype=nfs4 opts="rsize=10248576,wsize=1048576,soft,timeo=600,retrans=2,_netdev" state=mounted
|
||||
tags: [ pis, storage ]
|
||||
- name: ensure docker network
|
||||
docker_network: name=web
|
||||
tags: [ docker ]
|
||||
- name: include tasks for apps
|
||||
include_tasks: tasks/app/{{ task }}
|
||||
with_items:
|
||||
- redis.yml
|
||||
loop_control:
|
||||
loop_var: task
|
||||
tags: [ always ]
|
||||
- name: include tasks for web services
|
||||
include_tasks: tasks/web/{{ task }}
|
||||
with_items:
|
||||
- transmission.yml
|
||||
- prowlarr.yml
|
||||
- sonarr.yml
|
||||
- radarr.yml
|
||||
- lidarr.yml
|
||||
- jellyfin.yml
|
||||
loop_control:
|
||||
loop_var: task
|
||||
tags: [ always ]
|
||||
roles:
|
||||
- role: backup
|
||||
vars:
|
||||
backup_s3backup_list_extra:
|
||||
- /data/transmisson
|
||||
- /data/sonarr
|
||||
backup_time: "Mon *-*-* 02:00:00"
|
||||
tags: [ backup ]
|
||||
- role: ingress
|
||||
vars:
|
||||
ingress_container_image: "nginx:latest"
|
||||
ingress_container_ports:
|
||||
- 80:80
|
||||
ingress_container_config_mount: /etc/nginx/conf.d
|
||||
ingress_container_persist_dir: /data/nginx
|
||||
ingress_listen_args: 80
|
||||
ingress_listen_tls: no
|
||||
ingress_servers:
|
||||
- name: transmission.local.desu.ltd
|
||||
proxy_pass: http://transmission:9091
|
||||
- name: prowlarr.local.desu.ltd
|
||||
proxy_pass: http://prowlarr:9696
|
||||
- name: jellyfin.local.desu.ltd
|
||||
proxy_pass: http://jellyfin:8096
|
||||
- name: sonarr.local.desu.ltd
|
||||
proxy_pass: http://sonarr:8989
|
||||
- name: radarr.local.desu.ltd
|
||||
proxy_pass: http://radarr:7878
|
||||
- name: lidarr.local.desu.ltd
|
||||
proxy_pass: http://lidarr:8686
|
||||
tags: [ ingress ]
|
@ -122,28 +122,6 @@
|
||||
value: vm-general-1.ashburn.mgmt.desu.ltd
|
||||
- record: transmission.media.desu.ltd
|
||||
value: vm-general-1.ashburn.mgmt.desu.ltd
|
||||
# Local
|
||||
- record: homeauto.local.desu.ltd
|
||||
value: pi-homeauto-1.home.mgmt.desu.ltd
|
||||
- record: jackett.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
state: absent
|
||||
- record: prowlarr.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
- record: jellyfin.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
- record: radarr.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
- record: sonarr.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
- record: lidarr.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
- record: syncthing.local.desu.ltd
|
||||
value: vm-syncthing-1.home.mgmt.desu.ltd
|
||||
- record: transmission.local.desu.ltd
|
||||
value: zt1.vm-media-1.home.mgmt.desu.ltd
|
||||
- record: octoprint.local.desu.ltd
|
||||
value: wlan0.pi-octoprint-1.home.mgmt.desu.ltd
|
||||
loop_control:
|
||||
label: "{{ item.record }}"
|
||||
delegate_to: localhost
|
||||
|
@ -3,14 +3,6 @@
|
||||
---
|
||||
# Main playbooks for machines across my environments
|
||||
# Does not include supplementary management configuration
|
||||
# Home configuration
|
||||
- import_playbook: home_db.yml
|
||||
- import_playbook: home_fs.yml
|
||||
- import_playbook: home_app.yml
|
||||
- import_playbook: home_game.yml
|
||||
- import_playbook: home_media.yml
|
||||
- import_playbook: home_automation.yml
|
||||
- import_playbook: home_bastion.yml
|
||||
# Production configuration
|
||||
- import_playbook: prod_db.yml
|
||||
- import_playbook: prod_web.yml
|
||||
|
Loading…
Reference in New Issue
Block a user