This commit is contained in:
2026-07-22 11:50:55 -04:00
parent 9dfa5fe857
commit 27bd715733
33 changed files with 692 additions and 15 deletions
+15
View File
@@ -88,3 +88,18 @@
[submodule "roles/ericomeehan.nginx-rtmp"]
path = roles/ericomeehan.nginx-rtmp
url = git@gitea.eom.dev:DevOps/ansible-role-nginx-rtmp.git
[submodule "roles/ericomeehan.mediawiki"]
path = roles/ericomeehan.mediawiki
url = git@gitea.eom.dev:DevOps/ansible-role-mediawiki.git
[submodule "roles/ericomeehan.pixelfed"]
path = roles/ericomeehan.pixelfed
url = git@gitea.eom.dev:DevOps/ansible-role-pixelfed.git
[submodule "roles/ericomeehan.shkeeper"]
path = roles/ericomeehan.shkeeper
url = git@gitea.eom.dev:DevOps/ansible-role-shkeeper.git
[submodule "roles/ericomeehan.counter-strike-2"]
path = roles/ericomeehan.counter-strike-2
url = git@gitea.eom.dev:Gaming/ansible-role-counter-strike-2.git
[submodule "roles/ericomeehan.peertube"]
path = roles/ericomeehan.peertube
url = git@gitea.eom.dev:DevOps/ansible-role-peertube.git
BIN
View File
Binary file not shown.
+19
View File
@@ -0,0 +1,19 @@
- name: cs2
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.counter-strike-2
vars:
cs2_servername: "changeme"
cs2_cheats: "0"
cs2_server_hibernate: "0"
cs2_lan: "0"
cs2_maxplayers: "16"
cs2_gamealias: "casual"
cs2_mapgroup: "mg_active"
cs2_startmap: "de_inferno"
cs2_bot_difficulty: "3"
cs2_bot_quota: ""
cs2_bot_quota_mode: ""
+13
View File
@@ -0,0 +1,13 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.ejabberd
vars:
ejabberd_macro_admin: "ejabberd@eom.dev"
ejabberd_macro_password: "{{ ejabberd_admin_password }}"
ejabberd_pvc_size_data: 2Ti
ejabberd_pvc_size_db: 2Ti
+3 -4
View File
@@ -1,8 +1,7 @@
---
- name: Deploy eom.dev one service at a time
hosts: imac
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.ericomeehan
- role: ericomeehan.eom
+18
View File
@@ -0,0 +1,18 @@
- name: mediawiki
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.mediawiki
vars:
mediawiki_deploy_localsettings: true
mediawiki_deploy_logo: true
mediawiki_namespace: "fictwiki"
mediawiki_pvc_size_archive: "2Ti"
mediawiki_pvc_size_data: "2Ti"
mediawiki_pvc_size_db: "2Ti"
mediawiki_admin_password: "{{ fictwiki_admin_password }}"
mediawiki_mariadb_root_password: "{{ fictwiki_mariadb_root_password }}"
mediawiki_mariadb_password: "{{ fictwiki_mariadb_password }}"
mediawiki_hostname: "fictwiki.eom.dev"
+22
View File
@@ -0,0 +1,22 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.inspircd
vars:
inspircd_admin_desc: "Server Administrator"
inspircd_admin_email: "eric@eom.dev"
inspircd_admin_name: "Eric Meehan"
inspircd_connect_password: ""
inspircd_net_name: "eom.dev"
inspircd_net_suffix: "eom.dev"
inspircd_server_name: "inspircd.eom.dev"
inspircd_services_name: "anope.eom.dev"
inspircd_services_vhost: "anope.eom.dev"
inspircd_pvc_size_config: "256Mi"
inspircd_pvc_size_data: "2Ti"
inspircd_pvc_size_db: "256Gi"
+1 -1
View File
@@ -4,4 +4,4 @@
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.eom
- role: ericomeehan.jasmin
+365
View File
@@ -0,0 +1,365 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.lemmy
vars:
serverName: "lemmy.eom.dev"
smtp:
server: "postfix.eom.dev:25"
username: lemmy
password: "{{ lemmy_admin_password }}"
from: lemmy@eom.dev
tls: true
admin:
username: lemmy_admin
password: "{{ lemmy_admin_password }}"
email: lemmy@eom.dev
config:
siteName: Lemmy on Kubernetes
tls: true
imageMode: StoreLinkPreviews
extraConfig: {}
nameOverride: ""
fullnameOverride: ""
taskrunner:
enabled: false
image:
_keep: true
# repository: docker.io/dessalines/lemmy
# pullPolicy: IfNotPresent
# tag:
env:
# RUST_BACKTRACE: 1
envFrom:
# - secretRef:
# name: my-extra-secrets
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
federationsender:
enabled: false
image:
_keep: true
# repository: docker.io/dessalines/lemmy
# pullPolicy: IfNotPresent
# tag:
env:
# RUST_BACKTRACE: 1
envFrom:
# - secretRef:
# name: my-extra-secrets
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
frontend:
image:
repository: docker.io/dessalines/lemmy-ui
# pullPolicy: IfNotPresent
# tag:
replicaCount: 1
strategy:
type: RollingUpdate
env:
# LEMMY_UI_DEBUG: true
envFrom:
# - secretRef:
# name: my-extra-secrets
livenessProbe:
httpGet:
path: /robots.txt
port: http
readinessProbe:
httpGet:
path: /robots.txt
port: http
# startupProbe:
# httpGet:
# path: /robots.txt
# port: http
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
type: ClusterIP
port: 80
sessionAffinity: ClientIP
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
pictrs:
## NB: pict-rs uses a Sled database by default, which can only be opened by a single instance
replicaCount: 1
strategy:
type: Recreate
## Generated on first install if left empty
# apiKey:
## Can also be provided using an existing secret, note that the value is only
## updated on helm upgrades due to Lemmy's configuration system
# existingSecret: ""
existingSecretKey: apikey
storage:
## Storage method for media, can be filesystem or object_storage
method: filesystem
objectStorage:
## For self-hosted S3, note that region _must_ also be provided, even for self-hosted S3
# endpoint: https://minio.example.com
usePathStyle: false
bucketName: lemmy-pictrs
# region:
# accessKey:
# secretKey:
# sessionToken:
# existingSecret: pictrs-secret
# existingSecretAccessKey: access-key
# existingSecretSecretKey: secret-key
env:
PICTRS__MEDIA__VIDEO_CODEC: vp9
PICTRS__MEDIA__GIF__MAX_WIDTH: 256
PICTRS__MEDIA__GIF__MAX_HEIGHT: 256
PICTRS__MEDIA__GIF__MAX_AREA: 65536
PICTRS__MEDIA__GIF__MAX_FRAME_COUNT: 400
envFrom:
# - secretRef:
# name: my-extra-secrets
image:
repository: docker.io/asonix/pictrs
pullPolicy: IfNotPresent
tag: 0.4.0-beta.19
## Used by both the sled database and also media itself if using the filesystem storage method
persistence:
enabled: true
accessMode: ReadWriteOnce
size: 16Gi
# existingClaim:
# storageClass:
livenessProbe:
httpGet:
path: /healthz
port: http
readinessProbe:
httpGet:
path: /healthz
port: http
startupProbe:
httpGet:
path: /healthz
port: http
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
type: ClusterIP
port: 80
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
proxy:
enabled: true
replicaCount: 1
strategy:
type: RollingUpdate
image:
repository: nginx
pullPolicy: Always
tag: 1-alpine
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
podAnnotations: {}
podSecurityContext: {}
# fsGroup: 2000
securityContext: {}
# capabilities:
# drop:
# - ALL
# readOnlyRootFilesystem: true
# runAsNonRoot: true
# runAsUser: 1000
service:
type: ClusterIP
port: 80
resources: {}
# limits:
# cpu: 100m
# memory: 128Mi
# requests:
# cpu: 100m
# memory: 128Mi
nodeSelector: {}
tolerations: []
affinity: {}
postgresql:
enabled: true
# host:
poolSize: 10
auth:
username: lemmy
database: lemmy
# password:
service:
port: 5432
## This may need to be set to 'require' if your PostgreSQL database forbids unencrypted connections
# sslmode: prefer
ingress:
enabled: true
className: "nginx"
annotations:
kubernetes.io/ingress.class: nginx
kubernetes.io/tls-acme: "true"
hosts:
- lemmy.eom.dev
tls:
- secretName: lemmy-tls
hosts:
- lemmy.eom.dev
+4 -3
View File
@@ -6,7 +6,8 @@
roles:
- role: ericomeehan.localai
vars:
localai_disable_webui: "true"
localai_watchdog_idle: "true"
localai_disable_webui: "false"
localai_debug: "true"
localai_watchdog_idle: "false"
localai_watchdog_idle_timeout: "1m"
localai_watchdog_busy: "true"
localai_watchdog_busy: "false"
+74
View File
@@ -0,0 +1,74 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.luanti
vars:
worldname: SeasonV
release_namespace: luanti-s5
mod_urls:
- https://codeberg.org/tenplus1/ambience.git
- https://github.com/minetest-mods/anvil.git
- https://gitlab.com/zughy-friends-minetest/arena_lib.git
- https://gitlab.com/zughy-friends-minetest/audio_lib.git
- https://gitlab.com/rubenwardy/awards.git
- https://github.com/blockexchange/blockexchange.git
- https://github.com/appgurueu/character_anim.git
- https://github.com/rubenwardy/ChatCmdBuilder.git
- https://github.com/minetest-mods/commoditymarket.git
- https://github.com/mt-mods/controls.git
- https://github.com/ElCeejo/creatura.git
- https://github.com/mt-mods/currency.git
- https://github.com/EvergreenTheTree/death_messages.git
- https://github.com/mt-mods/display_modpack.git
- https://github.com/minetest-mods/edit.git
- https://github.com/PieAreSquared11/Player-Factions-Redo.git
- https://github.com/PieAreSquared11/Factions-Todo-List.git
- https://codeberg.org/tenplus1/farming.git
- https://github.com/Amaz1/flight.git
- https://github.com/mt-mods/hangglider.git
- https://codeberg.org/SumianVoice/item_physics.git
- https://github.com/C-C-Minetest-Server/mailbox.git
- https://github.com/fluxionary/luanti-name_monoid.git
- https://gitea.eom.dev/Gaming/luanti_mod_3d_armor_minimized.git
- https://gitea.eom.dev/Gaming/luanti_mod_expanded_city_commoditymarket.git
- https://gitea.eom.dev/Gaming/luanti_mod_matrix_chat.git
- https://gitea.eom.dev/Gaming/luanti_mod_placeable_adventure_map_island_creator.git
- https://gitea.eom.dev/Gaming/luanti_mod_protector_mapblocks.git
- https://gitea.eom.dev/Gaming/luanti_mod_protector_mapblocks_grid.git
- https://gitea.eom.dev/Gaming/luanti_mod_pvp_zones.git
- https://gitlab.com/zughy-friends-minetest/minetest-murder-mod.git
- https://repo.or.cz/minetest_pep.git
- https://github.com/minetest-mods/mesecons.git
- https://codeberg.org/tenplus1/mobs_redo.git
- https://codeberg.org/tenplus1/mobs_animal.git
- https://codeberg.org/tenplus1/mobs_npc.git
- https://codeberg.org/tenplus1/mob_horse.git
- https://codeberg.org/tenplus1/mobs_water.git
- https://codeberg.org/tenplus1/mobs_skeletons.git
- https://codeberg.org/tenplus1/mobs_slimes.git
- https://github.com/appgurueu/modlib.git
- https://github.com/minetest-mods/moreblocks.git
- https://github.com/mt-historical/music_modpack.git
- https://gitlab.com/zughy-friends-minetest/panel_lib.git
- https://gitlab.com/zughy-friends-minetest/parties.git
- https://github.com/BuckarooBanzay/placeholder.git
- https://codeberg.org/Wuzzy/minetest_playereffects.git
- https://github.com/BuckarooBanzay/mtzip.git
- https://github.com/mt-mods/promise.git
- https://gitlab.com/OrangeBlob/realtime.git
- https://github.com/D00Med/scifi_nodes.git
- https://github.com/mt-mods/signs_lib.git
- https://github.com/minetest-mods/skinsdb.git
- https://github.com/minetest-mods/stamina.git
- https://codeberg.org/tenplus1/teleport_potion.git
- https://github.com/minetest-mods/unified_inventory.git
- https://github.com/wireva/visible_sneak.git
- https://gitlab.com/zughy-friends-minetest/weapons_lib.git
- https://github.com/minetest-mods/wielded_light.git
- https://bitbucket.org/minetest_gamers/x_bows.git
- https://github.com/mt-mods/xcompat.git
- https://bitbucket.org/minetest_gamers/x_enchanting.git
+68
View File
@@ -0,0 +1,68 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.luanti
vars:
worldname: SeasonIV
release_namespace: luanti-season-iv
mod_urls:
- https://gitea.eom.dev/Gaming/3d_armor_minimized.git
- https://codeberg.org/tenplus1/ambience.git
- https://github.com/minetest-mods/anvil.git
- https://gitlab.com/zughy-friends-minetest/arena_lib.git
- https://gitlab.com/zughy-friends-minetest/audio_lib.git
- https://gitlab.com/rubenwardy/awards.git
- https://github.com/appgurueu/character_anim.git
- https://github.com/rubenwardy/ChatCmdBuilder.git
- https://github.com/minetest-mods/commoditymarket.git
- https://github.com/mt-mods/controls.git
- https://github.com/ElCeejo/creatura.git
- https://github.com/mt-mods/currency.git
- https://github.com/EvergreenTheTree/death_messages.git
- https://github.com/mt-mods/display_modpack.git
- https://github.com/minetest-mods/edit.git
- https://gitea.eom.dev/Gaming/expanded_city_commoditymarket.git
- https://github.com/PieAreSquared11/Player-Factions-Redo.git
- https://github.com/PieAreSquared11/Factions-Todo-List.git
- https://codeberg.org/tenplus1/farming.git
- https://git.phreedom.club/localhost_frssoft/fediauth.git
- https://github.com/Amaz1/flight.git
- https://github.com/mt-mods/hangglider.git
- https://github.com/minetest-mods/irc.git
- https://codeberg.org/SumianVoice/item_physics.git
- https://github.com/C-C-Minetest-Server/mailbox.git
- https://github.com/fluxionary/luanti-name_monoid.git
- https://gitea.eom.dev/Gaming/matrix_chat.git
- https://gitlab.com/zughy-friends-minetest/minetest-murder-mod.git
- https://github.com/minetest-mods/mesecons.git
- https://codeberg.org/tenplus1/mobs_redo.git
- https://codeberg.org/tenplus1/mobs_animal.git
- https://codeberg.org/tenplus1/mobs_npc.git
- https://codeberg.org/tenplus1/mob_horse.git
- https://codeberg.org/tenplus1/mobs_water.git
- https://codeberg.org/tenplus1/mobs_skeletons.git
- https://codeberg.org/tenplus1/mobs_slimes.git
- https://github.com/appgurueu/modlib.git
- https://github.com/minetest-mods/moreblocks.git
- https://github.com/mt-historical/music_modpack.git
- https://gitlab.com/zughy-friends-minetest/panel_lib.git
- https://gitlab.com/zughy-friends-minetest/parties.git
- https://repo.or.cz/minetest_pep.git
- https://codeberg.org/Wuzzy/minetest_playereffects.git
- https://codeberg.org/tenplus1/protector.git
- https://gitea.eom.dev/Gaming/pvp_zones.git
- https://github.com/mt-mods/signs_lib.git
- https://github.com/minetest-mods/skinsdb.git
- https://github.com/minetest-mods/stamina.git
- https://codeberg.org/tenplus1/teleport_potion.git
- https://github.com/minetest-mods/unified_inventory.git
- https://github.com/wireva/visible_sneak.git
- https://gitlab.com/zughy-friends-minetest/weapons_lib.git
- https://github.com/minetest-mods/wielded_light.git
- https://bitbucket.org/minetest_gamers/x_bows.git
- https://github.com/mt-mods/xcompat.git
- https://bitbucket.org/minetest_gamers/x_enchanting.git
+7
View File
@@ -0,0 +1,7 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.mailman3
+3
View File
@@ -238,6 +238,9 @@
acme.cert-manager.io/http01-edit-in-place: 'true'
extraArgs:
update-status: "false"
config:
use-forwarded-headers: "true"
allow-snippet-annotations: "true"
- name: Deploy cert-manager
kubernetes.core.helm:
+15
View File
@@ -0,0 +1,15 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.mediawiki
vars:
mediawiki_deploy_localsettings: false
mediawiki_hostname: "mediawiki.eom.dev"
mediawiki_namespace: "mediawiki"
mediawiki_pvc_size_archive: "64Gi"
mediawiki_pvc_size_data: "2Ti"
mediawiki_pvc_size_db: "2Ti"
+2
View File
@@ -5,3 +5,5 @@
- ../secrets.yaml
roles:
- role: ericomeehan.nginx-rtmp
vars:
nginx_rtmp_push_targets: "{{ nginx_rtmp_push_targets }}"
+22
View File
@@ -0,0 +1,22 @@
- name: open-archiver
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.open-archiver
vars:
open_archiver_all_inclusive_archive: "false"
open_archiver_body_size_limit: "100M"
open_archiver_enable_deletion: "true"
open_archiver_jwt_expires_in: "7d"
open_archiver_meili_indexing_batch: "500"
open_archiver_node_env: "production"
open_archiver_pvc_size_data: "2Ti"
open_archiver_pvc_size_meilidata: "2Ti"
open_archiver_pvc_size_open_archiver: "2Ti"
open_archiver_pvc_size_postgresql: "2Ti"
open_archiver_rate_limit_max_requests: "100"
open_archiver_rate_limit_window_ms: "900000"
open_archiver_sync_frequency: "* * * * *"
+7
View File
@@ -0,0 +1,7 @@
- name: peertube
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.peertube
+7
View File
@@ -0,0 +1,7 @@
- name: Deploy Pixelfed
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.pixelfed
+7
View File
@@ -0,0 +1,7 @@
- name: deploy
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.shkeeper
+2 -1
View File
@@ -6,5 +6,6 @@
roles:
- role: ericomeehan.tes3mp
vars:
TES3MP_SERVER_GENERAL_HOSTNAME: "TES3MP on eom.dev"
TES3MP_SERVER_GENERAL_HOSTNAME: "tes3mp.eom.dev"
TES3MP_SERVER_GENERAL_PASSWORD: "{{ tes3mp_server_general_password }}"
TES3MP_SERVER_MASTERSERVER_ENABLED: "true"
+7
View File
@@ -0,0 +1,7 @@
- name: Execute test
hosts: alpha-control-plane
become: true
vars_files:
- ../secrets.yaml
roles:
- role: ericomeehan.tor-controller