diff --git a/.github/ct-install.yaml b/.github/ct-install.yaml index 706d79cf7d7..edf3f6e78cc 100644 --- a/.github/ct-install.yaml +++ b/.github/ct-install.yaml @@ -12,6 +12,7 @@ chart-dirs: excluded-charts: - charts/dependency/subchart - charts/incubator/twingate-connector + - charts/incubator/eco - charts/incubator/midarr - charts/incubator/orbital-sync - charts/incubator/plex-meta-manager diff --git a/charts/incubator/eco/Chart.yaml b/charts/incubator/eco/Chart.yaml index 198981da36f..0d5a5328c8c 100644 --- a/charts/incubator/eco/Chart.yaml +++ b/charts/incubator/eco/Chart.yaml @@ -1,15 +1,11 @@ -annotations: - truecharts.org/SCALE-support: "true" - truecharts.org/catagories: | - - GameServers apiVersion: v2 appVersion: "latest" dependencies: - name: common repository: https://library-charts.truecharts.org - version: 11.1.2 + version: 14.0.1 deprecated: false -description: "This Chart will download and install SteamCMD. It will also install ECO and run it." +description: A custom SteamCMD chart that runs ECO. home: https://truecharts.org/charts/incubator/eco icon: https://truecharts.org/img/hotlink-ok/chart-icons/eco.png keywords: @@ -23,6 +19,10 @@ maintainers: name: eco sources: - https://github.com/truecharts/charts/tree/master/charts/incubator/eco - - https://www.steampowered.com/ + - https://github.com/ich777/docker-steamcmd-server/tree/eco type: application -version: 2.0.8 +version: 3.0.0 +annotations: + truecharts.org/catagories: | + - games + truecharts.org/SCALE-support: "true" diff --git a/charts/incubator/eco/questions.yaml b/charts/incubator/eco/questions.yaml index 5580adc668f..56c9b637222 100644 --- a/charts/incubator/eco/questions.yaml +++ b/charts/incubator/eco/questions.yaml @@ -10,71 +10,53 @@ questions: # Include{replicas1} # Include{podSpec} # Include{containerMain} + + - variable: env + label: Image Environment + schema: + additional_attrs: true + type: dict + attrs: + - variable: USERNAME + label: "UserName" + description: "Your Steam username (optionally leave it blank)." + schema: + type: string + default: "" + - variable: PASSWRD + label: "Password" + description: "Your Steam password (optionally leave it blank)" + schema: + type: string + private: true + default: "" + - variable: GAME_ID + label: "Game ID" + description: "The ID of the container to download at start up." + schema: + type: string + default: "" + - variable: GAME_PARAMS + label: "Game Params" + description: "Enter your start up commands for the server." + schema: + type: string + default: "" + - variable: VALIDATE + label: "Validate" + description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." + schema: + type: boolean + default: true + # Include{containerBasic} # Include{containerAdvanced} - - - variable: secretEnv - group: "App Configuration" - label: "Image Secrets" - schema: - additional_attrs: true - type: dict - attrs: - - variable: USERNAME - label: "USERNAME" - description: "Your Steam username goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." - schema: - type: string - default: "" - - variable: PASSWRD - label: "PASSWRD" - description: "Your Steam password goes here if you want to install a game that needs a valid account, otherwise leave it blank (ATTENTION You have to disable Steam Guard)." - schema: - type: string - private: true - default: "" - - variable: env - group: "App Configuration" - label: "Image Environment" - schema: - additional_attrs: true - type: dict - attrs: - - variable: GAME_ID - label: "GAME_ID" - description: "The GAME_ID that the container download at startup.(https://developer.valvesoftware.com/wiki/Dedicated_Servers_List)" - schema: - type: string - default: "739590" - - variable: GAME_PARAMS - label: "GAME_PARAMS" - description: "Enter your start up commands for the server." - schema: - type: string - default: "" - - variable: VALIDATE - label: "VALIDATE" - description: "Set the Variable to true if you want to validate the installation otherwise leave it blank." - schema: - type: boolean - default: true - - variable: DATA_PERM - label: "DATA_PERM" - description: "Container Variable DATAPERM" - schema: - type: string - default: "770" - - variable: UMASK - label: "UMASK" - description: "Container Variable UMASK" - schema: - type: string - default: "000" # Include{containerConfig} +# Include{podOptions} # Include{serviceRoot} - variable: main - label: "Main Service" - description: "The Primary service on which the healthcheck runs, often the webUI" + label: Main Service + description: The Primary service on which the Minecraft Server runs on schema: additional_attrs: true type: dict @@ -82,36 +64,36 @@ questions: # Include{serviceSelectorLoadBalancer} # Include{serviceSelectorExtras} - variable: main - label: "Main Service Port Configuration" + label: Main Service Port Configuration schema: additional_attrs: true type: dict attrs: - variable: port - label: "Port" - description: "This port exposes the container port on the service" + label: Port + description: This port exposes the container port on the service schema: type: int default: 3001 required: true - - variable: udpgameport - label: 'udpgameport service' - description: "UDP Game Port" + - variable: game + label: Game Service + description: The Game service. schema: additional_attrs: true type: dict attrs: # Include{serviceSelectorLoadBalancer} # Include{serviceSelectorExtras} - - variable: udpgameport - label: "udpgameport Service Port Configuration" + - variable: game + label: Game Service Port Configuration schema: additional_attrs: true type: dict attrs: - variable: port - label: "Port" - description: "This port exposes the container port on the service" + label: Port + description: This port exposes the container port on the service schema: type: int default: 3000 @@ -121,16 +103,16 @@ questions: # Include{serviceList} # Include{persistenceRoot} - variable: steamcmd - label: "steamcmd Storage" - description: "Container Path serverdatasteamcmd" + label: App SteamCMD Storage + description: Stores the Application SteamCMD. schema: additional_attrs: true type: dict attrs: # Include{persistenceBasic} - variable: serverfiles - label: "serverfiles Storage" - description: "Container Path serverdataserverfiles" + label: App Server Files Storage + description: Stores the Application Server Files. schema: additional_attrs: true type: dict @@ -139,7 +121,7 @@ questions: # Include{persistenceList} # Include{ingressRoot} - variable: main - label: "Main Ingress" + label: Main Ingress schema: additional_attrs: true type: dict diff --git a/charts/incubator/eco/templates/NOTES.txt b/charts/incubator/eco/templates/NOTES.txt new file mode 100644 index 00000000000..efcb74cb772 --- /dev/null +++ b/charts/incubator/eco/templates/NOTES.txt @@ -0,0 +1 @@ +{{- include "tc.v1.common.lib.chart.notes" $ -}} diff --git a/charts/incubator/eco/templates/common.yaml b/charts/incubator/eco/templates/common.yaml index cbf66c20818..b51394e00a4 100644 --- a/charts/incubator/eco/templates/common.yaml +++ b/charts/incubator/eco/templates/common.yaml @@ -1,2 +1 @@ -{{/* Render the templates */}} -{{ include "tc.common.loader.all" . }} +{{ include "tc.v1.common.loader.all" . }} diff --git a/charts/incubator/eco/values.yaml b/charts/incubator/eco/values.yaml index 186dc922d9e..3a82f1202b6 100644 --- a/charts/incubator/eco/values.yaml +++ b/charts/incubator/eco/values.yaml @@ -1,49 +1,64 @@ image: pullPolicy: IfNotPresent repository: tccr.io/truecharts/eco - tag: latest@sha256:7b380486ce590ba0bb9b3361f84464727126611771ba746210f7a73180d7b987 - -podSecurityContext: - runAsGroup: 0 - runAsUser: 0 + tag: latest@sha256:b68c9690ea433e1d94363ebf5384342652ab2d9316a2d71c740202669c76aca5 securityContext: - readOnlyRootFilesystem: false - runAsNonRoot: false - -secretEnv: - USERNAME: "" - PASSWRD: "" - -env: - DATA_PERM: "770" - GAME_ID: "739590" - GAME_PARAMS: "" - VALIDATE: false + container: + runAsNonRoot: false + readOnlyRootFilesystem: false + runAsUser: 0 + runAsGroup: 0 service: main: ports: main: port: 3001 - protocol: HTTP + protocol: http targetPort: 3001 - udpgameport: + game: enabled: true ports: - udpgameport: + game: enabled: true port: 3000 - protocol: UDP + protocol: udp targetPort: 3000 +workload: + main: + podSpec: + containers: + main: + probes: + liveness: + path: "/" + type: http + port: "{{ .Values.service.main.ports.main.targetPort }}" + readiness: + path: "/" + type: http + port: "{{ .Values.service.main.ports.main.targetPort }}" + startup: + type: tcp + port: "{{ .Values.service.main.ports.main.targetPort }}" + env: + USERNAME: "" + PASSWRD: "" + GAME_ID: "739590" + GAME_PARAMS: "" + VALIDATE: false + # DATA_PERM: "770" + persistence: - serverfiles: - enabled: true - mountPath: /serverdata/serverfiles steamcmd: enabled: true mountPath: /serverdata/steamcmd + serverfiles: + enabled: true + mountPath: /serverdata/serverfiles portal: - enabled: true + open: + enabled: true