diff --git a/infra/feast-operator/api/v1alpha1/featurestore_types.go b/infra/feast-operator/api/v1alpha1/featurestore_types.go index 57fdedfee3..f750c29580 100644 --- a/infra/feast-operator/api/v1alpha1/featurestore_types.go +++ b/infra/feast-operator/api/v1alpha1/featurestore_types.go @@ -197,17 +197,6 @@ type JobSpec struct { // +optional PodFailurePolicy *batchv1.PodFailurePolicy `json:"podFailurePolicy,omitempty" protobuf:"bytes,11,opt,name=podFailurePolicy"` - // successPolicy specifies the policy when the Job can be declared as succeeded. - // If empty, the default behavior applies - the Job is declared as succeeded - // only when the number of succeeded pods equals to the completions. - // When the field is specified, it must be immutable and works only for the Indexed Jobs. - // Once the Job meets the SuccessPolicy, the lingering pods are terminated. - // - // This field is alpha-level. To use this field, you must enable the - // `JobSuccessPolicy` feature gate (disabled by default). - // +optional - SuccessPolicy *batchv1.SuccessPolicy `json:"successPolicy,omitempty" protobuf:"bytes,16,opt,name=successPolicy"` - // Specifies the number of retries before marking this job failed. // Defaults to 6 // +optional @@ -320,20 +309,6 @@ type JobSpec struct { // This is on by default. // +optional PodReplacementPolicy *batchv1.PodReplacementPolicy `json:"podReplacementPolicy,omitempty" protobuf:"bytes,14,opt,name=podReplacementPolicy,casttype=podReplacementPolicy"` - - // ManagedBy field indicates the controller that manages a Job. The k8s Job - // controller reconciles jobs which don't have this field at all or the field - // value is the reserved string `kubernetes.io/job-controller`, but skips - // reconciling Jobs with a custom value for this field. - // The value must be a valid domain-prefixed path (e.g. acme.io/foo) - - // all characters before the first "/" must be a valid subdomain as defined - // by RFC 1123. All characters trailing the first "/" must be valid HTTP Path - // characters as defined by RFC 3986. The value cannot exceed 64 characters. - // - // This field is alpha-level. The job controller accepts setting the field - // when the feature gate JobManagedBy is enabled (disabled by default). - // +optional - ManagedBy *string `json:"managedBy,omitempty" protobuf:"bytes,15,opt,name=managedBy"` } // FeatureStoreServices defines the desired feast services. An ephemeral onlineStore feature server is deployed by default. diff --git a/infra/feast-operator/api/v1alpha1/zz_generated.deepcopy.go b/infra/feast-operator/api/v1alpha1/zz_generated.deepcopy.go index 069cd74e8c..63ef30a03a 100644 --- a/infra/feast-operator/api/v1alpha1/zz_generated.deepcopy.go +++ b/infra/feast-operator/api/v1alpha1/zz_generated.deepcopy.go @@ -423,11 +423,6 @@ func (in *JobSpec) DeepCopyInto(out *JobSpec) { *out = new(batchv1.PodFailurePolicy) (*in).DeepCopyInto(*out) } - if in.SuccessPolicy != nil { - in, out := &in.SuccessPolicy, &out.SuccessPolicy - *out = new(batchv1.SuccessPolicy) - (*in).DeepCopyInto(*out) - } if in.BackoffLimit != nil { in, out := &in.BackoffLimit, &out.BackoffLimit *out = new(int32) @@ -473,11 +468,6 @@ func (in *JobSpec) DeepCopyInto(out *JobSpec) { *out = new(batchv1.PodReplacementPolicy) **out = **in } - if in.ManagedBy != nil { - in, out := &in.ManagedBy, &out.ManagedBy - *out = new(string) - **out = **in - } } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new JobSpec. diff --git a/infra/feast-operator/config/crd/bases/feast.dev_featurestores.yaml b/infra/feast-operator/config/crd/bases/feast.dev_featurestores.yaml index e605f1b788..8ab8166c75 100644 --- a/infra/feast-operator/config/crd/bases/feast.dev_featurestores.yaml +++ b/infra/feast-operator/config/crd/bases/feast.dev_featurestores.yaml @@ -285,10 +285,6 @@ spec: job should be run with. format: int32 type: integer - managedBy: - description: ManagedBy field indicates the controller that - manages a Job. - type: string manualSelector: description: manualSelector controls generation of pod labels and pod selectors. @@ -422,35 +418,6 @@ spec: type: object type: object x-kubernetes-map-type: atomic - successPolicy: - description: successPolicy specifies the policy when the Job - can be declared as succeeded. - properties: - rules: - description: |- - rules represents the list of alternative rules for the declaring the Jobs - as successful before `.status.succeeded >= . - items: - description: SuccessPolicyRule describes rule for declaring - a Job as succeeded. - properties: - succeededCount: - description: |- - succeededCount specifies the minimal required size of the actual set of the succeeded indexes - for the Job. - format: int32 - type: integer - succeededIndexes: - description: "succeededIndexes specifies the set - of indexes\nwhich need to be contained in the - actual set of the succeeded indexes for " - type: string - type: object - type: array - x-kubernetes-list-type: atomic - required: - - rules - type: object suspend: description: suspend specifies whether the Job controller should create Pods or not. @@ -4170,10 +4137,6 @@ spec: job should be run with. format: int32 type: integer - managedBy: - description: ManagedBy field indicates the controller - that manages a Job. - type: string manualSelector: description: manualSelector controls generation of pod labels and pod selectors. @@ -4308,36 +4271,6 @@ spec: type: object type: object x-kubernetes-map-type: atomic - successPolicy: - description: successPolicy specifies the policy when the - Job can be declared as succeeded. - properties: - rules: - description: |- - rules represents the list of alternative rules for the declaring the Jobs - as successful before `.status.succeeded >= . - items: - description: SuccessPolicyRule describes rule for - declaring a Job as succeeded. - properties: - succeededCount: - description: |- - succeededCount specifies the minimal required size of the actual set of the succeeded indexes - for the Job. - format: int32 - type: integer - succeededIndexes: - description: "succeededIndexes specifies the - set of indexes\nwhich need to be contained - in the actual set of the succeeded indexes - for " - type: string - type: object - type: array - x-kubernetes-list-type: atomic - required: - - rules - type: object suspend: description: suspend specifies whether the Job controller should create Pods or not. diff --git a/infra/feast-operator/dist/install.yaml b/infra/feast-operator/dist/install.yaml index deb595f517..f007c74c8a 100644 --- a/infra/feast-operator/dist/install.yaml +++ b/infra/feast-operator/dist/install.yaml @@ -293,10 +293,6 @@ spec: job should be run with. format: int32 type: integer - managedBy: - description: ManagedBy field indicates the controller that - manages a Job. - type: string manualSelector: description: manualSelector controls generation of pod labels and pod selectors. @@ -430,35 +426,6 @@ spec: type: object type: object x-kubernetes-map-type: atomic - successPolicy: - description: successPolicy specifies the policy when the Job - can be declared as succeeded. - properties: - rules: - description: |- - rules represents the list of alternative rules for the declaring the Jobs - as successful before `.status.succeeded >= . - items: - description: SuccessPolicyRule describes rule for declaring - a Job as succeeded. - properties: - succeededCount: - description: |- - succeededCount specifies the minimal required size of the actual set of the succeeded indexes - for the Job. - format: int32 - type: integer - succeededIndexes: - description: "succeededIndexes specifies the set - of indexes\nwhich need to be contained in the - actual set of the succeeded indexes for " - type: string - type: object - type: array - x-kubernetes-list-type: atomic - required: - - rules - type: object suspend: description: suspend specifies whether the Job controller should create Pods or not. @@ -4178,10 +4145,6 @@ spec: job should be run with. format: int32 type: integer - managedBy: - description: ManagedBy field indicates the controller - that manages a Job. - type: string manualSelector: description: manualSelector controls generation of pod labels and pod selectors. @@ -4316,36 +4279,6 @@ spec: type: object type: object x-kubernetes-map-type: atomic - successPolicy: - description: successPolicy specifies the policy when the - Job can be declared as succeeded. - properties: - rules: - description: |- - rules represents the list of alternative rules for the declaring the Jobs - as successful before `.status.succeeded >= . - items: - description: SuccessPolicyRule describes rule for - declaring a Job as succeeded. - properties: - succeededCount: - description: |- - succeededCount specifies the minimal required size of the actual set of the succeeded indexes - for the Job. - format: int32 - type: integer - succeededIndexes: - description: "succeededIndexes specifies the - set of indexes\nwhich need to be contained - in the actual set of the succeeded indexes - for " - type: string - type: object - type: array - x-kubernetes-list-type: atomic - required: - - rules - type: object suspend: description: suspend specifies whether the Job controller should create Pods or not. diff --git a/infra/feast-operator/docs/api/markdown/ref.md b/infra/feast-operator/docs/api/markdown/ref.md index ea413cd2f9..b52f61ca17 100644 --- a/infra/feast-operator/docs/api/markdown/ref.md +++ b/infra/feast-operator/docs/api/markdown/ref.md @@ -286,15 +286,6 @@ with restartPolicy=OnFailure. This field is beta-level. It can be used when the `JobPodFailurePolicy` feature gate is enabled (enabled by default). | -| `successPolicy` _[SuccessPolicy](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.30/#successpolicy-v1-batch)_ | successPolicy specifies the policy when the Job can be declared as succeeded. -If empty, the default behavior applies - the Job is declared as succeeded -only when the number of succeeded pods equals to the completions. -When the field is specified, it must be immutable and works only for the Indexed Jobs. -Once the Job meets the SuccessPolicy, the lingering pods are terminated. - - -This field is alpha-level. To use this field, you must enable the -`JobSuccessPolicy` feature gate (disabled by default). | | `backoffLimit` _integer_ | Specifies the number of retries before marking this job failed. Defaults to 6 | | `backoffLimitPerIndex` _integer_ | Specifies the limit for the number of retries within an @@ -379,18 +370,6 @@ When using podFailurePolicy, Failed is the the only allowed value. TerminatingOrFailed and Failed are allowed values when podFailurePolicy is not in use. This is an beta field. To use this, enable the JobPodReplacementPolicy feature toggle. This is on by default. | -| `managedBy` _string_ | ManagedBy field indicates the controller that manages a Job. The k8s Job -controller reconciles jobs which don't have this field at all or the field -value is the reserved string `kubernetes.io/job-controller`, but skips -reconciling Jobs with a custom value for this field. -The value must be a valid domain-prefixed path (e.g. acme.io/foo) - -all characters before the first "/" must be a valid subdomain as defined -by RFC 1123. All characters trailing the first "/" must be valid HTTP Path -characters as defined by RFC 3986. The value cannot exceed 64 characters. - - -This field is alpha-level. The job controller accepts setting the field -when the feature gate JobManagedBy is enabled (disabled by default). | #### KubernetesAuthz