apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: sojubouncers.irc.now
spec:
  group: irc.now
  names:
    categories: []
    kind: SojuBouncer
    plural: sojubouncers
    shortNames:
    - soju
    singular: sojubouncer
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .spec.hostname
      name: Hostname
      type: string
    - jsonPath: .status.conditions[?(@.type=="Ready")].status
      name: Ready
      type: string
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Auto-generated derived type for SojuBouncerSpec via `CustomResource`
        properties:
          spec:
            properties:
              auth:
                nullable: true
                properties:
                  oauth2_url:
                    type: string
                  secret_ref:
                    nullable: true
                    type: string
                required:
                - oauth2_url
                type: object
              default_network:
                nullable: true
                properties:
                  addr:
                    type: string
                  ergo_port:
                    format: uint16
                    maximum: 65535.0
                    minimum: 0.0
                    nullable: true
                    type: integer
                  ergo_service:
                    type: string
                  name:
                    type: string
                  oper_secret:
                    type: string
                required:
                - addr
                - ergo_service
                - name
                - oper_secret
                type: object
              hostname:
                type: string
              hostname_cloak:
                nullable: true
                type: string
              listeners:
                default: []
                items:
                  properties:
                    address:
                      type: string
                    tls:
                      default: false
                      type: boolean
                    websocket:
                      default: false
                      type: boolean
                  required:
                  - address
                  type: object
                type: array
              resources:
                nullable: true
                properties:
                  limits:
                    nullable: true
                    properties:
                      cpu:
                        nullable: true
                        type: string
                      memory:
                        nullable: true
                        type: string
                    type: object
                  requests:
                    nullable: true
                    properties:
                      cpu:
                        nullable: true
                        type: string
                      memory:
                        nullable: true
                        type: string
                    type: object
                type: object
              route:
                nullable: true
                properties:
                  host:
                    type: string
                required:
                - host
                type: object
              title:
                nullable: true
                type: string
              tls:
                nullable: true
                properties:
                  dns_names:
                    items:
                      type: string
                    type: array
                  issuer_ref:
                    properties:
                      kind:
                        type: string
                      name:
                        type: string
                    required:
                    - kind
                    - name
                    type: object
                required:
                - dns_names
                - issuer_ref
                type: object
            required:
            - hostname
            type: object
          status:
            nullable: true
            properties:
              conditions:
                default: []
                items:
                  properties:
                    last_transition_time:
                      type: string
                    message:
                      type: string
                    reason:
                      type: string
                    status:
                      type: string
                    type:
                      type: string
                  required:
                  - last_transition_time
                  - message
                  - reason
                  - status
                  - type
                  type: object
                type: array
              observed_generation:
                format: int64
                nullable: true
                type: integer
            type: object
        required:
        - spec
        title: SojuBouncer
        type: object
    served: true
    storage: true
    subresources:
      status: {}
