apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: webservices.irc.now
spec:
  group: irc.now
  names:
    categories: []
    kind: WebService
    plural: webservices
    shortNames:
    - ws
    singular: webservice
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .spec.host
      name: Host
      type: string
    - jsonPath: .status.conditions[?(@.type=="Ready")].status
      name: Ready
      type: string
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Auto-generated derived type for WebServiceSpec via `CustomResource`
        properties:
          spec:
            properties:
              database:
                nullable: true
                properties:
                  env_prefix:
                    nullable: true
                    type: string
                  host:
                    type: string
                  name:
                    type: string
                  port:
                    default: 5432
                    format: int32
                    type: integer
                  secret_ref:
                    type: string
                required:
                - host
                - name
                - secret_ref
                type: object
              host:
                type: string
              image:
                type: string
              oidc:
                nullable: true
                properties:
                  issuer_url:
                    type: string
                  redirect_url:
                    type: string
                  secret_ref:
                    type: string
                required:
                - issuer_url
                - redirect_url
                - secret_ref
                type: object
              port:
                format: int32
                nullable: true
                type: integer
              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
              s3:
                nullable: true
                properties:
                  bucket:
                    type: string
                  credentials_secret:
                    type: string
                  endpoint:
                    type: string
                required:
                - bucket
                - credentials_secret
                - endpoint
                type: object
              service_account:
                nullable: true
                type: string
              stripe:
                nullable: true
                properties:
                  secret_ref:
                    type: string
                required:
                - secret_ref
                type: object
              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:
            - host
            - image
            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: WebService
        type: object
    served: true
    storage: true
    subresources:
      status: {}
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: chatservices.irc.now
spec:
  group: irc.now
  names:
    categories: []
    kind: ChatService
    plural: chatservices
    shortNames:
    - chat
    singular: chatservice
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .spec.host
      name: Host
      type: string
    - jsonPath: .status.conditions[?(@.type=="Ready")].status
      name: Ready
      type: string
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Auto-generated derived type for ChatServiceSpec via `CustomResource`
        properties:
          spec:
            properties:
              host:
                type: string
              image:
                type: string
              port:
                format: int32
                nullable: true
                type: integer
              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
              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
              websocket_timeout:
                default: 600
                format: int32
                type: integer
            required:
            - host
            - image
            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: ChatService
        type: object
    served: true
    storage: true
    subresources:
      status: {}
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  name: minioinstances.irc.now
spec:
  group: irc.now
  names:
    categories: []
    kind: MinioInstance
    plural: minioinstances
    shortNames:
    - minio
    singular: minioinstance
  scope: Namespaced
  versions:
  - additionalPrinterColumns:
    - jsonPath: .spec.storageSize
      name: Storage
      type: string
    - jsonPath: .status.conditions[?(@.type=="Ready")].status
      name: Ready
      type: string
    name: v1alpha1
    schema:
      openAPIV3Schema:
        description: Auto-generated derived type for MinioInstanceSpec via `CustomResource`
        properties:
          spec:
            properties:
              credentials_secret:
                type: string
              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
              storage_class_name:
                nullable: true
                type: string
              storage_size:
                default: 10Gi
                type: string
            required:
            - credentials_secret
            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: MinioInstance
        type: object
    served: true
    storage: true
    subresources:
      status: {}
