...

Package v1

import "github.com/openshift/api/operatoringress/v1"
Overview
Index

Overview ▾

+kubebuilder:validation:Optional +groupName=ingress.operator.openshift.io

Index ▾

Package files

doc.go register.go types.go zz_generated.deepcopy.go zz_generated.swagger_doc_generated.go

Variables

var (
    GroupName    = "ingress.operator.openshift.io"
    GroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1"}

    // Install is a function which adds this version to a scheme
    Install = schemeBuilder.AddToScheme

    // SchemeGroupVersion generated code relies on this name
    // Deprecated
    SchemeGroupVersion = GroupVersion
    // AddToScheme exists solely to keep the old generators creating valid code
    // DEPRECATED
    AddToScheme = schemeBuilder.AddToScheme
)
var (
    // Failed means the record is not available within a zone.
    // DEPRECATED: will be removed soon, use DNSRecordPublishedConditionType.
    DNSRecordFailedConditionType = "Failed"

    // Published means the record is published to a zone.
    DNSRecordPublishedConditionType = "Published"
)

func Resource

func Resource(resource string) schema.GroupResource

Resource generated code relies on this being here, but it logically belongs to the group DEPRECATED

type DNSManagementPolicy

DNSManagementPolicy is a policy for configuring how the dns controller manages DNSRecords.

+kubebuilder:validation:Enum=Managed;Unmanaged

type DNSManagementPolicy string
const (
    // ManagedDNS configures the dns controller to manage the lifecycle of the
    // DNS record on the cloud platform.
    ManagedDNS DNSManagementPolicy = "Managed"
    // UnmanagedDNS configures the dns controller not to create a DNS record or
    // manage any existing DNS record and allows the DNS record on the cloud
    // provider to be managed by the cluster admin.
    UnmanagedDNS DNSManagementPolicy = "Unmanaged"
)

type DNSRecord

DNSRecord is a DNS record managed in the zones defined by dns.config.openshift.io/cluster .spec.publicZone and .spec.privateZone.

Cluster admin manipulation of this resource is not supported. This resource is only for internal communication of OpenShift operators.

If DNSManagementPolicy is "Unmanaged", the operator will not be responsible for managing the DNS records on the cloud provider.

Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1

type DNSRecord struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard object's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ObjectMeta `json:"metadata,omitempty"`

    // spec is the specification of the desired behavior of the dnsRecord.
    Spec DNSRecordSpec `json:"spec"`
    // status is the most recently observed status of the dnsRecord.
    Status DNSRecordStatus `json:"status"`
}

func (*DNSRecord) DeepCopy

func (in *DNSRecord) DeepCopy() *DNSRecord

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSRecord.

func (*DNSRecord) DeepCopyInto

func (in *DNSRecord) DeepCopyInto(out *DNSRecord)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DNSRecord) DeepCopyObject

func (in *DNSRecord) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (DNSRecord) SwaggerDoc

func (DNSRecord) SwaggerDoc() map[string]string

type DNSRecordList

DNSRecordList contains a list of dnsrecords.

Compatibility level 1: Stable within a major release for a minimum of 12 months or 3 minor releases (whichever is longer). +openshift:compatibility-gen:level=1

type DNSRecordList struct {
    metav1.TypeMeta `json:",inline"`

    // metadata is the standard list's metadata.
    // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
    metav1.ListMeta `json:"metadata,omitempty"`

    Items []DNSRecord `json:"items"`
}

func (*DNSRecordList) DeepCopy

func (in *DNSRecordList) DeepCopy() *DNSRecordList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSRecordList.

func (*DNSRecordList) DeepCopyInto

func (in *DNSRecordList) DeepCopyInto(out *DNSRecordList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*DNSRecordList) DeepCopyObject

