Documentation

Overview

    Package v1 contains API Schema definitions for the nvidia v1 API group +k8s:deepcopy-gen=package,register +groupName=nvidia.com

    Package v1 contains API Schema definitions for the nvidia v1 API group +k8s:deepcopy-gen=package,register +groupName=nvidia.com

    Index

    Constants

    This section is empty.

    Variables

    View Source
    var (
    	// SchemeGroupVersion is group version used to register these objects
    	SchemeGroupVersion = schema.GroupVersion{Group: "nvidia.com", Version: "v1"}
    
    	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
    	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}
    )

    Functions

    This section is empty.

    Types

    type ClusterPolicy

    type ClusterPolicy struct {
    	metav1.TypeMeta   `json:",inline"`
    	metav1.ObjectMeta `json:"metadata,omitempty"`
    
    	Spec   ClusterPolicySpec   `json:"spec,omitempty"`
    	Status ClusterPolicyStatus `json:"status,omitempty"`
    }

      ClusterPolicy allows you to configure the GPU Operator +kubebuilder:subresource:status +kubebuilder:resource:path=clusterpolicies,scope=Cluster

      func (*ClusterPolicy) DeepCopy

      func (in *ClusterPolicy) DeepCopy() *ClusterPolicy

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

        func (*ClusterPolicy) DeepCopyInto

        func (in *ClusterPolicy) DeepCopyInto(out *ClusterPolicy)

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

          func (*ClusterPolicy) DeepCopyObject

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

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

            func (*ClusterPolicy) SetState

            func (p *ClusterPolicy) SetState(s State)

              SetState sets state of ClusterPolicy instance

              type ClusterPolicyList

              type ClusterPolicyList struct {
              	metav1.TypeMeta `json:",inline"`
              	metav1.ListMeta `json:"metadata,omitempty"`
              	Items           []ClusterPolicy `json:"items"`
              }

                ClusterPolicyList contains a list of ClusterPolicy

                func (*ClusterPolicyList) DeepCopy

                func (in *ClusterPolicyList) DeepCopy() *ClusterPolicyList

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

                  func (*ClusterPolicyList) DeepCopyInto

                  func (in *ClusterPolicyList) DeepCopyInto(out *ClusterPolicyList)

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

                    func (*ClusterPolicyList) DeepCopyObject

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

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

                      type ClusterPolicySpec

                      type ClusterPolicySpec struct {
                      	// Operator component spec
                      	Operator OperatorSpec `json:"operator"`
                      	// Driver component spec
                      	Driver ComponentSpec `json:"driver"`
                      	// Toolkit component spec
                      	Toolkit ComponentSpec `json:"toolkit"`
                      	// DevicePlugin component spec
                      	DevicePlugin ComponentSpec `json:"devicePlugin"`
                      	// DCGMExporter spec
                      	DCGMExporter ComponentSpec `json:"dcgmExporter"`
                      	// GPUFeatureDiscovery spec
                      	GPUFeatureDiscovery GPUFeatureDiscoverySpec `json:"gfd"`
                      }

                        ClusterPolicySpec defines the desired state of ClusterPolicy

                        func (*ClusterPolicySpec) DeepCopy

                        func (in *ClusterPolicySpec) DeepCopy() *ClusterPolicySpec

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

                          func (*ClusterPolicySpec) DeepCopyInto

                          func (in *ClusterPolicySpec) DeepCopyInto(out *ClusterPolicySpec)

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

                            type ClusterPolicyStatus

                            type ClusterPolicyStatus struct {
                            	// +kubebuilder:validation:Enum=ignored;ready;notReady
                            	State State `json:"state"`
                            }

                              ClusterPolicyStatus defines the observed state of ClusterPolicy

                              func (*ClusterPolicyStatus) DeepCopy

                              func (in *ClusterPolicyStatus) DeepCopy() *ClusterPolicyStatus

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

                                func (*ClusterPolicyStatus) DeepCopyInto

                                func (in *ClusterPolicyStatus) DeepCopyInto(out *ClusterPolicyStatus)

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

                                  type ComponentSpec

                                  type ComponentSpec struct {
                                  	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.\-\/]+
                                  	Repository string `json:"repository"`
                                  
                                  	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
                                  	Image string `json:"image"`
                                  
                                  	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.-]+
                                  	Version string `json:"version"`
                                  
                                  	// Image pull policy
                                  	// +kubebuilder:validation:Optional
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
                                  	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
                                  
                                  	// Image pull secrets
                                  	// +kubebuilder:validation:Optional
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
                                  	ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
                                  
                                  	// Node selector to control the selection of nodes (optional)
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Node Selector"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:selector:Node"
                                  	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
                                  
                                  	// Optional: Set tolerations
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Tolerations"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:io.kubernetes:Tolerations"
                                  	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
                                  
                                  	// Optional: Set Node affinity
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Node Affinity"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:nodeAffinity"
                                  	Affinity *corev1.Affinity `json:"affinity,omitempty"`
                                  
                                  	// Optional: Pod Security Context
                                  	PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"`
                                  
                                  	// Optional: Security Context
                                  	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"`
                                  
                                  	// Optional: Define resources requests and limits for each pod
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
                                  	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
                                  
                                  	// Optional: List of arguments
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
                                  	Args []string `json:"args,omitempty"`
                                  
                                  	// Optional: List of environment variables
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
                                  	Env []corev1.EnvVar `json:"env,omitempty"`
                                  
                                  	// Optional: Custom repo configuration for driver container
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Custom Repo Configuration For Driver Container"
                                  	RepoConfig *DriverRepoConfigSpec `json:"repoConfig,omitempty"`
                                  }

                                    ComponentSpec defines the properties for individual GPU operator components

                                    func (*ComponentSpec) DeepCopy

                                    func (in *ComponentSpec) DeepCopy() *ComponentSpec

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

                                      func (*ComponentSpec) DeepCopyInto

                                      func (in *ComponentSpec) DeepCopyInto(out *ComponentSpec)

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

                                        func (*ComponentSpec) ImagePath

                                        func (c *ComponentSpec) ImagePath() string

                                          ImagePath sets component image path

                                          func (*ComponentSpec) ImagePolicy

                                          func (c *ComponentSpec) ImagePolicy(pullPolicy string) corev1.PullPolicy

                                            ImagePolicy sets component image pull policy

                                            type DriverRepoConfigSpec

                                            type DriverRepoConfigSpec struct {
                                            	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.\-\/]+
                                            	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                            	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="ConfigMap Name"
                                            	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
                                            	ConfigMapName string `json:"configMapName,omitempty"`
                                            
                                            	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.\-\/]+
                                            	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                            	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Destination Mount Directory"
                                            	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:text"
                                            	DestinationDir string `json:"destinationDir,omitempty"`
                                            }

                                              DriverRepoConfigSpec defines custom repo configuration for driver container

                                              func (*DriverRepoConfigSpec) DeepCopy

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

                                                func (*DriverRepoConfigSpec) DeepCopyInto

                                                func (in *DriverRepoConfigSpec) DeepCopyInto(out *DriverRepoConfigSpec)

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

                                                  type GPUFeatureDiscoverySpec

                                                  type GPUFeatureDiscoverySpec struct {
                                                  	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.\-\/]+
                                                  	Repository string `json:"repository"`
                                                  
                                                  	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
                                                  	Image string `json:"image"`
                                                  
                                                  	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.-]+
                                                  	Version string `json:"version"`
                                                  
                                                  	// Image pull policy
                                                  	// +kubebuilder:validation:Optional
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image Pull Policy"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:imagePullPolicy"
                                                  	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
                                                  
                                                  	// Image pull secrets
                                                  	// +kubebuilder:validation:Optional
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
                                                  	ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
                                                  
                                                  	// Node selector to control the selection of nodes (optional)
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Node Selector"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:selector:Node"
                                                  	NodeSelector map[string]string `json:"nodeSelector,omitempty"`
                                                  
                                                  	// Optional: Set tolerations
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Tolerations"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:io.kubernetes:Tolerations"
                                                  	Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
                                                  
                                                  	// Optional: Set Node affinity
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Node affinity"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:nodeAffinity"
                                                  	Affinity *corev1.Affinity `json:"affinity,omitempty"`
                                                  
                                                  	// Optional: Pod Security Context
                                                  	PodSecurityContext *corev1.PodSecurityContext `json:"podSecurityContext,omitempty"`
                                                  
                                                  	// Optional: Security Context
                                                  	SecurityContext *corev1.SecurityContext `json:"securityContext,omitempty"`
                                                  
                                                  	// Optional: Define resources requests and limits for each pod
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Resource Requirements"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:resourceRequirements"
                                                  	Resources *corev1.ResourceRequirements `json:"resources,omitempty"`
                                                  
                                                  	// Optional: MigStrategy for GPU feature discovery plugin
                                                  	// +kubebuilder:validation:Enum=none;single;mixed
                                                  	MigStrategy MigStrategy `json:"migStrategy,omitempty"`
                                                  
                                                  	// Optional: Discovery Interval for GPU feature discovery plugin
                                                  	DiscoveryIntervalSeconds int `json:"discoveryIntervalSeconds,omitempty"`
                                                  
                                                  	// Optional: List of arguments
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Arguments"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
                                                  	Args []string `json:"args,omitempty"`
                                                  
                                                  	// Optional: List of environment variables
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Environment Variables"
                                                  	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:com.tectonic.ui:advanced,urn:alm:descriptor:com.tectonic.ui:text"
                                                  	Env []corev1.EnvVar `json:"env,omitempty"`
                                                  }

                                                    GPUFeatureDiscoverySpec defines the properties for GPU Feature Discovery Plugin

                                                    func (*GPUFeatureDiscoverySpec) DeepCopy

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

                                                      func (*GPUFeatureDiscoverySpec) DeepCopyInto

                                                      func (in *GPUFeatureDiscoverySpec) DeepCopyInto(out *GPUFeatureDiscoverySpec)

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

                                                        func (*GPUFeatureDiscoverySpec) ImagePath

                                                        func (g *GPUFeatureDiscoverySpec) ImagePath() string

                                                          ImagePath sets image path for GFD component

                                                          func (*GPUFeatureDiscoverySpec) ImagePolicy

                                                          func (g *GPUFeatureDiscoverySpec) ImagePolicy(pullPolicy string) corev1.PullPolicy

                                                            ImagePolicy sets image pull policy for GFD component

                                                            type MigStrategy

                                                            type MigStrategy string

                                                              MigStrategy indicates MIG mode

                                                              const (
                                                              	// MigStrategyNone indicates MIG mode disabled.
                                                              	MigStrategyNone MigStrategy = "none"
                                                              	// MigStrategySingle indicates Single MIG mode
                                                              	MigStrategySingle MigStrategy = "single"
                                                              	// MigStrategyMixed indicates Mixed MIG mode
                                                              	MigStrategyMixed MigStrategy = "mixed"
                                                              )

                                                                Constants representing different MIG strategies.

                                                                type OperatorSpec

                                                                type OperatorSpec struct {
                                                                	// +kubebuilder:validation:Enum=docker;crio;containerd
                                                                	DefaultRuntime Runtime       `json:"defaultRuntime"`
                                                                	Validator      ValidatorSpec `json:"validator,omitempty"`
                                                                }

                                                                  OperatorSpec describes configuration options for the operator

                                                                  func (*OperatorSpec) DeepCopy

                                                                  func (in *OperatorSpec) DeepCopy() *OperatorSpec

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

                                                                    func (*OperatorSpec) DeepCopyInto

                                                                    func (in *OperatorSpec) DeepCopyInto(out *OperatorSpec)

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

                                                                      type Runtime

                                                                      type Runtime string

                                                                        Runtime defines container runtime type

                                                                        const (
                                                                        	// Docker runtime
                                                                        	Docker Runtime = "docker"
                                                                        	// CRIO runtime
                                                                        	CRIO Runtime = "crio"
                                                                        	// Containerd runtime
                                                                        	Containerd Runtime = "containerd"
                                                                        )

                                                                        func (Runtime) String

                                                                        func (r Runtime) String() string

                                                                        type State

                                                                        type State string

                                                                          State indicates state of GPU operator components

                                                                          const (
                                                                          	// Ignored indicates duplicate ClusterPolicy instances and rest are ignored.
                                                                          	Ignored State = "ignored"
                                                                          	// Ready indicates all components of ClusterPolicy are ready
                                                                          	Ready State = "ready"
                                                                          	// NotReady indicates some/all components of ClusterPolicy are not ready
                                                                          	NotReady State = "notReady"
                                                                          )

                                                                          type ValidatorSpec

                                                                          type ValidatorSpec struct {
                                                                          	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.\-\/]+
                                                                          	Repository string `json:"repository,omitempty"`
                                                                          
                                                                          	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\-]+
                                                                          	Image string `json:"image,omitempty"`
                                                                          
                                                                          	// +kubebuilder:validation:Pattern=[a-zA-Z0-9\.-]+
                                                                          	Version string `json:"version,omitempty"`
                                                                          
                                                                          	// Image pull policy
                                                                          	// +kubebuilder:validation:Optional
                                                                          	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
                                                                          
                                                                          	// Image pull secrets
                                                                          	// +kubebuilder:validation:Optional
                                                                          	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors=true
                                                                          	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.displayName="Image pull secrets"
                                                                          	// +operator-sdk:gen-csv:customresourcedefinitions.specDescriptors.x-descriptors="urn:alm:descriptor:io.kubernetes:Secret"
                                                                          	ImagePullSecrets []string `json:"imagePullSecrets,omitempty"`
                                                                          }

                                                                            ValidatorSpec describes configuration options for validation pod

                                                                            func (*ValidatorSpec) DeepCopy

                                                                            func (in *ValidatorSpec) DeepCopy() *ValidatorSpec

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

                                                                              func (*ValidatorSpec) DeepCopyInto

                                                                              func (in *ValidatorSpec) DeepCopyInto(out *ValidatorSpec)

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

                                                                                func (*ValidatorSpec) ImagePath

                                                                                func (v *ValidatorSpec) ImagePath() string

                                                                                  ImagePath sets image path for GFD component

                                                                                  func (*ValidatorSpec) ImagePolicy

                                                                                  func (v *ValidatorSpec) ImagePolicy(pullPolicy string) corev1.PullPolicy

                                                                                    ImagePolicy sets image pull policy for validation pod