// SPDX-License-Identifier: BSD-3-Clause // Code generated by controller-gen. DO NOT EDIT. package v1alpha1 // NetworkEgressTargetApplyConfiguration represents a declarative configuration of the NetworkEgressTarget type for use // with apply. // // NetworkEgressTarget describes a single allowed egress destination. // Exactly one of IP or FQDN must be set. type NetworkEgressTargetApplyConfiguration struct { // IP targets a single specific IP address (not a CIDR range). IP *NetworkEgressIPTargetApplyConfiguration `json:"ip,omitempty"` // FQDN targets an exact domain name (no wildcards). FQDN *NetworkEgressFQDNTargetApplyConfiguration `json:"fqdn,omitempty"` } // NetworkEgressTargetApplyConfiguration constructs a declarative configuration of the NetworkEgressTarget type for use with // apply. func NetworkEgressTarget() *NetworkEgressTargetApplyConfiguration { return &NetworkEgressTargetApplyConfiguration{} } // WithIP sets the IP field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the IP field is set to the value of the last call. func (b *NetworkEgressTargetApplyConfiguration) WithIP(value *NetworkEgressIPTargetApplyConfiguration) *NetworkEgressTargetApplyConfiguration { b.IP = value return b } // WithFQDN sets the FQDN field in the declarative configuration to the given value // and returns the receiver, so that objects can be built by chaining "With" function invocations. // If called multiple times, the FQDN field is set to the value of the last call. func (b *NetworkEgressTargetApplyConfiguration) WithFQDN(value *NetworkEgressFQDNTargetApplyConfiguration) *NetworkEgressTargetApplyConfiguration { b.FQDN = value return b }