Documentation ¶
Index ¶
- Constants
- Variables
- func Convert_config_APIServer_To_v1alpha1_APIServer(in *config.APIServer, out *APIServer, s conversion.Scope) error
- func Convert_config_BootstrapConfiguration_To_v1alpha1_BootstrapConfiguration(in *config.BootstrapConfiguration, out *BootstrapConfiguration, ...) error
- func Convert_config_ControllerConfiguration_To_v1alpha1_ControllerConfiguration(in *config.ControllerConfiguration, out *ControllerConfiguration, ...) error
- func Convert_config_NodeAgentConfiguration_To_v1alpha1_NodeAgentConfiguration(in *config.NodeAgentConfiguration, out *NodeAgentConfiguration, ...) error
- func Convert_config_OperatingSystemConfigControllerConfig_To_v1alpha1_OperatingSystemConfigControllerConfig(in *config.OperatingSystemConfigControllerConfig, ...) error
- func Convert_config_ServerConfiguration_To_v1alpha1_ServerConfiguration(in *config.ServerConfiguration, out *ServerConfiguration, s conversion.Scope) error
- func Convert_config_Server_To_v1alpha1_Server(in *config.Server, out *Server, s conversion.Scope) error
- func Convert_config_TokenControllerConfig_To_v1alpha1_TokenControllerConfig(in *config.TokenControllerConfig, out *TokenControllerConfig, ...) error
- func Convert_config_TokenSecretSyncConfig_To_v1alpha1_TokenSecretSyncConfig(in *config.TokenSecretSyncConfig, out *TokenSecretSyncConfig, ...) error
- func Convert_v1alpha1_APIServer_To_config_APIServer(in *APIServer, out *config.APIServer, s conversion.Scope) error
- func Convert_v1alpha1_BootstrapConfiguration_To_config_BootstrapConfiguration(in *BootstrapConfiguration, out *config.BootstrapConfiguration, ...) error
- func Convert_v1alpha1_ControllerConfiguration_To_config_ControllerConfiguration(in *ControllerConfiguration, out *config.ControllerConfiguration, ...) error
- func Convert_v1alpha1_NodeAgentConfiguration_To_config_NodeAgentConfiguration(in *NodeAgentConfiguration, out *config.NodeAgentConfiguration, ...) error
- func Convert_v1alpha1_OperatingSystemConfigControllerConfig_To_config_OperatingSystemConfigControllerConfig(in *OperatingSystemConfigControllerConfig, ...) error
- func Convert_v1alpha1_ServerConfiguration_To_config_ServerConfiguration(in *ServerConfiguration, out *config.ServerConfiguration, s conversion.Scope) error
- func Convert_v1alpha1_Server_To_config_Server(in *Server, out *config.Server, s conversion.Scope) error
- func Convert_v1alpha1_TokenControllerConfig_To_config_TokenControllerConfig(in *TokenControllerConfig, out *config.TokenControllerConfig, ...) error
- func Convert_v1alpha1_TokenSecretSyncConfig_To_config_TokenSecretSyncConfig(in *TokenSecretSyncConfig, out *config.TokenSecretSyncConfig, ...) error
- func RegisterConversions(s *runtime.Scheme) error
- func RegisterDefaults(scheme *runtime.Scheme) error
- func Resource(resource string) schema.GroupResource
- func SetDefaults_ClientConnectionConfiguration(obj *componentbaseconfigv1alpha1.ClientConnectionConfiguration)
- func SetDefaults_NodeAgentConfiguration(obj *NodeAgentConfiguration)
- func SetDefaults_OperatingSystemConfigControllerConfig(obj *OperatingSystemConfigControllerConfig)
- func SetDefaults_ServerConfiguration(obj *ServerConfiguration)
- func SetDefaults_TokenControllerConfig(obj *TokenControllerConfig)
- func SetObjectDefaults_NodeAgentConfiguration(in *NodeAgentConfiguration)
- type APIServer
- type BootstrapConfiguration
- type ControllerConfiguration
- type NodeAgentConfiguration
- type OperatingSystemConfigControllerConfig
- type Server
- type ServerConfiguration
- type TokenControllerConfig
- type TokenSecretSyncConfig
Constants ¶
const ( // BaseDir is the directory on the worker node that contains gardener-node-agent relevant files. BaseDir = "/var/lib/gardener-node-agent" // CredentialsDir is the directory on the worker node that contains credentials for the gardener-node-agent. CredentialsDir = BaseDir + "/credentials" // TempDir is the directory on the worker node that contains temporary directories of files. TempDir = BaseDir + "/tmp" // BinaryDir is the directory on the worker node that contains the binary for the gardener-node-agent. BinaryDir = "/opt/bin" // AccessSecretName is a constant for the secret name for the gardener-node-agent's shoot access secret. AccessSecretName = "gardener-node-agent" // BootstrapTokenFilePath is the file path on the worker node that contains the bootstrap token for the node. BootstrapTokenFilePath = CredentialsDir + "/bootstrap-token" // TokenFilePath is the file path on the worker node that contains the access token of the gardener-node-agent. TokenFilePath = CredentialsDir + "/token" // ConfigFilePath is the file path on the worker node that contains the configuration of the gardener-node-agent. ConfigFilePath = BaseDir + "/config.yaml" // UnitName is the name of the gardener-node-agent systemd service. UnitName = "gardener-node-agent.service" // InitUnitName is the name of the gardener-node-agent systemd service. InitUnitName = "gardener-node-init.service" // DataKeyOperatingSystemConfig is the constant for a key in the data map of an OSC secret which contains the // encoded operating system config. DataKeyOperatingSystemConfig = "osc.yaml" // AnnotationKeyChecksumDownloadedOperatingSystemConfig is a constant for an annotation key on a Secret describing // the checksum of the operating system configuration in the data map. AnnotationKeyChecksumDownloadedOperatingSystemConfig = "checksum/data-script" // AnnotationKeyChecksumAppliedOperatingSystemConfig is a constant for an annotation key on a Node describing the // checksum of the last applied operating system configuration. AnnotationKeyChecksumAppliedOperatingSystemConfig = "checksum/cloud-config-data" )
const GroupName = "nodeagent.config.gardener.cloud"
GroupName is the group name used in this package.
Variables ¶
var ( // SchemeBuilder used to register the NodeAgentConfiguration resource. SchemeBuilder runtime.SchemeBuilder // AddToScheme is a pointer to SchemeBuilder.AddToScheme. AddToScheme = localSchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Convert_config_APIServer_To_v1alpha1_APIServer ¶ added in v1.84.0
func Convert_config_APIServer_To_v1alpha1_APIServer(in *config.APIServer, out *APIServer, s conversion.Scope) error
Convert_config_APIServer_To_v1alpha1_APIServer is an autogenerated conversion function.
func Convert_config_BootstrapConfiguration_To_v1alpha1_BootstrapConfiguration ¶ added in v1.83.0
func Convert_config_BootstrapConfiguration_To_v1alpha1_BootstrapConfiguration(in *config.BootstrapConfiguration, out *BootstrapConfiguration, s conversion.Scope) error
Convert_config_BootstrapConfiguration_To_v1alpha1_BootstrapConfiguration is an autogenerated conversion function.
func Convert_config_ControllerConfiguration_To_v1alpha1_ControllerConfiguration ¶ added in v1.83.0
func Convert_config_ControllerConfiguration_To_v1alpha1_ControllerConfiguration(in *config.ControllerConfiguration, out *ControllerConfiguration, s conversion.Scope) error
Convert_config_ControllerConfiguration_To_v1alpha1_ControllerConfiguration is an autogenerated conversion function.
func Convert_config_NodeAgentConfiguration_To_v1alpha1_NodeAgentConfiguration ¶
func Convert_config_NodeAgentConfiguration_To_v1alpha1_NodeAgentConfiguration(in *config.NodeAgentConfiguration, out *NodeAgentConfiguration, s conversion.Scope) error
Convert_config_NodeAgentConfiguration_To_v1alpha1_NodeAgentConfiguration is an autogenerated conversion function.
func Convert_config_OperatingSystemConfigControllerConfig_To_v1alpha1_OperatingSystemConfigControllerConfig ¶ added in v1.83.0
func Convert_config_OperatingSystemConfigControllerConfig_To_v1alpha1_OperatingSystemConfigControllerConfig(in *config.OperatingSystemConfigControllerConfig, out *OperatingSystemConfigControllerConfig, s conversion.Scope) error
Convert_config_OperatingSystemConfigControllerConfig_To_v1alpha1_OperatingSystemConfigControllerConfig is an autogenerated conversion function.
func Convert_config_ServerConfiguration_To_v1alpha1_ServerConfiguration ¶
func Convert_config_ServerConfiguration_To_v1alpha1_ServerConfiguration(in *config.ServerConfiguration, out *ServerConfiguration, s conversion.Scope) error
Convert_config_ServerConfiguration_To_v1alpha1_ServerConfiguration is an autogenerated conversion function.
func Convert_config_Server_To_v1alpha1_Server ¶
func Convert_config_Server_To_v1alpha1_Server(in *config.Server, out *Server, s conversion.Scope) error
Convert_config_Server_To_v1alpha1_Server is an autogenerated conversion function.
func Convert_config_TokenControllerConfig_To_v1alpha1_TokenControllerConfig ¶ added in v1.83.0
func Convert_config_TokenControllerConfig_To_v1alpha1_TokenControllerConfig(in *config.TokenControllerConfig, out *TokenControllerConfig, s conversion.Scope) error
Convert_config_TokenControllerConfig_To_v1alpha1_TokenControllerConfig is an autogenerated conversion function.
func Convert_config_TokenSecretSyncConfig_To_v1alpha1_TokenSecretSyncConfig ¶ added in v1.85.0
func Convert_config_TokenSecretSyncConfig_To_v1alpha1_TokenSecretSyncConfig(in *config.TokenSecretSyncConfig, out *TokenSecretSyncConfig, s conversion.Scope) error
Convert_config_TokenSecretSyncConfig_To_v1alpha1_TokenSecretSyncConfig is an autogenerated conversion function.
func Convert_v1alpha1_APIServer_To_config_APIServer ¶ added in v1.84.0
func Convert_v1alpha1_APIServer_To_config_APIServer(in *APIServer, out *config.APIServer, s conversion.Scope) error
Convert_v1alpha1_APIServer_To_config_APIServer is an autogenerated conversion function.
func Convert_v1alpha1_BootstrapConfiguration_To_config_BootstrapConfiguration ¶ added in v1.83.0
func Convert_v1alpha1_BootstrapConfiguration_To_config_BootstrapConfiguration(in *BootstrapConfiguration, out *config.BootstrapConfiguration, s conversion.Scope) error
Convert_v1alpha1_BootstrapConfiguration_To_config_BootstrapConfiguration is an autogenerated conversion function.
func Convert_v1alpha1_ControllerConfiguration_To_config_ControllerConfiguration ¶ added in v1.83.0
func Convert_v1alpha1_ControllerConfiguration_To_config_ControllerConfiguration(in *ControllerConfiguration, out *config.ControllerConfiguration, s conversion.Scope) error
Convert_v1alpha1_ControllerConfiguration_To_config_ControllerConfiguration is an autogenerated conversion function.
func Convert_v1alpha1_NodeAgentConfiguration_To_config_NodeAgentConfiguration ¶
func Convert_v1alpha1_NodeAgentConfiguration_To_config_NodeAgentConfiguration(in *NodeAgentConfiguration, out *config.NodeAgentConfiguration, s conversion.Scope) error
Convert_v1alpha1_NodeAgentConfiguration_To_config_NodeAgentConfiguration is an autogenerated conversion function.
func Convert_v1alpha1_OperatingSystemConfigControllerConfig_To_config_OperatingSystemConfigControllerConfig ¶ added in v1.83.0
func Convert_v1alpha1_OperatingSystemConfigControllerConfig_To_config_OperatingSystemConfigControllerConfig(in *OperatingSystemConfigControllerConfig, out *config.OperatingSystemConfigControllerConfig, s conversion.Scope) error
Convert_v1alpha1_OperatingSystemConfigControllerConfig_To_config_OperatingSystemConfigControllerConfig is an autogenerated conversion function.
func Convert_v1alpha1_ServerConfiguration_To_config_ServerConfiguration ¶
func Convert_v1alpha1_ServerConfiguration_To_config_ServerConfiguration(in *ServerConfiguration, out *config.ServerConfiguration, s conversion.Scope) error
Convert_v1alpha1_ServerConfiguration_To_config_ServerConfiguration is an autogenerated conversion function.
func Convert_v1alpha1_Server_To_config_Server ¶
func Convert_v1alpha1_Server_To_config_Server(in *Server, out *config.Server, s conversion.Scope) error
Convert_v1alpha1_Server_To_config_Server is an autogenerated conversion function.
func Convert_v1alpha1_TokenControllerConfig_To_config_TokenControllerConfig ¶ added in v1.83.0
func Convert_v1alpha1_TokenControllerConfig_To_config_TokenControllerConfig(in *TokenControllerConfig, out *config.TokenControllerConfig, s conversion.Scope) error
Convert_v1alpha1_TokenControllerConfig_To_config_TokenControllerConfig is an autogenerated conversion function.
func Convert_v1alpha1_TokenSecretSyncConfig_To_config_TokenSecretSyncConfig ¶ added in v1.85.0
func Convert_v1alpha1_TokenSecretSyncConfig_To_config_TokenSecretSyncConfig(in *TokenSecretSyncConfig, out *config.TokenSecretSyncConfig, s conversion.Scope) error
Convert_v1alpha1_TokenSecretSyncConfig_To_config_TokenSecretSyncConfig is an autogenerated conversion function.
func RegisterConversions ¶
RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.
func RegisterDefaults ¶
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
func SetDefaults_ClientConnectionConfiguration ¶ added in v1.84.0
func SetDefaults_ClientConnectionConfiguration(obj *componentbaseconfigv1alpha1.ClientConnectionConfiguration)
SetDefaults_ClientConnectionConfiguration sets defaults for the garden client connection.
func SetDefaults_NodeAgentConfiguration ¶ added in v1.84.0
func SetDefaults_NodeAgentConfiguration(obj *NodeAgentConfiguration)
SetDefaults_NodeAgentConfiguration sets defaults for the configuration of the Gardener Node Agent.
func SetDefaults_OperatingSystemConfigControllerConfig ¶ added in v1.83.0
func SetDefaults_OperatingSystemConfigControllerConfig(obj *OperatingSystemConfigControllerConfig)
SetDefaults_OperatingSystemConfigControllerConfig sets defaults for the OperatingSystemConfigControllerConfig object.
func SetDefaults_ServerConfiguration ¶ added in v1.84.0
func SetDefaults_ServerConfiguration(obj *ServerConfiguration)
SetDefaults_ServerConfiguration sets defaults for the server configuration.
func SetDefaults_TokenControllerConfig ¶ added in v1.86.0
func SetDefaults_TokenControllerConfig(obj *TokenControllerConfig)
SetDefaults_TokenControllerConfig sets defaults for the TokenControllerConfig object.
func SetObjectDefaults_NodeAgentConfiguration ¶ added in v1.83.0
func SetObjectDefaults_NodeAgentConfiguration(in *NodeAgentConfiguration)
Types ¶
type APIServer ¶ added in v1.84.0
type APIServer struct { // Server is the address of the API server. Server string `json:"server"` // CABundle is the certificate authority bundle for the API server. CABundle []byte `json:"caBundle"` }
APIServer contains information about the API server.
func (*APIServer) DeepCopy ¶ added in v1.84.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIServer.
func (*APIServer) DeepCopyInto ¶ added in v1.84.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type BootstrapConfiguration ¶ added in v1.83.0
type BootstrapConfiguration struct { // KubeletDataVolumeSize sets the data volume size of an unformatted disk on the worker node, which is used for // /var/lib on the worker. // +optional KubeletDataVolumeSize *int64 `json:"kubeletDataVolumeSize,omitempty"` }
BootstrapConfiguration contains configuration for the bootstrap command.
func (*BootstrapConfiguration) DeepCopy ¶ added in v1.83.0
func (in *BootstrapConfiguration) DeepCopy() *BootstrapConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BootstrapConfiguration.
func (*BootstrapConfiguration) DeepCopyInto ¶ added in v1.83.0
func (in *BootstrapConfiguration) DeepCopyInto(out *BootstrapConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControllerConfiguration ¶ added in v1.83.0
type ControllerConfiguration struct { // OperatingSystemConfig is the configuration for the operating system config controller. OperatingSystemConfig OperatingSystemConfigControllerConfig `json:"operatingSystemConfig"` // Token is the configuration for the access token controller. Token TokenControllerConfig `json:"token"` }
ControllerConfiguration defines the configuration of the controllers.
func (*ControllerConfiguration) DeepCopy ¶ added in v1.83.0
func (in *ControllerConfiguration) DeepCopy() *ControllerConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControllerConfiguration.
func (*ControllerConfiguration) DeepCopyInto ¶ added in v1.83.0
func (in *ControllerConfiguration) DeepCopyInto(out *ControllerConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeAgentConfiguration ¶
type NodeAgentConfiguration struct { metav1.TypeMeta `json:",inline"` // ClientConnection specifies the kubeconfig file and the client connection settings for the proxy server to use // when communicating with the kube-apiserver of the shoot cluster. ClientConnection componentbaseconfigv1alpha1.ClientConnectionConfiguration `json:"clientConnection"` // LogLevel is the level/severity for the logs. Must be one of [info,debug,error]. LogLevel string `json:"logLevel"` // LogFormat is the output format for the logs. Must be one of [text,json]. LogFormat string `json:"logFormat"` // Server defines the configuration of the HTTP server. Server ServerConfiguration `json:"server"` // Debugging holds configuration for Debugging related features. // +optional Debugging *componentbaseconfigv1alpha1.DebuggingConfiguration `json:"debugging,omitempty"` // FeatureGates is a map of feature names to bools that enable or disable alpha/experimental features. This field // modifies piecemeal the built-in default values from "github.com/gardener/gardener/pkg/operator/features/features.go". // Default: nil // +optional FeatureGates map[string]bool `json:"featureGates,omitempty"` // APIServer contains information about the API server. APIServer APIServer `json:"apiServer"` // Bootstrap contains configuration for the bootstrap command. // +optional Bootstrap *BootstrapConfiguration `json:"bootstrap,omitempty"` // Controllers defines the configuration of the controllers. Controllers ControllerConfiguration `json:"controllers"` }
NodeAgentConfiguration defines the configuration for the gardener-node-agent.
func (*NodeAgentConfiguration) DeepCopy ¶
func (in *NodeAgentConfiguration) DeepCopy() *NodeAgentConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeAgentConfiguration.
func (*NodeAgentConfiguration) DeepCopyInto ¶
func (in *NodeAgentConfiguration) DeepCopyInto(out *NodeAgentConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeAgentConfiguration) DeepCopyObject ¶
func (in *NodeAgentConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OperatingSystemConfigControllerConfig ¶ added in v1.83.0
type OperatingSystemConfigControllerConfig struct { // SyncPeriod is the duration how often the operating system config is applied. // +optional SyncPeriod *metav1.Duration `json:"syncPeriod,omitempty"` // SecretName defines the name of the secret in the shoot cluster control plane, which contains the operating system // config (OSC) for the gardener-node-agent. SecretName string `json:"secretName"` // KubernetesVersion contains the Kubernetes version of the kubelet, used for annotating the corresponding node // resource with a kubernetes version annotation. KubernetesVersion *semver.Version `json:"kubernetesVersion"` }
OperatingSystemConfigControllerConfig defines the configuration of the operating system config controller.
func (*OperatingSystemConfigControllerConfig) DeepCopy ¶ added in v1.83.0
func (in *OperatingSystemConfigControllerConfig) DeepCopy() *OperatingSystemConfigControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OperatingSystemConfigControllerConfig.
func (*OperatingSystemConfigControllerConfig) DeepCopyInto ¶ added in v1.83.0
func (in *OperatingSystemConfigControllerConfig) DeepCopyInto(out *OperatingSystemConfigControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Server ¶
type Server struct { // BindAddress is the IP address on which to listen for the specified port. BindAddress string `json:"bindAddress"` // Port is the port on which to serve requests. Port int `json:"port"` }
Server contains information for HTTP(S) server configuration.
func (*Server) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Server.
func (*Server) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServerConfiguration ¶
type ServerConfiguration struct { // HealthProbes is the configuration for serving the healthz and readyz endpoints. // +optional HealthProbes *Server `json:"healthProbes,omitempty"` // Metrics is the configuration for serving the metrics endpoint. // +optional Metrics *Server `json:"metrics,omitempty"` }
ServerConfiguration contains details for the HTTP(S) servers.
func (*ServerConfiguration) DeepCopy ¶
func (in *ServerConfiguration) DeepCopy() *ServerConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServerConfiguration.
func (*ServerConfiguration) DeepCopyInto ¶
func (in *ServerConfiguration) DeepCopyInto(out *ServerConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenControllerConfig ¶ added in v1.83.0
type TokenControllerConfig struct { // SyncConfigs is the list of configurations for syncing access tokens. // +optional SyncConfigs []TokenSecretSyncConfig `json:"syncConfigs,omitempty"` // SyncPeriod is the duration how often the access token secrets are synced to the disk. // +optional SyncPeriod *metav1.Duration `json:"syncPeriod,omitempty"` }
TokenControllerConfig defines the configuration of the access token controller.
func (*TokenControllerConfig) DeepCopy ¶ added in v1.83.0
func (in *TokenControllerConfig) DeepCopy() *TokenControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenControllerConfig.
func (*TokenControllerConfig) DeepCopyInto ¶ added in v1.83.0
func (in *TokenControllerConfig) DeepCopyInto(out *TokenControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TokenSecretSyncConfig ¶ added in v1.85.0
type TokenSecretSyncConfig struct { // SecretName defines the name of the secret in the shoot cluster's kube-system namespace which contains the access // token. SecretName string `json:"secretName"` // Path is the path on the machine where the access token content should be synced. Path string `json:"path"` }
TokenSecretSyncConfig contains configurations for syncing access tokens.
func (*TokenSecretSyncConfig) DeepCopy ¶ added in v1.85.0
func (in *TokenSecretSyncConfig) DeepCopy() *TokenSecretSyncConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TokenSecretSyncConfig.
func (*TokenSecretSyncConfig) DeepCopyInto ¶ added in v1.85.0
func (in *TokenSecretSyncConfig) DeepCopyInto(out *TokenSecretSyncConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.