From 1312cbf745a336e48122faf2c223c4491ec0263c Mon Sep 17 00:00:00 2001 From: ACoolName Date: Sun, 28 Jun 2026 19:24:51 +0300 Subject: [PATCH] feat(example): add factorio image example --- config/samples/factorio_image-latest.yaml | 24 +++++++++++++++++++ .../controller/servermanager_controller.go | 5 ++-- 2 files changed, 26 insertions(+), 3 deletions(-) create mode 100644 config/samples/factorio_image-latest.yaml diff --git a/config/samples/factorio_image-latest.yaml b/config/samples/factorio_image-latest.yaml new file mode 100644 index 0000000..a66ae28 --- /dev/null +++ b/config/samples/factorio_image-latest.yaml @@ -0,0 +1,24 @@ +apiVersion: server-manager.acooldomain.co/v1alpha1 +kind: Image +metadata: + labels: + app.kubernetes.io/name: kubernetes-operator + app.kubernetes.io/managed-by: kustomize + name: minecraft-paper-1-21-5 +spec: + location: git.acooldomain.co/server-manager/minecraft:paper-1.21.5 + name: minecraft + tag: paper-1.21.5 + working_dir: /opt/server + ports: + - port: 25565 + protocol: TCP + + init_script: + image: alpine:latest + command: + - /bin/sh + args: + - /bin/sh + - "-c" + - "echo eula=true >> /data/eula.txt" diff --git a/internal/controller/servermanager_controller.go b/internal/controller/servermanager_controller.go index a41583b..7324e82 100644 --- a/internal/controller/servermanager_controller.go +++ b/internal/controller/servermanager_controller.go @@ -306,6 +306,7 @@ func (r *ServerManagerReconciler) Reconcile(ctx context.Context, req ctrl.Reques err = r.Get(ctx, client.ObjectKeyFromObject(browserConfigMap), foundBrowserConfigMap) if err != nil { + err = r.Delete(ctx, browserConfigMap) err = r.Create(ctx, browserConfigMap) return ctrl.Result{Requeue: true}, err } @@ -564,15 +565,13 @@ func (r *ServerManagerReconciler) BrowserConfigMap(s *servermanagerv1alpha1.Serv return nil, err } - var configMapData map[string]string - configMapData["config.yaml"] = string(serializedConfig) return &corev1.ConfigMap{ ObjectMeta: metav1.ObjectMeta{ Name: fmt.Sprintf("%s-browser-config", s.Name), Namespace: s.Namespace, Labels: map[string]string{"browser": s.Name}, }, - Data: configMapData, + Data: map[string]string{"config.yaml": string(serializedConfig)}, }, nil }