forked from jeremylvln/Shulker
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat(shulker-operator): add the possibility to use custom server jars (…
…jeremylvln#254) * feat(shulker-crds): add custom JAR to MincraftServer * feat(shulker-operator): set custom JAR on MinecraftServer if provided * docs: add custom server jar recipe * chore: add example for custom server jar
- Loading branch information
1 parent
0562a8d
commit 72844b1
Showing
35 changed files
with
705 additions
and
206 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# Using custom server JAR | ||
|
||
You may want to use a custom server JAR to replace the default | ||
behavior which is to download the matching version from the | ||
channel. | ||
|
||
You have the ability to specify a resource reference to a custom | ||
server JAR in the `MinecraftServer` and `MinecraftServerFleet` CRDs: | ||
|
||
```yaml | ||
apiVersion: shulkermc.io/v1alpha1 | ||
kind: MinecraftServerFleet | ||
metadata: | ||
name: my-server | ||
spec: | ||
clusterRef: | ||
name: my-cluster | ||
replicas: 1 | ||
template: | ||
spec: // [!code focus] | ||
version: // [!code focus] | ||
channel: Paper // [!code focus] | ||
name: 1.20.0 // [!code focus] | ||
customJar: // [!code focus] | ||
url: https://example.com/custom-jar.jar // [!code focus] | ||
``` | ||
|
||
:::warning | ||
|
||
While this feature allows you to customize the server software to run, | ||
you can't use it to create servers with unsupported platforms. You | ||
still have to specify the version channel so Shulker is aware of which | ||
agent to inject into the server. | ||
|
||
You can, however, expect any standard fork of supported platforms to | ||
work as long as they do not introduce breaking changes. | ||
|
||
::: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
apiVersion: shulkermc.io/v1alpha1 | ||
kind: MinecraftCluster | ||
metadata: | ||
name: getting-started | ||
spec: {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
resources: | ||
- cluster.yaml | ||
- minecraftserver.yaml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
apiVersion: shulkermc.io/v1alpha1 | ||
kind: MinecraftServerFleet | ||
metadata: | ||
name: lobby | ||
spec: | ||
clusterRef: | ||
name: getting-started | ||
replicas: 1 | ||
template: | ||
spec: | ||
clusterRef: | ||
name: getting-started | ||
tags: | ||
- lobby | ||
version: | ||
channel: Paper | ||
name: "1.20.2" | ||
customJar: | ||
url: https://api.infernalsuite.com/v1/projects/asp/5118810e-2397-48f2-a725-89372c6d3756/download/e2eab933-7e5c-4a1f-8776-89a6624283a0 | ||
config: {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
95 changes: 95 additions & 0 deletions
95
.../shulker-addon-matchmaking/templates/crds/matchmaking.shulkermc.io_matchmakingqueues.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,95 @@ | ||
apiVersion: apiextensions.k8s.io/v1 | ||
kind: CustomResourceDefinition | ||
metadata: | ||
name: matchmakingqueues.matchmaking.shulkermc.io | ||
spec: | ||
group: matchmaking.shulkermc.io | ||
names: | ||
categories: [] | ||
kind: MatchmakingQueue | ||
plural: matchmakingqueues | ||
shortNames: [] | ||
singular: matchmakingqueue | ||
scope: Namespaced | ||
versions: | ||
- additionalPrinterColumns: | ||
- jsonPath: .metadata.creationTimestamp | ||
name: Age | ||
type: date | ||
name: v1alpha1 | ||
schema: | ||
openAPIV3Schema: | ||
description: Auto-generated derived type for MatchmakingQueueSpec via `CustomResource` | ||
properties: | ||
spec: | ||
properties: | ||
maxPlayers: | ||
description: The maximum number of players a match can contain | ||
format: uint32 | ||
minimum: 0.0 | ||
type: integer | ||
minPlayers: | ||
description: The minimum number of players required to create a match. If `None`, the matchmaking function will wait for the maximum number of players | ||
format: uint32 | ||
minimum: 0.0 | ||
nullable: true | ||
type: integer | ||
mmf: | ||
description: The matchmaking function to use to create matches for this queue | ||
properties: | ||
builtIn: | ||
description: The matchmaking function to use is provided by Shulker | ||
nullable: true | ||
properties: | ||
type: | ||
description: The type of the matchmaking function to use | ||
enum: | ||
- Batch | ||
- Elo | ||
type: string | ||
required: | ||
- type | ||
type: object | ||
provided: | ||
description: The matchmaking function to use is provided by the user | ||
nullable: true | ||
properties: | ||
host: | ||
description: Host of the matchmaking function | ||
type: string | ||
port: | ||
description: GRPC port of the matchmaking function | ||
format: uint16 | ||
minimum: 0.0 | ||
type: integer | ||
required: | ||
- host | ||
- port | ||
type: object | ||
type: object | ||
targetFleetRef: | ||
description: The `MinecraftServerFleet` to use as a target for this queue | ||
properties: | ||
name: | ||
description: Name of the Kubernetes `MinecraftServerFleet` owning this resource | ||
type: string | ||
required: | ||
- name | ||
type: object | ||
required: | ||
- maxPlayers | ||
- mmf | ||
- targetFleetRef | ||
type: object | ||
status: | ||
description: The status object of `MatchmakingQueue` | ||
nullable: true | ||
type: object | ||
required: | ||
- spec | ||
title: MatchmakingQueue | ||
type: object | ||
served: true | ||
storage: true | ||
subresources: | ||
status: {} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.