func (in *DNSRecordList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (DNSRecordList) SwaggerDoc

func (DNSRecordList) SwaggerDoc() map[string]string

type DNSRecordSpec

DNSRecordSpec contains the details of a DNS record.

type DNSRecordSpec struct {
    // dnsName is the hostname of the DNS record
    //
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:MinLength=1
    // +required
    DNSName string `json:"dnsName"`
    // targets are record targets.
    //
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:MinItems=1
    // +required
    Targets []string `json:"targets"`
    // recordType is the DNS record type. For example, "A" or "CNAME".
    // +kubebuilder:validation:Required
    // +required
    RecordType DNSRecordType `json:"recordType"`
    // recordTTL is the record TTL in seconds. If zero, the default is 30.
    // RecordTTL will not be used in AWS regions Alias targets, but
    // will be used in CNAME targets, per AWS API contract.
    //
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:Minimum=0
    // +required
    RecordTTL int64 `json:"recordTTL"`
    // dnsManagementPolicy denotes the current policy applied on the DNS
    // record. Records that have policy set as "Unmanaged" are ignored by
    // the ingress operator.  This means that the DNS record on the cloud
    // provider is not managed by the operator, and the "Published" status
    // condition will be updated to "Unknown" status, since it is externally
    // managed. Any existing record on the cloud provider can be deleted at
    // the discretion of the cluster admin.
    //
    // This field defaults to Managed. Valid values are "Managed" and
    // "Unmanaged".
    //
    // +kubebuilder:default:="Managed"
    // +kubebuilder:validation:Required
    // +default="Managed"
    DNSManagementPolicy DNSManagementPolicy `json:"dnsManagementPolicy,omitempty"`
}

func (*DNSRecordSpec) DeepCopy

func (in *DNSRecordSpec) DeepCopy() *DNSRecordSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSRecordSpec.

func (*DNSRecordSpec) DeepCopyInto

func (in *DNSRecordSpec) DeepCopyInto(out *DNSRecordSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (DNSRecordSpec) SwaggerDoc

func (DNSRecordSpec) SwaggerDoc() map[string]string

type DNSRecordStatus

DNSRecordStatus is the most recently observed status of each record.

type DNSRecordStatus struct {
    // zones are the status of the record in each zone.
    Zones []DNSZoneStatus `json:"zones,omitempty"`

    // 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.
    // +optional
    ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

func (*DNSRecordStatus) DeepCopy

func (in *DNSRecordStatus) DeepCopy() *DNSRecordStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSRecordStatus.

func (*DNSRecordStatus) DeepCopyInto

func (in *DNSRecordStatus) DeepCopyInto(out *DNSRecordStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (DNSRecordStatus) SwaggerDoc

func (DNSRecordStatus) SwaggerDoc() map[string]string

type DNSRecordType

DNSRecordType is a DNS resource record type. +kubebuilder:validation:Enum=CNAME;A

type DNSRecordType string
const (
    // CNAMERecordType is an RFC 1035 CNAME record.
    CNAMERecordType DNSRecordType = "CNAME"

    // ARecordType is an RFC 1035 A record.
    ARecordType DNSRecordType = "A"
)

type DNSZoneCondition

DNSZoneCondition is just the standard condition fields.

type DNSZoneCondition struct {
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:MinLength=1
    // +required
    Type string `json:"type"`
    // +kubebuilder:validation:Required
    // +kubebuilder:validation:MinLength=1
    // +required
    Status             string      `json:"status"`
    LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
    Reason             string      `json:"reason,omitempty"`
    Message            string      `json:"message,omitempty"`
}

func (*DNSZoneCondition) DeepCopy

func (in *DNSZoneCondition) DeepCopy() *DNSZoneCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSZoneCondition.

func (*DNSZoneCondition) DeepCopyInto

func (in *DNSZoneCondition) DeepCopyInto(out *DNSZoneCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (DNSZoneCondition) SwaggerDoc

func (DNSZoneCondition) SwaggerDoc() map[string]string

type DNSZoneStatus

DNSZoneStatus is the status of a record within a specific zone.

type DNSZoneStatus struct {
    // dnsZone is the zone where the record is published.
    DNSZone configv1.DNSZone `json:"dnsZone"`
    // conditions are any conditions associated with the record in the zone.
    //
    // If publishing the record succeeds, the "Published" condition will be
    // set with status "True" and upon failure it will be set to "False" along
    // with the reason and message describing the cause of the failure.
    Conditions []DNSZoneCondition `json:"conditions,omitempty"`
}

func (*DNSZoneStatus) DeepCopy

func (in *DNSZoneStatus) DeepCopy() *DNSZoneStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSZoneStatus.

func (*DNSZoneStatus) DeepCopyInto

func (in *DNSZoneStatus) DeepCopyInto(out *DNSZoneStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (DNSZoneStatus) SwaggerDoc

func (DNSZoneStatus) SwaggerDoc() map[string]string