Automated release for chart minecraft version 1.0.2

This commit is contained in:
ducoterra
2021-11-02 16:06:08 -04:00
parent 3b6d24949a
commit 4c4b355ebc
39 changed files with 29 additions and 696 deletions

View File

@@ -1,23 +0,0 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@@ -1,23 +0,0 @@
apiVersion: v2
name: minecraft
description: A Minecraft server for kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 1.0.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
appVersion: 1.0.0

View File

@@ -1,3 +0,0 @@
# Minecraft Server
Creates a vanilla Minecraft server.

View File

@@ -1,3 +0,0 @@
# Minecraft Server
Creates a vanilla Minecraft server.

View File

@@ -1,2 +0,0 @@
image: ducoterra/minecraft:latest
server_version: "1.17.1"

View File

@@ -1,38 +0,0 @@
groups:
- name: "Server Config"
description: "Minecraft Server Configuration"
- name: "Storage"
description: "Minecraft Server Storage"
questions:
- variable: server_version
description: "Server Version"
label: "Version"
group: "Server Config"
schema:
type: string
default: "1.17.1"
required: false
- variable: port
description: "Listen Port"
group: "Server Config"
label: "Port"
schema:
type: int
default: 25565
required: true
- variable: max_ram
description: "Total RAM allocated to the server"
group: "Server Config"
label: "RAM Limit (GiB)"
schema:
type: int
default: 4
required: true
- variable: max_cpu
description: "# CPU Cores Allocated to the server"
group: "Server Config"
label: "CPU Limit (# Cores)"
schema:
type: int
default: 4
required: true

View File

@@ -1,8 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}
data:
eula.txt: |
eula=true
server.properties: {{ toYaml .Values.server_props | indent 2 }}

View File

@@ -1,70 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}
spec:
selector:
matchLabels:
app: {{ .Release.Name }}
strategy:
type: Recreate
template:
metadata:
labels:
app: {{ .Release.Name }}
spec:
initContainers:
- name: get-version
image: {{ .Values.get_server.image }}
imagePullPolicy: Always
env:
- name: SERVER_VERSION
value: {{ .Values.server_version }}
volumeMounts:
- mountPath: /downloads
name: data
- name: download-server
image: {{ .Values.get_server.image }}
imagePullPolicy: Always
command: ["bash", "-c", "curl -o server.jar $(cat SERVER_VERSION)"]
volumeMounts:
- mountPath: /downloads
name: data
containers:
- name: {{ .Release.Name }}
image: {{ .Values.image }}
imagePullPolicy: Always
ports:
- containerPort: 25565
volumeMounts:
- mountPath: /mc_data
name: data
- name: properties
mountPath: /mc_data/server.properties
subPath: server.properties
- name: properties
mountPath: /mc_data/eula.txt
subPath: eula.txt
tty: true
stdin: true
env:
- name: MAX_RAM
value: {{ .Values.max_ram | quote }}
- name: MIN_RAM
value: "1"
resources:
requests:
memory: {{ div .Values.max_ram 2 }}Gi
cpu: 1m
limits:
memory: {{ add 1 .Values.max_ram }}Gi
cpu: {{ .Values.max_cpu | quote }}
volumes:
- name: data
persistentVolumeClaim:
claimName: {{ .Release.Name }}
- name: properties
configMap:
name: {{ .Release.Name }}
securityContext:
fsGroup: 2000

View File

@@ -1,12 +0,0 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ .Release.Name }}
annotations:
"helm.sh/resource-policy": keep
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 32Gi

View File

@@ -1,12 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}
spec:
selector:
app: {{ .Release.Name }}
ports:
- port: {{ .Values.port }}
targetPort: 25565
name: {{ .Release.Name }}
type: LoadBalancer

View File

