diff --git a/install/helm/agones/templates/crds/_gameserverspecschema.yaml b/install/helm/agones/templates/crds/_gameserverspecschema.yaml index 9c979028eb..97d75b3ce5 100644 --- a/install/helm/agones/templates/crds/_gameserverspecschema.yaml +++ b/install/helm/agones/templates/crds/_gameserverspecschema.yaml @@ -191,12 +191,12 @@ properties: title: Max capacity of the array (can be less than or equal to value of maxItems) minimum: 0 default: 1000 - maximum: 1000 # must be equal to values.maxItems + maximum: {{ .lists.maxItems }} # must be equal to values.maxItems values: title: set of all the items in the list type: array x-kubernetes-list-type: set # Requires items in the array to be unique - maxItems: 1000 # max possible size of the value array (cannot be updated) + maxItems: {{ .lists.maxItems }} # max possible size of the value array (cannot be updated) items: # name of the item (player1, session1, room1, etc.) type: string default: [] diff --git a/install/helm/agones/templates/crds/_gameserverstatus.yaml b/install/helm/agones/templates/crds/_gameserverstatus.yaml index 7c74c04266..71bc9b10ac 100644 --- a/install/helm/agones/templates/crds/_gameserverstatus.yaml +++ b/install/helm/agones/templates/crds/_gameserverstatus.yaml @@ -106,12 +106,12 @@ status: type: integer minimum: 0 default: 1000 - maximum: 1000 # must be equal to values.maxItems + maximum: {{ .lists.maxItems }} # must be equal to values.maxItems values: title: Set of all the items in the list type: array x-kubernetes-list-type: set # Requires items in the array to be unique - maxItems: 1000 # max possible size of the value array (cannot be updated) + maxItems: {{ .lists.maxItems }} # max possible size of the value array (cannot be updated) items: # name of the item (player1, session1, room1, etc.) type: string default: [] diff --git a/install/helm/agones/templates/crds/fleet.yaml b/install/helm/agones/templates/crds/fleet.yaml index 36da1d6681..c81f710fe5 100644 --- a/install/helm/agones/templates/crds/fleet.yaml +++ b/install/helm/agones/templates/crds/fleet.yaml @@ -134,7 +134,11 @@ spec: - Ascending - Descending template: - {{- $data := dict "metadata" true "podPreserveUnknownFields" .Values.gameservers.podPreserveUnknownFields }} + {{- $data := dict + "metadata" true + "podPreserveUnknownFields" .Values.gameservers.podPreserveUnknownFields + "lists" .Values.gameservers.lists + }} {{- include "gameserver.schema" $data | indent 17 }} status: description: 'FleetStatus is the status of a Fleet. More info: diff --git a/install/helm/agones/templates/crds/gameserver.yaml b/install/helm/agones/templates/crds/gameserver.yaml index de2ad9eea5..095ab5ff67 100644 --- a/install/helm/agones/templates/crds/gameserver.yaml +++ b/install/helm/agones/templates/crds/gameserver.yaml @@ -55,7 +55,10 @@ spec: type: date schema: openAPIV3Schema: - {{- $data := dict "podPreserveUnknownFields" .Values.gameservers.podPreserveUnknownFields }} + {{- $data := dict + "podPreserveUnknownFields" .Values.gameservers.podPreserveUnknownFields + "lists" .Values.gameservers.lists + }} {{- include "gameserver.schema" $data | indent 9 }}{{- /* include the schema then status, as it's easier to align */ -}} {{- include "gameserver.status" $data | indent 11 }} subresources: diff --git a/install/helm/agones/templates/crds/gameserverset.yaml b/install/helm/agones/templates/crds/gameserverset.yaml index 50f1e30545..3536f1d746 100644 --- a/install/helm/agones/templates/crds/gameserverset.yaml +++ b/install/helm/agones/templates/crds/gameserverset.yaml @@ -113,7 +113,11 @@ spec: - Ascending - Descending template: - {{- $data := dict "metadata" true "podPreserveUnknownFields" .Values.gameservers.podPreserveUnknownFields }} + {{- $data := dict + "metadata" true + "podPreserveUnknownFields" .Values.gameservers.podPreserveUnknownFields + "lists" .Values.gameservers.lists + }} {{- include "gameserver.schema" $data | indent 18 }} status: description: 'GameServerSetStatus is the status of a GameServerSet. More info: diff --git a/install/helm/agones/values.schema.json b/install/helm/agones/values.schema.json index 197f92440c..c37b579a0e 100644 --- a/install/helm/agones/values.schema.json +++ b/install/helm/agones/values.schema.json @@ -1559,13 +1559,25 @@ }, "podPreserveUnknownFields": { "type": "boolean" + }, + "lists": { + "type": "object", + "properties": { + "maxItems": { + "type": "integer" + } + }, + "required": [ + "maxItems" + ] } }, "required": [ "namespaces", "minPort", "maxPort", - "podPreserveUnknownFields" + "podPreserveUnknownFields", + "lists" ] }, "helm": { diff --git a/install/helm/agones/values.yaml b/install/helm/agones/values.yaml index f8dc01b221..540b0e1a59 100644 --- a/install/helm/agones/values.yaml +++ b/install/helm/agones/values.yaml @@ -346,6 +346,8 @@ gameservers: # requires feature gate PortRanges to be enabled # game: [9000, 10000] podPreserveUnknownFields: false + lists: + maxItems: 1000 helm: installTests: false diff --git a/install/yaml/install.yaml b/install/yaml/install.yaml index 28e9913dd9..6d6c0818c1 100644 --- a/install/yaml/install.yaml +++ b/install/yaml/install.yaml @@ -1,4 +1,13 @@ --- +# Source: agones/templates/priority-class.yaml +apiVersion: scheduling.k8s.io/v1 +kind: PriorityClass +metadata: + name: agones-system +value: 1000000 +globalDefault: false +description: "This priority class should be used for Agones service pods only." +--- # Source: agones/templates/controller.yaml apiVersion: policy/v1 kind: PodDisruptionBudget @@ -19175,15 +19184,6 @@ webhooks: operations: - CREATE --- -# Source: agones/templates/priority-class.yaml -apiVersion: scheduling.k8s.io/v1 -kind: PriorityClass -metadata: - name: agones-system -value: 1000000 -globalDefault: false -description: "This priority class should be used for Agones service pods only." ---- # Source: agones/templates/extensions.yaml apiVersion: admissionregistration.k8s.io/v1 kind: ValidatingWebhookConfiguration diff --git a/site/content/en/docs/Installation/Install Agones/helm.md b/site/content/en/docs/Installation/Install Agones/helm.md index 5bfeadd0e2..da2afc05af 100644 --- a/site/content/en/docs/Installation/Install Agones/helm.md +++ b/site/content/en/docs/Installation/Install Agones/helm.md @@ -358,6 +358,7 @@ The following tables lists the configurable parameters of the Agones chart and t | `gameservers.maxPort` | Maximum port to use for dynamic port allocation | `8000` | | `gameservers.additionalPortRanges` | Port ranges from which to do named dynamic port allocation. Example:
additionalPortRanges:
  game: [9000, 10000] | `{}` | | `gameservers.podPreserveUnknownFields` | Disable [field pruning][pruning] and schema validation on the Pod template for a [GameServer][gameserver] definition | `false` | +| `gameservers.lists.maxItems` | The maximum number of items that can be specified for a list. | `1000` | ### Helm Installation