// SPDX-License-Identifier: BSD-3-Clause // Code generated by controller-gen. DO NOT EDIT. package v1alpha1 // ClusterProxySpecApplyConfiguration represents a declarative configuration of the ClusterProxySpec type for use // with apply. // // ClusterProxySpec defines the desired state of ClusterProxy. type ClusterProxySpecApplyConfiguration struct { // ClusterName is the name of the Kubernetes cluster. ClusterName *string `json:"clusterName,omitempty"` // APIServer is the URL of the Kubernetes API server to proxy requests to. APIServer *string `json:"apiServer,omitempty"` // ServiceAccountName is a reference to the service account used for impersonation. ServiceAccountName *string `json:"serviceAccountName,omitempty"` // Groups are references to groups that the peer will be a part of. Groups []GroupReferenceApplyConfiguration `json:"groups,omitempty"` } // ClusterProxySpecApplyConfiguration constructs a declarative configuration of the ClusterProxySpec type for use with // apply. func ClusterProxySpec() *ClusterProxySpecApplyConfiguration { return &ClusterProxySpecApplyConfiguration{} } // WithClusterName sets the ClusterName 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 ClusterName field is set to the value of the last call. func (b *ClusterProxySpecApplyConfiguration) WithClusterName(value string) *ClusterProxySpecApplyConfiguration { b.ClusterName = &value return b } // WithAPIServer sets the APIServer 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 APIServer field is set to the value of the last call. func (b *ClusterProxySpecApplyConfiguration) WithAPIServer(value string) *ClusterProxySpecApplyConfiguration { b.APIServer = &value return b } // WithServiceAccountName sets the ServiceAccountName 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 ServiceAccountName field is set to the value of the last call. func (b *ClusterProxySpecApplyConfiguration) WithServiceAccountName(value string) *ClusterProxySpecApplyConfiguration { b.ServiceAccountName = &value return b } // WithGroups adds the given value to the Groups field in the declarative configuration // and returns the receiver, so that objects can be build by chaining "With" function invocations. // If called multiple times, values provided by each call will be appended to the Groups field. func (b *ClusterProxySpecApplyConfiguration) WithGroups(values ...*GroupReferenceApplyConfiguration) *ClusterProxySpecApplyConfiguration { for i := range values { if values[i] == nil { panic("nil value passed to WithGroups") } b.Groups = append(b.Groups, *values[i]) } return b }