@@ -1,45 +0,0 @@
image: ducoterra/minecraft:latest
get_server:
image: ducoterra/get-minecraft:latest
server_version: "1.17.1"
port: 20101
max_cpu: 4
max_ram: 4
server_props: |
max-tick-time=60000
generator-settings=
force-gamemode=false
allow-nether=true
gamemode=0
broadcast-console-to-ops=true
enable-query=false
player-idle-timeout=0
difficulty=3
spawn-monsters=true
op-permission-level=4
pvp=true
snooper-enabled=true
level-type=default
hardcore=false
enable-command-block=false
max-players=20
network-compression-threshold=256
resource-pack-sha1=
max-world-size=29999984
server-port=25565
server-ip=
spawn-npcs=true
allow-flight=true
level-name=world
view-distance=32
resource-pack=
spawn-animals=true
white-list=true
generate-structures=true
online-mode=true
max-build-height=256
level-seed=
prevent-proxy-connections=false
use-native-transport=true
motd=This is gonna be interesting
enable-rcon=false

View File

@@ -1,23 +0,0 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@@ -1,23 +0,0 @@
apiVersion: v2
name: minecraft
description: A Minecraft server for kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 1.0.1
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
appVersion: 1.16.4

View File

@@ -1,3 +0,0 @@
# Minecraft Server
Creates a vanilla Minecraft server.

View File

@@ -1,3 +0,0 @@
# Minecraft Server
Creates a vanilla Minecraft server.

View File

@@ -1 +0,0 @@
image: ducoterra/minecraft:1.16.4

View File

@@ -1,30 +0,0 @@
groups:
- name: "Server Config"
description: "Minecraft Server Configuration"
- name: "Storage"
description: "Minecraft Server Storage"
questions:
- variable: port
description: "Listen Port"
group: "Server Config"
label: "Port"
schema:
type: int
default: 25565
required: true
- variable: max_ram
description: "Total RAM allocated to the server"
group: "Server Config"
label: "RAM Limit (GiB)"
schema:
type: int
default: 4
required: true
- variable: max_cpu
description: "# CPU Cores Allocated to the server"
group: "Server Config"
label: "CPU Limit (# Cores)"
schema:
type: int
default: 4
required: true

View File

@@ -1,8 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}
data:
eula.txt: |
eula=true
server.properties: {{ toYaml .Values.server_props | indent 2 }}

View File

@@ -1,52 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}
spec:
selector:
matchLabels:
app: {{ .Release.Name }}
updateStrategy:
type: Recreate
template:
metadata:
labels:
app: {{ .Release.Name }}
spec:
containers:
- name: {{ .Release.Name }}
image: {{ .Values.image }}
ports:
- containerPort: 25565
volumeMounts:
- mountPath: /mc_data
name: data
- name: properties
mountPath: /mc_data/server.properties
subPath: server.properties
- name: properties
mountPath: /mc_data/eula.txt
subPath: eula.txt
tty: true
stdin: true
env:
- name: MAX_RAM
value: {{ .Values.max_ram | quote }}
- name: MIN_RAM
value: {{ .Values.max_ram | quote }}
resources:
requests:
memory: {{ .Values.max_ram }}Gi
cpu: 1m
limits:
memory: {{ .Values.max_ram }}Gi
cpu: {{ .Values.max_cpu | quote }}
volumes:
- name: data
persistentVolumeClaim:
claimName: {{ .Release.Name }}
- name: properties
configMap:
name: {{ .Release.Name }}
securityContext:
fsGroup: 2000

View File

@@ -1,12 +0,0 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ .Release.Name }}
annotations:
"helm.sh/resource-policy": keep
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 32Gi

View File

@@ -1,12 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}
spec:
selector:
app: {{ .Release.Name }}
ports:
- port: {{ .Values.port }}
targetPort: 25565
name: {{ .Release.Name }}
type: LoadBalancer

View File

@@ -1,42 +0,0 @@
image: ducoterra/minecraft:1.16.4
port: 20101
max_cpu: 4
max_ram: 4
server_props: |
max-tick-time=60000
generator-settings=
force-gamemode=false
allow-nether=true
gamemode=0
broadcast-console-to-ops=true
enable-query=false
player-idle-timeout=0
difficulty=3
spawn-monsters=true
op-permission-level=4
pvp=true
snooper-enabled=true
level-type=default
hardcore=false
enable-command-block=false
max-players=20
network-compression-threshold=256
resource-pack-sha1=
max-world-size=29999984
server-port=25565
server-ip=
spawn-npcs=true
allow-flight=true
level-name=world
view-distance=32
resource-pack=
spawn-animals=true
white-list=true
generate-structures=true
online-mode=true
max-build-height=256
level-seed=
prevent-proxy-connections=false
use-native-transport=true
motd=This is gonna be interesting
enable-rcon=false

