From 043f4e78bf2374733b4a8b74288fd4dbf27be012 Mon Sep 17 00:00:00 2001 From: Eric Meehan Date: Wed, 24 Dec 2025 13:20:58 -0500 Subject: [PATCH] Added TES3MP --- .gitmodules | 9 + .localai.yaml.swp | Bin 0 -> 12288 bytes discourse_deploy.yaml | 341 +++++++++++++++++++++++++++++++++++++ jamulus.yaml | 10 ++ k8s_cp.yaml | 7 + localagi.yaml | 16 ++ localai.yaml | 5 + localrecall.yaml | 13 ++ roles/cleary.tidalcycles | 1 + roles/ericomeehan.jamulus | 1 + roles/ericomeehan.localagi | 2 +- roles/ericomeehan.localai | 2 +- roles/ericomeehan.minio | 2 +- roles/ericomeehan.tes3mp | 1 + tes3mp.yaml | 10 ++ tower-plus.yaml | 8 + 16 files changed, 425 insertions(+), 3 deletions(-) create mode 100644 .localai.yaml.swp create mode 100644 discourse_deploy.yaml create mode 100644 jamulus.yaml create mode 100644 k8s_cp.yaml create mode 100644 localagi.yaml create mode 100644 localrecall.yaml create mode 160000 roles/cleary.tidalcycles create mode 160000 roles/ericomeehan.jamulus create mode 160000 roles/ericomeehan.tes3mp create mode 100644 tes3mp.yaml create mode 100644 tower-plus.yaml diff --git a/.gitmodules b/.gitmodules index 22d62f7..6a578b6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -46,3 +46,12 @@ [submodule "roles/ericomeehan.minio"] path = roles/ericomeehan.minio url = git@gitea.eom.dev:DevOps/ansible-role-minio.git +[submodule "roles/ericomeehan.jamulus"] + path = roles/ericomeehan.jamulus + url = git@gitea.eom.dev:DevOps/ansible-role-jamulus.git +[submodule "roles/cleary.tidalcycles"] + path = roles/cleary.tidalcycles + url = https://github.com/cleary/ansible-tidalcycles.git +[submodule "roles/ericomeehan.tes3mp"] + path = roles/ericomeehan.tes3mp + url = git@gitea.eom.dev:Gaming/ansible-role-tes3mp.git diff --git a/.localai.yaml.swp b/.localai.yaml.swp new file mode 100644 index 0000000000000000000000000000000000000000..87040d897340748ec4b3dcb7648a742c2ca27b6e GIT binary patch literal 12288 zcmeI&y-ve05C?DrV&j{Q$&@)Mg^5fIFfcH}S~=;JTBLDgJCrWKGqCaqOz;AXFfqbI zAn^>GAuv=bh=Bp=Z|P*UzB|RgEy|_qhkN^SD{cv13qo8^F6!IqQan9R39>p1fB&?+ z8IX<2ymH@Xo`r_Z9dgIsluc*4exNKxy69Tvysa`{S!(7cQ@PUdQ1$cg`{5J<5crM2 ztk~RWt%r)W#;ROiI`~a7av=Z#2tWV=5P$##AOL}XF5t@van5&`tnV>X?-L_?{SzAm zAOHafKmY;|fB*y_009U<00RF|Ky`$;m=ofGBYgk=eE)x$7vhoQj^l>oisO>Qa&$Si zIaWAc>)QKJj|Bk;KmY;|fB*y_009U<00I#BV*y#OdV0J)P(JH*%uze7+%S<19xtbc z7@MU#Ikmm+lc_vsxB5Tij_ugdPNm#yKxw5%vQCtB$@?=z(wdwS83y7_pQxvbxPEdz z4`*MAaolv2S@P~/dev/null || exit 1 + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-adplugin + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-subscriptions + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-activity-pub + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-openid-connect + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/jonmbake/discourse-ldap-auth + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-math + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-post-voting + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-prometheus + RAILS_ENV=production bundle exec rake plugin:install repo=https://github.com/discourse/discourse-reactions + RAILS_ENV=production LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all + popd >/dev/null || exit 1 + cp -nr --preserve=mode /opt/bitnami/discourse/plugins/* /plugins + command: + - /bin/bash + image: docker.io/bitnamilegacy/discourse:3.4.7-debian-12-r0 + imagePullPolicy: IfNotPresent + name: install-plugins + resources: {} + securityContext: + allowPrivilegeEscalation: false + capabilities: + add: + - CHOWN + - SYS_CHROOT + - FOWNER + - SETGID + - SETUID + - DAC_OVERRIDE + drop: + - ALL + privileged: false + readOnlyRootFilesystem: false + runAsGroup: 0 + runAsNonRoot: false + runAsUser: 0 + seLinuxOptions: {} + seccompProfile: + type: RuntimeDefault + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: + - mountPath: /plugins + name: empty-dir + subPath: app-plugins-dir + restartPolicy: Always + schedulerName: default-scheduler + securityContext: + fsGroup: 0 + fsGroupChangePolicy: Always + serviceAccount: discourse + serviceAccountName: discourse + terminationGracePeriodSeconds: 30 + volumes: + - emptyDir: {} + name: empty-dir + - name: discourse-data + persistentVolumeClaim: + claimName: discourse +status: + conditions: + - lastTransitionTime: "2025-11-11T21:42:30Z" + lastUpdateTime: "2025-11-11T21:42:30Z" + message: Deployment does not have minimum availability. + reason: MinimumReplicasUnavailable + status: "False" + type: Available + - lastTransitionTime: "2025-11-11T21:42:30Z" + lastUpdateTime: "2025-11-11T21:42:30Z" + message: ReplicaSet "discourse-75db4ff77d" is progressing. + reason: ReplicaSetUpdated + status: "True" + type: Progressing + observedGeneration: 1 + replicas: 1 + unavailableReplicas: 1 + updatedReplicas: 1 diff --git a/jamulus.yaml b/jamulus.yaml new file mode 100644 index 0000000..ee92d08 --- /dev/null +++ b/jamulus.yaml @@ -0,0 +1,10 @@ +- name: Execute test + hosts: alpha-control-plane + become: true + vars_files: + - ../secrets.yaml + roles: + - role: ericomeehan.jamulus + vars: + directoryAddress: "anygenre2.jamulus.io:22124" + serverInfo: "jamulus.eom.dev;Raleigh;US" diff --git a/k8s_cp.yaml b/k8s_cp.yaml new file mode 100644 index 0000000..28ae7a2 --- /dev/null +++ b/k8s_cp.yaml @@ -0,0 +1,7 @@ +--- +# Playbook for eom.dev +- name: Alpha Cluster + hosts: alpha-control-plane + become: true + roles: + - role: geerlingguy.kubernetes diff --git a/localagi.yaml b/localagi.yaml new file mode 100644 index 0000000..46da33c --- /dev/null +++ b/localagi.yaml @@ -0,0 +1,16 @@ +- name: Execute test + hosts: alpha-control-plane + become: true + vars_files: + - ../secrets.yaml + roles: + - role: ericomeehan.localagi + vars: + localagi_pvc_storage: 2Ti + localagi_model: llama3-8b-instruct + localagi_multimodal_model: minicpm-v-2_6 + localagi_image_model: sd-1.5-ggml + localagi_localrag_url: https://localrecall.eom.dev/ + localagi_llm_api_url: https://localai.eom.dev/ + localagi_llm_api_key: "{{ localai_api_keys[0] }}" + localagi_timeout: "300s" diff --git a/localai.yaml b/localai.yaml index 747589f..8fdcdea 100644 --- a/localai.yaml +++ b/localai.yaml @@ -5,3 +5,8 @@ - ../secrets.yaml roles: - role: ericomeehan.localai + vars: + localai_disable_webui: "true" + localai_watchdog_idle: "true" + localai_watchdog_idle_timeout: "1m" + localai_watchdog_busy: "true" diff --git a/localrecall.yaml b/localrecall.yaml new file mode 100644 index 0000000..d9fc7f9 --- /dev/null +++ b/localrecall.yaml @@ -0,0 +1,13 @@ +- name: Execute test + hosts: alpha-control-plane + become: true + vars_files: + - ../secrets.yaml + roles: + - role: ericomeehan.localrecall + vars: + localrecall_collection_db_pvc_size: 2Ti + localrecall_file_assets_pvc_size: 2Ti + localrecall_openai_api_key: "{{ localai_api_keys[1] }}" + localrecall_openai_base_url: https://localai.eom.dev/v1 + localrecall_embedding_model: bert-embeddings diff --git a/roles/cleary.tidalcycles b/roles/cleary.tidalcycles new file mode 160000 index 0000000..59d79f2 --- /dev/null +++ b/roles/cleary.tidalcycles @@ -0,0 +1 @@ +Subproject commit 59d79f2d5ffb112eff40d4972dc0929bd1b21764 diff --git a/roles/ericomeehan.jamulus b/roles/ericomeehan.jamulus new file mode 160000 index 0000000..bec6319 --- /dev/null +++ b/roles/ericomeehan.jamulus @@ -0,0 +1 @@ +Subproject commit bec6319b668fde790e7d41cff427608af94b6560 diff --git a/roles/ericomeehan.localagi b/roles/ericomeehan.localagi index 33875aa..c7a794f 160000 --- a/roles/ericomeehan.localagi +++ b/roles/ericomeehan.localagi @@ -1 +1 @@ -Subproject commit 33875aa8996665cd8b75204e76ec7c0f1e20b7bc +Subproject commit c7a794f85ac5c5aa4315df67cb1abd68c2522074 diff --git a/roles/ericomeehan.localai b/roles/ericomeehan.localai index b533423..a5a6e20 160000 --- a/roles/ericomeehan.localai +++ b/roles/ericomeehan.localai @@ -1 +1 @@ -Subproject commit b533423c05535d41e25214b191a0389c8c7a78d4 +Subproject commit a5a6e208445375bc19041926429c93f5c5507e24 diff --git a/roles/ericomeehan.minio b/roles/ericomeehan.minio index d4ca4d7..cafe3ce 160000 --- a/roles/ericomeehan.minio +++ b/roles/ericomeehan.minio @@ -1 +1 @@ -Subproject commit d4ca4d79a80a46cff04ace7dbf190edf711fe230 +Subproject commit cafe3ce60d48c5faa12c70d22bacc7600c377e5d diff --git a/roles/ericomeehan.tes3mp b/roles/ericomeehan.tes3mp new file mode 160000 index 0000000..4f664e4 --- /dev/null +++ b/roles/ericomeehan.tes3mp @@ -0,0 +1 @@ +Subproject commit 4f664e4987e6ba37b2960f2ef267b44770c58525 diff --git a/tes3mp.yaml b/tes3mp.yaml new file mode 100644 index 0000000..b83002e --- /dev/null +++ b/tes3mp.yaml @@ -0,0 +1,10 @@ +- name: Execute test + hosts: alpha-control-plane + become: true + vars_files: + - ../secrets.yaml + roles: + - role: ericomeehan.tes3mp + vars: + TES3MP_SERVER_GENERAL_HOSTNAME: "TES3MP on eom.dev" + TES3MP_SERVER_GENERAL_PASSWORD: "{{ tes3mp_server_general_password }}" diff --git a/tower-plus.yaml b/tower-plus.yaml new file mode 100644 index 0000000..9bf6f30 --- /dev/null +++ b/tower-plus.yaml @@ -0,0 +1,8 @@ +--- +# Playbook for workstations +- name: Initialize workstations + hosts: localhost + connection: local + become: true + roles: + - role: ericomeehan.nvidia_driver