ansible-role-tes3mp/tasks/main.yml
2025-12-24 13:16:20 -05:00

89 lines
2.1 KiB
YAML

#SPDX-License-Identifier: MIT-0
---
# tasks file for ansible-role-tes3mp
- name: Create tes3mp namespace
k8s:
state: present
definition:
apiVersion: v1
kind: Namespace
metadata:
name: tes3mp
- name: Create PVC for tes3mp
k8s:
state: present
definition:
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: tes3mp
namespace: tes3mp
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 32Gi
- name: Create Deployment for tes3mp
k8s:
state: present
definition:
apiVersion: v1
kind: Deployment
metadata:
name: tes3mp
namespace: tes3mp
labels:
app: tes3mp
spec:
replicas: 1
selector:
matchLabels:
app: tes3mp
template:
metadata:
labels:
app: tes3mp
spec:
containers:
- name: tes3mp
image: tes3mp/server
volumeMounts:
- name: data
mountPath: /server/data
ports:
- containerPort: 25565
env:
- name: TES3MP_SERVER_GENERAL_HOSTNAME
value: "{{ TES3MP_SERVER_GENERAL_HOSTNAME }}"
- name: TES3MP_SERVER_GENERAL_PLAYERS
value: "{{ TES3MP_SERVER_GENERAL_PLAYERS }}"
- name: TES3MP_SERVER_GENERAL_PASSWORD
value: "{{ TES3MP_SERVER_GENERAL_PASSWORD }}"
- name: TES3MP_SERVER_MASTERSERVER_ENABLED
value: "{{ TES3MP_SERVER_MASTERSERVER_ENABLED }}"
volumes:
- name: data
persistentVolumeClaim:
claimName: tes3mp
- name: Create Service for tes3mp
k8s:
state: present
definition:
apiVersion: v1
kind: Service
metadata:
name: tes3mp
namespace: tes3mp
spec:
selector:
app: tes3mp
ports:
- port: 25565
name: tes3mp
type: LoadBalancer