View File

@@ -1,7 +1,6 @@
apiVersion: v2 apiVersion: v2
name: minecraft name: minecraft
description: A Minecraft server for kubernetes description: A Minecraft server for kubernetes
# A chart can be either an 'application' or a 'library' chart. # A chart can be either an 'application' or a 'library' chart.
# #
# Application charts are a collection of templates that can be packaged into versioned archives # Application charts are a collection of templates that can be packaged into versioned archives
@@ -11,13 +10,11 @@ description: A Minecraft server for kubernetes
# a dependency of application charts to inject those utilities and functions into the rendering # a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed. # pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application type: application
# This is the chart version. This version number should be incremented each time you make changes # This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version. # to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/) # Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 1.0.2 version: 1.0.2
# This is the version number of the application being deployed. This version number should be # This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to # incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using. # follow Semantic Versioning. They should reflect the version the application is using.
appVersion: 1.16.4 appVersion: 1.0.2

View File

@@ -1 +1,2 @@
image: ducoterra/minecraft:1.16.4 image: ducoterra/minecraft:latest
server_version: "1.17.1"

View File

Before

Width:  |  Height:  |  Size: 268 KiB

After

Width:  |  Height:  |  Size: 268 KiB

View File

@@ -4,6 +4,14 @@ groups:
- name: "Storage" - name: "Storage"
description: "Minecraft Server Storage" description: "Minecraft Server Storage"
questions: questions:
- variable: server_version
description: "Server Version"
label: "Version"
group: "Server Config"
schema:
type: string
default: "1.17.1"
required: false
- variable: port - variable: port
description: "Listen Port" description: "Listen Port"
group: "Server Config" group: "Server Config"

View File

@@ -13,9 +13,20 @@ spec:
labels: labels:
app: {{ .Release.Name }} app: {{ .Release.Name }}
spec: spec:
initContainers:
- name: get-version
image: {{ .Values.get_server.image }}
imagePullPolicy: Always
env:
- name: SERVER_VERSION
value: {{ .Values.server_version }}
volumeMounts:
- mountPath: /downloads
name: data
containers: containers:
- name: {{ .Release.Name }} - name: {{ .Release.Name }}
image: {{ .Values.image }} image: {{ .Values.image }}
imagePullPolicy: Always
ports: ports:
- containerPort: 25565 - containerPort: 25565
volumeMounts: volumeMounts:
@@ -33,13 +44,13 @@ spec:
- name: MAX_RAM - name: MAX_RAM
value: {{ .Values.max_ram | quote }} value: {{ .Values.max_ram | quote }}
- name: MIN_RAM - name: MIN_RAM
value: {{ .Values.max_ram | quote }} value: "1"
resources: resources:
requests: requests:
memory: {{ .Values.max_ram }}Gi memory: {{ div .Values.max_ram 2 }}Gi
cpu: 1m cpu: 1m
limits: limits:
memory: {{ .Values.max_ram }}Gi memory: {{ add 1 .Values.max_ram }}Gi
cpu: {{ .Values.max_cpu | quote }} cpu: {{ .Values.max_cpu | quote }}
volumes: volumes:
- name: data - name: data

View File

@@ -1,4 +1,7 @@
image: ducoterra/minecraft:1.16.4 image: ducoterra/minecraft:latest
get_server:
image: ducoterra/get-minecraft:2.0.0
server_version: "1.17.1"
port: 20101 port: 20101
max_cpu: 4 max_cpu: 4
max_ram: 4 max_ram: 4

View File

@@ -1,23 +0,0 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.gitignore
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/

View File

@@ -1,23 +0,0 @@
apiVersion: v2
name: minecraft
description: A Minecraft server for kubernetes
# A chart can be either an 'application' or a 'library' chart.
#
# Application charts are a collection of templates that can be packaged into versioned archives
# to be deployed.
#
# Library charts provide useful utilities or functions for the chart developer. They're included as
# a dependency of application charts to inject those utilities and functions into the rendering
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 1.1.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to
# follow Semantic Versioning. They should reflect the version the application is using.
appVersion: 1.0.0

View File

@@ -1,3 +0,0 @@
# Minecraft Server
Creates a vanilla Minecraft server.

View File

