--- # tasks file for ericomeehan.gondwana # TODO: Create configmaps for configurations - name: Create gondwana namespace k8s: state: present definition: apiVersion: v1 kind: Namespace metadata: name: "gondwana-{{ target_namespace }}" - name: Create persistent volume for gondwana k8s: state: present definition: apiVersion: v1 kind: PersistentVolume metadata: name: gondwana-mc-pv spec: capacity: storage: 32Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain storageClassName: standard hostPath: path: "/data/store-0/gondwana/mc" nodeAffinity: required: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/hostname operator: In values: - alpha-worker-0 - name: Create persistent volume claim for gondwana volume k8s: state: present definition: apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mc-pvc namespace: "gondwana-{{ target_namespace }}" spec: accessModes: - ReadWriteOnce resources: requests: storage: 8Gi storageClassName: standard volumeName: gondwana-mc-pv - name: Create a Deployment k8s: definition: apiVersion: apps/v1 kind: Deployment metadata: name: mc-deploy namespace: "gondwana-{{ target_namespace }}" spec: replicas: 1 selector: matchLabels: app: mc template: metadata: labels: app: mc spec: containers: - name: minecraft image: itzg/minecraft-server volumeMounts: - name: data mountPath: /data ports: - containerPort: 25565 - containerPort: 24454 protocol: UDP env: - name: EULA value: "TRUE" - name: TYPE value: "FABRIC" - name: MODS value: "https://download.geysermc.org/v2/projects/geyser/versions/latest/builds/latest/downloads/fabric,https://cdn.modrinth.com/data/bWrNNfkb/versions/D4KXqjtC/Floodgate-Fabric-2.2.3-SNAPSHOT%2Bbuild.28.jar,https://www.curseforge.com/api/v1/mods/306612/files/5510851/download,https://www.curseforge.com/api/v1/mods/416089/files/5500955/download" - name: MEMORY value: "8G" volumes: - name: data persistentVolumeClaim: claimName: mc-pvc - name: Expose Deployment as a Service k8s: definition: apiVersion: v1 kind: Service metadata: name: mc-svc namespace: "gondwana-{{ target_namespace }}" spec: selector: app: mc ports: - port: 24454 protocol: UDP name: mc-port-24454 - port: 25565 protocol: TCP name: mc-port-25565 type: NodePort