agones.dev/agones@v1.53.0/install/helm/agones/templates/crds/fleetautoscaler.yaml (about)

     1  # Copyright 2018 Google LLC All Rights Reserved.
     2  #
     3  # Licensed under the Apache License, Version 2.0 (the "License");
     4  # you may not use this file except in compliance with the License.
     5  # You may obtain a copy of the License at
     6  #
     7  #     http://www.apache.org/licenses/LICENSE-2.0
     8  #
     9  # Unless required by applicable law or agreed to in writing, software
    10  # distributed under the License is distributed on an "AS IS" BASIS,
    11  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    12  # See the License for the specific language governing permissions and
    13  # limitations under the License.
    14  
    15  {{- if .Values.agones.crds.install }}
    16  
    17  apiVersion: apiextensions.k8s.io/v1
    18  kind: CustomResourceDefinition
    19  metadata:
    20    name: fleetautoscalers.autoscaling.agones.dev
    21    labels:
    22      component: crd
    23      app: {{ template "agones.name" . }}
    24      chart: {{ template "agones.chart" . }}
    25      release: {{ .Release.Name }}
    26      heritage: {{ .Release.Service }}
    27  spec:
    28    group: autoscaling.agones.dev
    29    names:
    30      kind: FleetAutoscaler
    31      plural: fleetautoscalers
    32      shortNames:
    33      - fas
    34      singular: fleetautoscaler
    35    scope: Namespaced
    36    versions:
    37      - name: v1
    38        served: true
    39        storage: true
    40        schema:
    41          openAPIV3Schema:
    42            description: 'FleetAutoscaler is the data structure for a FleetAutoscaler resource.'
    43            type: object
    44            properties:
    45              spec:
    46                description: 'FleetAutoscalerSpec is the spec for a Fleet Scaler. More info:
    47                  https://agones.dev/site/docs/reference/agones_crd_api_reference/#autoscaling.agones.dev/v1.FleetAutoscaler'
    48                type: object
    49                required:
    50                  - fleetName
    51                  - policy
    52                properties:
    53                  fleetName:
    54                    type: string
    55                    minLength: 1
    56                    maxLength: 63
    57                    pattern: "^[a-z0-9]([-\\.a-z0-9]*[a-z0-9])?$"
    58                  {{- $featureGates := include "agones.featureGates" . | fromYaml }}
    59                  {{- include "fleetautoscaler.policy" (dict "includeChainPolicy" $featureGates.ScheduledAutoscaler "includeSchedulePolicy" $featureGates.ScheduledAutoscaler "includePolicy" true) | indent 16 }}
    60                  sync:
    61                    type: object
    62                    required:
    63                      - type
    64                    properties:
    65                      type:
    66                        type: string
    67                        enum:
    68                          - FixedInterval
    69                      fixedInterval:
    70                        type: object
    71                        nullable: true
    72                        required:
    73                          - seconds
    74                        properties:
    75                          seconds:
    76                            type: integer
    77                            minimum: 0
    78                            exclusiveMinimum: true
    79              status:
    80                description: 'FleetAutoscalerStatus defines the current status of a FleetAutoscaler. More info:
    81                  https://agones.dev/site/docs/reference/agones_crd_api_reference/#autoscaling.agones.dev/v1.FleetAutoscaler'
    82                type: object
    83                properties:
    84                  currentReplicas:
    85                    type: integer
    86                  desiredReplicas:
    87                    type: integer
    88                  lastScaleTime:
    89                    type: string
    90                    format: date-time
    91                    nullable: true
    92                  ableToScale:
    93                    type: boolean
    94                  scalingLimited:
    95                    type: boolean
    96                  lastAppliedPolicy:
    97                    type: string
    98                    default: ""
    99        subresources:
   100          # status enables the status subresource.
   101          status: {}
   102  {{- end }}