@@ -1,3 +0,0 @@
# Minecraft Server
Creates a vanilla Minecraft server.

View File

@@ -1,2 +0,0 @@
image: ducoterra/minecraft:latest
server_version: "1.17.1"

View File

@@ -1,38 +0,0 @@
groups:
- name: "Server Config"
description: "Minecraft Server Configuration"
- name: "Storage"
description: "Minecraft Server Storage"
questions:
- variable: server_version
description: "Server Version"
label: "Version"
group: "Server Config"
schema:
type: string
default: "1.17.1"
required: false
- variable: port
description: "Listen Port"
group: "Server Config"
label: "Port"
schema:
type: int
default: 25565
required: true
- variable: max_ram
description: "Total RAM allocated to the server"
group: "Server Config"
label: "RAM Limit (GiB)"
schema:
type: int
default: 4
required: true
- variable: max_cpu
description: "# CPU Cores Allocated to the server"
group: "Server Config"
label: "CPU Limit (# Cores)"
schema:
type: int
default: 4
required: true

View File

@@ -1,8 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ .Release.Name }}
data:
eula.txt: |
eula=true
server.properties: {{ toYaml .Values.server_props | indent 2 }}

View File

@@ -1,70 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ .Release.Name }}
spec:
selector:
matchLabels:
app: {{ .Release.Name }}
strategy:
type: Recreate
template:
metadata:
labels:
app: {{ .Release.Name }}
spec:
initContainers:
- name: get-version
image: {{ .Values.get_server.image }}
imagePullPolicy: Always
env:
- name: SERVER_VERSION
value: {{ .Values.server_version }}
volumeMounts:
- mountPath: /downloads
name: data
- name: download-server
image: {{ .Values.get_server.image }}
imagePullPolicy: Always
command: ["bash", "-c", "curl -o server.jar $(cat SERVER_VERSION)"]
volumeMounts:
- mountPath: /downloads
name: data
containers:
- name: {{ .Release.Name }}
image: {{ .Values.image }}
imagePullPolicy: Always
ports:
- containerPort: 25565
volumeMounts:
- mountPath: /mc_data
name: data
- name: properties
mountPath: /mc_data/server.properties
subPath: server.properties
- name: properties
mountPath: /mc_data/eula.txt
subPath: eula.txt
tty: true
stdin: true
env:
- name: MAX_RAM
value: {{ .Values.max_ram | quote }}
- name: MIN_RAM
value: "1"
resources:
requests:
memory: {{ div .Values.max_ram 2 }}Gi
cpu: 1m
limits:
memory: {{ add 1 .Values.max_ram }}Gi
cpu: {{ .Values.max_cpu | quote }}
volumes:
- name: data
persistentVolumeClaim:
claimName: {{ .Release.Name }}
- name: properties
configMap:
name: {{ .Release.Name }}
securityContext:
fsGroup: 2000

View File

@@ -1,12 +0,0 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ .Release.Name }}
annotations:
"helm.sh/resource-policy": keep
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 32Gi

View File

@@ -1,12 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}
spec:
selector:
app: {{ .Release.Name }}
ports:
- port: {{ .Values.port }}
targetPort: 25565
name: {{ .Release.Name }}
type: LoadBalancer

View File

@@ -1,45 +0,0 @@
image: ducoterra/minecraft:latest
get_server:
image: ducoterra/get-minecraft:latest
server_version: "1.17.1"
port: 20101
max_cpu: 4
max_ram: 4
server_props: |
max-tick-time=60000
generator-settings=
force-gamemode=false
allow-nether=true
gamemode=0
broadcast-console-to-ops=true
enable-query=false
player-idle-timeout=0
difficulty=3
spawn-monsters=true
op-permission-level=4
pvp=true
snooper-enabled=true
level-type=default
hardcore=false
enable-command-block=false
max-players=20
network-compression-threshold=256
resource-pack-sha1=
max-world-size=29999984
server-port=25565
server-ip=
spawn-npcs=true
allow-flight=true
level-name=world
view-distance=32
resource-pack=
spawn-animals=true
white-list=true
generate-structures=true
online-mode=true
max-build-height=256
level-seed=
prevent-proxy-connections=false
use-native-transport=true
motd=This is gonna be interesting
enable-rcon=false