---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    include.release.openshift.io/self-managed-high-availability: "true"
  creationTimestamp: "2022-03-08T10:13:45Z"
  generation: 1
  managedFields:
  - apiVersion: apiextensions.k8s.io/v1beta1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:include.release.openshift.io/self-managed-high-availability: {}
      f:spec:
        f:conversion:
          .: {}
          f:strategy: {}
        f:group: {}
        f:names:
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:singular: {}
        f:preserveUnknownFields: {}
        f:scope: {}
        f:subresources:
          .: {}
          f:status: {}
        f:validation:
          .: {}
          f:openAPIV3Schema:
            .: {}
            f:description: {}
            f:properties:
              .: {}
              f:apiVersion:
                .: {}
                f:description: {}
                f:type: {}
              f:kind:
                .: {}
                f:description: {}
                f:type: {}
              f:metadata:
                .: {}
                f:type: {}
              f:spec:
                .: {}
                f:description: {}
                f:properties:
                  .: {}
                  f:dnsName:
                    .: {}
                    f:description: {}
                    f:minLength: {}
                    f:type: {}
                  f:recordTTL:
                    .: {}
                    f:description: {}
                    f:format: {}
                    f:minimum: {}
                    f:type: {}
                  f:recordType:
                    .: {}
                    f:description: {}
                    f:enum: {}
                    f:type: {}
                  f:targets:
                    .: {}
                    f:description: {}
                    f:items: {}
                    f:minItems: {}
                    f:type: {}
                f:required: {}
                f:type: {}
              f:status:
                .: {}
                f:description: {}
                f:properties:
                  .: {}
                  f:observedGeneration:
                    .: {}
                    f:description: {}
                    f:format: {}
                    f:type: {}
                  f:zones:
                    .: {}
                    f:description: {}
                    f:items: {}
                    f:type: {}
                f:type: {}
            f:type: {}
        f:version: {}
        f:versions: {}
      f:status:
        f:storedVersions: {}
    manager: cluster-version-operator
    operation: Update
    time: "2022-03-08T10:13:45Z"
  - apiVersion: apiextensions.k8s.io/v1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        f:acceptedNames:
          f:kind: {}
          f:listKind: {}
          f:plural: {}
          f:singular: {}
        f:conditions: {}
    manager: kube-apiserver
    operation: Update
    time: "2022-03-08T10:13:46Z"
  name: dnsrecords.ingress.operator.openshift.io
  resourceVersion: "856"
  selfLink: /apis/apiextensions.k8s.io/v1/customresourcedefinitions/dnsrecords.ingress.operator.openshift.io
  uid: 8052dd96-61e1-4a9c-9f95-4bb7277a6b1b
spec:
  conversion:
    strategy: None
  group: ingress.operator.openshift.io
  names:
    kind: DNSRecord
    listKind: DNSRecordList
    plural: dnsrecords
    singular: dnsrecord
  scope: Namespaced
  versions:
  - name: v1
    schema:
      openAPIV3Schema:
        description: "DNSRecord is a DNS record managed in the zones defined by dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone. \n Cluster admin manipulation of this resource is not supported. This resource is only for internal communication of OpenShift operators."
        properties:
          apiVersion:
            description: 'APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
            type: string
          kind:
            description: 'Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
            type: string
          metadata:
            type: object
          spec:
            description: spec is the specification of the desired behavior of the dnsecord.
            properties:
              dnsName:
                description: dnsName is the hostname of the DNS record
                minLength: 1
                type: string
              recordTTL:
                description: recordTTL is the record TTL in seconds. If zero, the default is 30.
                format: int64
                minimum: 0
                type: integer
              recordType:
                description: recordType is the DNS record type. For example, "A" or "CNAME".
                enum:
                - CNAME
                - A
                type: string
              targets:
                description: targets are record targets.
                items:
                  type: string
                minItems: 1
                type: array
            required:
            - dnsName
            - recordTTL
            - recordType
            - targets
            type: object
          status:
            description: status is the most recently observed status of the dnsRecord.
            properties:
              observedGeneration:
                description: observedGeneration is the most recently observed generation of the DNSRecord.  When the DNSRecord is updated, the controller updates the corresponding record in each managed zone.  If an update for a particular zone fails, that failure is recorded in the status condition for the zone so that the controller can determine that it needs to retry the update for that specific zone.
                format: int64
                type: integer
              zones:
                description: zones are the status of the record in each zone.
                items:
                  description: DNSZoneStatus is the status of a record within a specific zone.
                  properties:
                    conditions:
                      description: "conditions are any conditions associated with the record in the zone. \n If publishing the record fails, the \"Failed\" condition will be set with a reason and message describing the cause of the failure."
                      items:
                        description: DNSZoneCondition is just the standard condition fields.
                        properties:
                          lastTransitionTime:
                            format: date-time
                            type: string
                          message:
                            type: string
                          reason:
                            type: string
                          status:
                            minLength: 1
                            type: string
                          type:
                            minLength: 1
                            type: string
                        required:
                        - status
                        - type
                        type: object
                      type: array
                    dnsZone:
                      description: dnsZone is the zone where the record is published.
                      properties:
                        id:
                          description: "id is the identifier that can be used to find the DNS hosted zone. \n on AWS zone can be fetched using `ID` as id in [1] on Azure zone can be fetched using `ID` as a pre-determined name in [2], on GCP zone can be fetched using `ID` as a pre-determined name in [3]. \n [1]: https://docs.aws.amazon.com/cli/latest/reference/route53/get-hosted-zone.html#options [2]: https://docs.microsoft.com/en-us/cli/azure/network/dns/zone?view=azure-cli-latest#az-network-dns-zone-show [3]: https://cloud.google.com/dns/docs/reference/v1/managedZones/get"
                          type: string
                        tags:
                          additionalProperties:
                            type: string
                          description: "tags can be used to query the DNS hosted zone. \n on AWS, resourcegroupstaggingapi [1] can be used to fetch a zone using `Tags` as tag-filters, \n [1]: https://docs.aws.amazon.com/cli/latest/reference/resourcegroupstaggingapi/get-resources.html#options"
                          type: object
                      type: object
                  type: object
                type: array
            type: object
        type: object
    served: true
    storage: true
    subresources:
      status: {}
status:
  acceptedNames:
    kind: DNSRecord
    listKind: DNSRecordList
    plural: dnsrecords
    singular: dnsrecord
  conditions:
  - lastTransitionTime: "2022-03-08T10:13:46Z"
    message: no conflicts found
    reason: NoConflicts
    status: "True"
    type: NamesAccepted
  - lastTransitionTime: "2022-03-08T10:13:46Z"
    message: the initial names have been accepted
    reason: InitialNamesAccepted
    status: "True"
    type: Established
  storedVersions:
  - v1
