move everything top level so it can be used by the k3s built-in helm-controller. add woodpecker ci config.
This commit is contained in:
38
unused/mineclonia/mineclonia-conf-configmap.yml
Normal file
38
unused/mineclonia/mineclonia-conf-configmap.yml
Normal file
@@ -0,0 +1,38 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: mineclonia-config
|
||||
namespace: mineclonia
|
||||
data:
|
||||
minetest.conf: |
|
||||
enable_server = true
|
||||
default_game = mineclonia
|
||||
game_id = mineclonia
|
||||
mapgen = mineclonia
|
||||
server_name = Runestone
|
||||
worldname = Runestone
|
||||
server_description = "Explore vast landscapes, uncover ancient secrets, and shape your legacy in the land of Runestone."
|
||||
server_address = 0.0.0.0
|
||||
server_port = 30000
|
||||
max_users = 50
|
||||
debug_log_level = warning
|
||||
time_speed = 72 # set to 20 minutes day/night cycles like minecraft.
|
||||
worldname = Runestone
|
||||
|
||||
# network optimizations
|
||||
enable_ipv6 = false
|
||||
max_packets_per_iteration = 1024
|
||||
chat_message_max_length = 200
|
||||
|
||||
# Authentication
|
||||
name = socialsyndrome
|
||||
require_password = true
|
||||
password_hashing = true
|
||||
enable_mods = true
|
||||
player_name = true
|
||||
auth_backend = sqlite3
|
||||
auth_fail_ban_time = 10
|
||||
enable_password_protection = true
|
||||
|
||||
admin.txt: |
|
||||
socialsyndrome
|
||||
69
unused/mineclonia/mineclonia-deployment.yml
Normal file
69
unused/mineclonia/mineclonia-deployment.yml
Normal file
@@ -0,0 +1,69 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: mineclonia
|
||||
namespace: mineclonia
|
||||
spec:
|
||||
replicas: 1
|
||||
selector:
|
||||
matchLabels:
|
||||
app: mineclonia
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: mineclonia
|
||||
spec:
|
||||
initContainers:
|
||||
- name: mineclonia-updater
|
||||
image: alpine
|
||||
command: ["/bin/sh", "-c"]
|
||||
args:
|
||||
- |
|
||||
set -e
|
||||
apk add --no-cache curl unzip jq
|
||||
mkdir -p /var/lib/minetest/.minetest
|
||||
latest_release=$(curl -s https://codeberg.org/api/v1/repos/mineclonia/mineclonia/releases/latest | jq -r '.tag_name')
|
||||
if [ ! -d "/var/lib/minetest/.minetest/games/mineclonia" ] || [ "$(cat /var/lib/minetest/.minetest/games/mineclonia/version.txt)" != "$latest_release" ]; then
|
||||
echo "Updating Mineclonia to version $latest_release"
|
||||
rm -rf /var/lib/minetest/.minetest/games/mineclonia
|
||||
curl -L https://codeberg.org/mineclonia/mineclonia/archive/$latest_release.zip -o /tmp/mineclonia.zip
|
||||
unzip /tmp/mineclonia.zip -d /var/lib/minetest/.minetest/games/
|
||||
echo "$latest_release" > /var/lib/minetest/.minetest/games/mineclonia/version.txt
|
||||
else
|
||||
echo "Mineclonia is up to date"
|
||||
fi
|
||||
# Ensure ownership of all data
|
||||
chown -R 30000:30000 /var/lib/minetest
|
||||
ls -ahl /var/lib/minetest
|
||||
volumeMounts:
|
||||
- name: data
|
||||
mountPath: /var/lib/minetest
|
||||
containers:
|
||||
- name: mineclonia
|
||||
image: ghcr.io/luanti-org/luanti
|
||||
ports:
|
||||
- containerPort: 30000
|
||||
protocol: UDP
|
||||
- containerPort: 30000
|
||||
protocol: TCP
|
||||
volumeMounts:
|
||||
- name: data
|
||||
mountPath: /var/lib/minetest
|
||||
- name: config
|
||||
mountPath: /etc/minetest
|
||||
- name: admins
|
||||
mountPath: /var/lib/minetest/worlds/Runestone/admin.txt
|
||||
subPath: admin.txt
|
||||
args: ["minetest", "--gameid", "mineclonia"]
|
||||
stdin: true
|
||||
tty: true
|
||||
volumes:
|
||||
- name: config
|
||||
configMap:
|
||||
name: mineclonia-config
|
||||
- name: data
|
||||
persistentVolumeClaim:
|
||||
claimName: mineclonia-data
|
||||
- name: admins
|
||||
configMap:
|
||||
name: mineclonia-config
|
||||
12
unused/mineclonia/mineclonia-pvc.yml
Normal file
12
unused/mineclonia/mineclonia-pvc.yml
Normal file
@@ -0,0 +1,12 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: mineclonia-data
|
||||
namespace: mineclonia
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 64Gi
|
||||
storageClassName: longhorn
|
||||
19
unused/mineclonia/mineclonia-service.yml
Normal file
19
unused/mineclonia/mineclonia-service.yml
Normal file
@@ -0,0 +1,19 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: mineclonia
|
||||
namespace: mineclonia
|
||||
annotations:
|
||||
metallb.universe.tf/allow-shared-ip: mineclonia
|
||||
spec:
|
||||
selector:
|
||||
app: mineclonia
|
||||
ports:
|
||||
- protocol: UDP
|
||||
port: 30000
|
||||
targetPort: 30000
|
||||
- protocol: TCP
|
||||
port: 30000
|
||||
targetPort: 30000
|
||||
type: LoadBalancer
|
||||
loadBalancerIP: 192.168.1.4
|
||||
4
unused/mineclonia/namespace.yml
Normal file
4
unused/mineclonia/namespace.yml
Normal file
@@ -0,0 +1,4 @@
|
||||
kind: Namespace
|
||||
apiVersion: v1
|
||||
metadata:
|
||||
name: mineclonia
|
||||
Reference in New Issue
Block a user