This is an automated email from the ASF dual-hosted git repository.
gyfora pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/flink-kubernetes-operator.git
The following commit(s) were added to refs/heads/main by this push:
new bc9298984 [FLINK-40106] Move FlinkResourceValidator and
FlinkResourceMutator to the api module
bc9298984 is described below
commit bc9298984126c9c9d861edb2796a373999dc65b0
Author: Dennis-Mircea Ciupitu <[email protected]>
AuthorDate: Thu Jul 9 12:29:57 2026 +0300
[FLINK-40106] Move FlinkResourceValidator and FlinkResourceMutator to the
api module
---
docs/content.zh/docs/operations/plugins.md | 6 +++---
docs/content/docs/operations/plugins.md | 6 +++---
.../kubernetes/operator/api}/mutator/FlinkResourceMutator.java | 2 +-
.../kubernetes/operator/api}/validation/FlinkResourceValidator.java | 2 +-
.../java/org/apache/flink/kubernetes/operator/FlinkOperator.java | 2 +-
.../kubernetes/operator/controller/FlinkDeploymentController.java | 2 +-
.../kubernetes/operator/controller/FlinkSessionJobController.java | 2 +-
.../operator/controller/FlinkStateSnapshotController.java | 2 +-
.../flink/kubernetes/operator/mutator/DefaultFlinkMutator.java | 1 +
.../org/apache/flink/kubernetes/operator/utils/MutatorUtils.java | 2 +-
.../org/apache/flink/kubernetes/operator/utils/ValidatorUtils.java | 2 +-
.../flink/kubernetes/operator/validation/DefaultValidator.java | 1 +
.../org/apache/flink/kubernetes/operator/mutator/TestMutator.java | 1 +
.../apache/flink/kubernetes/operator/validation/TestValidator.java | 1 +
...ache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator} | 0
...flink.kubernetes.operator.api.validation.FlinkResourceValidator} | 0
.../flink/kubernetes/operator/admission/FlinkOperatorWebhook.java | 4 ++--
.../apache/flink/kubernetes/operator/admission/FlinkValidator.java | 2 +-
.../flink/kubernetes/operator/admission/mutator/FlinkMutator.java | 2 +-
.../flink/kubernetes/operator/admission/FlinkValidatorTest.java | 2 +-
.../kubernetes/operator/admission/mutator/FlinkMutatorTest.java | 2 +-
.../org/apache/flink/kubernetes/operator/mutator/TestMutator.java | 1 +
.../apache/flink/kubernetes/operator/validation/TestValidator.java | 1 +
...ache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator} | 0
...flink.kubernetes.operator.api.validation.FlinkResourceValidator} | 0
25 files changed, 26 insertions(+), 20 deletions(-)
diff --git a/docs/content.zh/docs/operations/plugins.md
b/docs/content.zh/docs/operations/plugins.md
index ae19bf2f4..28b980e74 100644
--- a/docs/content.zh/docs/operations/plugins.md
+++ b/docs/content.zh/docs/operations/plugins.md
@@ -64,7 +64,7 @@ The following steps demonstrate how to develop and use a
custom validator.
}
```
-2. Create service definition file
`org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator` in
`META-INF/services`. With custom `FlinkResourceValidator` implementation, the
service definition describes as follows:
+2. Create service definition file
`org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator` in
`META-INF/services`. With custom `FlinkResourceValidator` implementation, the
service definition describes as follows:
```text
org.apache.flink.kubernetes.operator.validation.CustomValidator
```
@@ -136,7 +136,7 @@ The following steps demonstrate how to develop and use a
custom mutator.
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
- import org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator;
+ import
org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import java.util.Optional;
@@ -156,7 +156,7 @@ The following steps demonstrate how to develop and use a
custom mutator.
}
```
-2. Create service definition file
`org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator` in
`META-INF/services`. With custom `FlinkResourceMutator` implementation, the
service definition describes as follows:
+2. Create service definition file
`org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator` in
`META-INF/services`. With custom `FlinkResourceMutator` implementation, the
service definition describes as follows:
```text
org.apache.flink.mutator.CustomFlinkMutator
```
diff --git a/docs/content/docs/operations/plugins.md
b/docs/content/docs/operations/plugins.md
index 1ddcf4a79..a2bb72d78 100644
--- a/docs/content/docs/operations/plugins.md
+++ b/docs/content/docs/operations/plugins.md
@@ -64,7 +64,7 @@ The following steps demonstrate how to develop and use a
custom validator.
}
```
-2. Create service definition file
`org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator` in
`META-INF/services`. With custom `FlinkResourceValidator` implementation, the
service definition describes as follows:
+2. Create service definition file
`org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator` in
`META-INF/services`. With custom `FlinkResourceValidator` implementation, the
service definition describes as follows:
```text
org.apache.flink.kubernetes.operator.validation.CustomValidator
```
@@ -136,7 +136,7 @@ The following steps demonstrate how to develop and use a
custom mutator.
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
- import org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator;
+ import
org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import java.util.Optional;
@@ -156,7 +156,7 @@ The following steps demonstrate how to develop and use a
custom mutator.
}
```
-2. Create service definition file
`org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator` in
`META-INF/services`. With custom `FlinkResourceMutator` implementation, the
service definition describes as follows:
+2. Create service definition file
`org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator` in
`META-INF/services`. With custom `FlinkResourceMutator` implementation, the
service definition describes as follows:
```text
org.apache.flink.mutator.CustomFlinkMutator
```
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/FlinkResourceMutator.java
b/flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/mutator/FlinkResourceMutator.java
similarity index 97%
rename from
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/FlinkResourceMutator.java
rename to
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/mutator/FlinkResourceMutator.java
index 47e185c1c..d9fc5e302 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/FlinkResourceMutator.java
+++
b/flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/mutator/FlinkResourceMutator.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.flink.kubernetes.operator.mutator;
+package org.apache.flink.kubernetes.operator.api.mutator;
import org.apache.flink.core.plugin.Plugin;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/FlinkResourceValidator.java
b/flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/validation/FlinkResourceValidator.java
similarity index 97%
rename from
flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/FlinkResourceValidator.java
rename to
flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/validation/FlinkResourceValidator.java
index 8f2a37103..9367ebee8 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/FlinkResourceValidator.java
+++
b/flink-kubernetes-operator-api/src/main/java/org/apache/flink/kubernetes/operator/api/validation/FlinkResourceValidator.java
@@ -15,7 +15,7 @@
* limitations under the License.
*/
-package org.apache.flink.kubernetes.operator.validation;
+package org.apache.flink.kubernetes.operator.api.validation;
import org.apache.flink.core.plugin.Plugin;
import org.apache.flink.kubernetes.operator.api.AbstractFlinkResource;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/FlinkOperator.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/FlinkOperator.java
index 5f72d2ed7..cfb7d3ce3 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/FlinkOperator.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/FlinkOperator.java
@@ -25,6 +25,7 @@ import
org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
import org.apache.flink.kubernetes.operator.api.listener.FlinkResourceListener;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.autoscaler.AutoscalerFactory;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import org.apache.flink.kubernetes.operator.config.FlinkOperatorConfiguration;
@@ -55,7 +56,6 @@ import
org.apache.flink.kubernetes.operator.utils.KubernetesClientUtils;
import org.apache.flink.kubernetes.operator.utils.OperatorPluginUtils;
import org.apache.flink.kubernetes.operator.utils.StatusRecorder;
import org.apache.flink.kubernetes.operator.utils.ValidatorUtils;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import io.fabric8.kubernetes.client.KubernetesClient;
import io.javaoperatorsdk.operator.Operator;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
index ac832a9e1..e2ca41bb4 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkDeploymentController.java
@@ -22,6 +22,7 @@ import
org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import
org.apache.flink.kubernetes.operator.api.lifecycle.ResourceLifecycleState;
import org.apache.flink.kubernetes.operator.api.status.FlinkDeploymentStatus;
import
org.apache.flink.kubernetes.operator.api.status.JobManagerDeploymentStatus;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import
org.apache.flink.kubernetes.operator.exception.DeploymentFailedException;
import org.apache.flink.kubernetes.operator.exception.ReconciliationException;
@@ -36,7 +37,6 @@ import
org.apache.flink.kubernetes.operator.utils.EventSourceUtils;
import org.apache.flink.kubernetes.operator.utils.ExceptionUtils;
import org.apache.flink.kubernetes.operator.utils.StatusRecorder;
import org.apache.flink.kubernetes.operator.utils.ValidatorUtils;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import io.javaoperatorsdk.operator.api.reconciler.Cleaner;
import io.javaoperatorsdk.operator.api.reconciler.Context;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkSessionJobController.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkSessionJobController.java
index 1ffa20e8b..d5f0f8673 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkSessionJobController.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkSessionJobController.java
@@ -21,6 +21,7 @@ import
org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import
org.apache.flink.kubernetes.operator.api.lifecycle.ResourceLifecycleState;
import org.apache.flink.kubernetes.operator.api.status.FlinkSessionJobStatus;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import org.apache.flink.kubernetes.operator.exception.ReconciliationException;
import org.apache.flink.kubernetes.operator.health.CanaryResourceManager;
@@ -33,7 +34,6 @@ import
org.apache.flink.kubernetes.operator.utils.EventSourceUtils;
import org.apache.flink.kubernetes.operator.utils.ExceptionUtils;
import org.apache.flink.kubernetes.operator.utils.StatusRecorder;
import org.apache.flink.kubernetes.operator.utils.ValidatorUtils;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import io.javaoperatorsdk.operator.api.reconciler.Cleaner;
import io.javaoperatorsdk.operator.api.reconciler.Context;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotController.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotController.java
index 97e9075d0..1bb2a3d0a 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotController.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/controller/FlinkStateSnapshotController.java
@@ -19,6 +19,7 @@ package org.apache.flink.kubernetes.operator.controller;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
import
org.apache.flink.kubernetes.operator.api.status.FlinkStateSnapshotStatus;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.metrics.MetricManager;
import
org.apache.flink.kubernetes.operator.observer.snapshot.StateSnapshotObserver;
import org.apache.flink.kubernetes.operator.reconciler.ReconciliationUtils;
@@ -28,7 +29,6 @@ import
org.apache.flink.kubernetes.operator.utils.EventRecorder;
import org.apache.flink.kubernetes.operator.utils.EventSourceUtils;
import org.apache.flink.kubernetes.operator.utils.FlinkStateSnapshotUtils;
import org.apache.flink.kubernetes.operator.utils.StatusRecorder;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import io.javaoperatorsdk.operator.api.reconciler.Cleaner;
import io.javaoperatorsdk.operator.api.reconciler.Context;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/DefaultFlinkMutator.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/DefaultFlinkMutator.java
index 7defc5ed2..071044276 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/DefaultFlinkMutator.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/mutator/DefaultFlinkMutator.java
@@ -21,6 +21,7 @@ import org.apache.flink.kubernetes.operator.api.CrdConstants;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import java.util.HashMap;
import java.util.Optional;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/MutatorUtils.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/MutatorUtils.java
index c99f844ef..822e81f6d 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/MutatorUtils.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/MutatorUtils.java
@@ -19,9 +19,9 @@ package org.apache.flink.kubernetes.operator.utils;
import org.apache.flink.configuration.ConfigConstants;
import org.apache.flink.core.plugin.PluginManager;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import org.apache.flink.kubernetes.operator.mutator.DefaultFlinkMutator;
-import org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/ValidatorUtils.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/ValidatorUtils.java
index 2cf97e088..190ba6834 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/ValidatorUtils.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/utils/ValidatorUtils.java
@@ -20,10 +20,10 @@ package org.apache.flink.kubernetes.operator.utils;
import org.apache.flink.configuration.ConfigConstants;
import org.apache.flink.core.plugin.PluginManager;
import org.apache.flink.kubernetes.operator.api.spec.FlinkVersion;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import org.apache.flink.kubernetes.operator.controller.FlinkResourceContext;
import org.apache.flink.kubernetes.operator.validation.DefaultValidator;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/DefaultValidator.java
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/DefaultValidator.java
index 9525012c1..20b3c5c85 100644
---
a/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/DefaultValidator.java
+++
b/flink-kubernetes-operator/src/main/java/org/apache/flink/kubernetes/operator/validation/DefaultValidator.java
@@ -42,6 +42,7 @@ import org.apache.flink.kubernetes.operator.api.spec.Resource;
import org.apache.flink.kubernetes.operator.api.spec.TaskManagerSpec;
import org.apache.flink.kubernetes.operator.api.spec.UpgradeMode;
import
org.apache.flink.kubernetes.operator.api.status.FlinkStateSnapshotStatus;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import
org.apache.flink.kubernetes.operator.config.KubernetesOperatorConfigOptions;
import org.apache.flink.kubernetes.operator.exception.ReconciliationException;
diff --git
a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
index 47a9046b1..0130c3789 100644
---
a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
+++
b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
@@ -20,6 +20,7 @@ package org.apache.flink.kubernetes.operator.mutator;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import java.util.Optional;
diff --git
a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
index 2a461b0cf..c78dfe6f8 100644
---
a/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
+++
b/flink-kubernetes-operator/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
@@ -21,6 +21,7 @@ import
org.apache.flink.kubernetes.operator.api.AbstractFlinkResource;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import java.util.Optional;
diff --git
a/flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator
b/flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator
similarity index 100%
rename from
flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator
rename to
flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator
diff --git
a/flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator
b/flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator
similarity index 100%
rename from
flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator
rename to
flink-kubernetes-operator/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator
diff --git
a/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkOperatorWebhook.java
b/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkOperatorWebhook.java
index 92f0760fa..673f9c9a8 100644
---
a/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkOperatorWebhook.java
+++
b/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkOperatorWebhook.java
@@ -22,16 +22,16 @@ import org.apache.flink.core.plugin.PluginManager;
import org.apache.flink.kubernetes.operator.admission.informer.InformerManager;
import org.apache.flink.kubernetes.operator.admission.mutator.FlinkMutator;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.config.FlinkConfigManager;
import org.apache.flink.kubernetes.operator.fs.FileSystemWatchService;
-import org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator;
import org.apache.flink.kubernetes.operator.ssl.ReloadableSslContext;
import org.apache.flink.kubernetes.operator.utils.EnvUtils;
import org.apache.flink.kubernetes.operator.utils.KubernetesClientUtils;
import org.apache.flink.kubernetes.operator.utils.MutatorUtils;
import org.apache.flink.kubernetes.operator.utils.OperatorPluginUtils;
import org.apache.flink.kubernetes.operator.utils.ValidatorUtils;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import org.apache.flink.shaded.netty4.io.netty.bootstrap.ServerBootstrap;
import org.apache.flink.shaded.netty4.io.netty.channel.Channel;
diff --git
a/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkValidator.java
b/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkValidator.java
index accba6ba8..880c94322 100644
---
a/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkValidator.java
+++
b/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/FlinkValidator.java
@@ -24,9 +24,9 @@ import
org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
import org.apache.flink.kubernetes.operator.api.spec.JobKind;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import org.apache.flink.kubernetes.operator.health.CanaryResourceManager;
import org.apache.flink.kubernetes.operator.utils.FlinkStateSnapshotUtils;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.fabric8.kubernetes.api.model.HasMetadata;
diff --git
a/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutator.java
b/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutator.java
index f9d4f8788..61bfe510f 100644
---
a/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutator.java
+++
b/flink-kubernetes-webhook/src/main/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutator.java
@@ -22,7 +22,7 @@ import org.apache.flink.kubernetes.operator.api.CrdConstants;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
-import org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import com.fasterxml.jackson.databind.ObjectMapper;
import io.fabric8.kubernetes.api.model.HasMetadata;
diff --git
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/FlinkValidatorTest.java
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/FlinkValidatorTest.java
index d83112276..17bf0370d 100644
---
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/FlinkValidatorTest.java
+++
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/FlinkValidatorTest.java
@@ -28,7 +28,7 @@ import
org.apache.flink.kubernetes.operator.api.spec.FlinkStateSnapshotSpec;
import org.apache.flink.kubernetes.operator.api.spec.JobKind;
import org.apache.flink.kubernetes.operator.api.spec.JobReference;
import org.apache.flink.kubernetes.operator.api.spec.JobSpec;
-import org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.kubernetes.client.KubernetesClient;
diff --git
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutatorTest.java
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutatorTest.java
index 84c65b827..7eaee4542 100644
---
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutatorTest.java
+++
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/admission/mutator/FlinkMutatorTest.java
@@ -22,12 +22,12 @@ import
org.apache.flink.kubernetes.operator.api.CrdConstants;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import org.apache.flink.kubernetes.operator.api.spec.FlinkDeploymentSpec;
import org.apache.flink.kubernetes.operator.api.spec.FlinkSessionJobSpec;
import org.apache.flink.kubernetes.operator.api.spec.FlinkStateSnapshotSpec;
import org.apache.flink.kubernetes.operator.api.spec.JobSpec;
import org.apache.flink.kubernetes.operator.mutator.DefaultFlinkMutator;
-import org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator;
import io.fabric8.kubernetes.api.model.ObjectMeta;
import io.fabric8.kubernetes.client.KubernetesClient;
diff --git
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
index 88959ee3c..2833a1521 100644
---
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
+++
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/mutator/TestMutator.java
@@ -20,6 +20,7 @@ package org.apache.flink.kubernetes.operator.mutator;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator;
import java.util.Optional;
diff --git
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
index 2a461b0cf..c78dfe6f8 100644
---
a/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
+++
b/flink-kubernetes-webhook/src/test/java/org/apache/flink/kubernetes/operator/validation/TestValidator.java
@@ -21,6 +21,7 @@ import
org.apache.flink.kubernetes.operator.api.AbstractFlinkResource;
import org.apache.flink.kubernetes.operator.api.FlinkDeployment;
import org.apache.flink.kubernetes.operator.api.FlinkSessionJob;
import org.apache.flink.kubernetes.operator.api.FlinkStateSnapshot;
+import
org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator;
import java.util.Optional;
diff --git
a/flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator
b/flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator
similarity index 100%
rename from
flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.mutator.FlinkResourceMutator
rename to
flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.mutator.FlinkResourceMutator
diff --git
a/flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator
b/flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator
similarity index 100%
rename from
flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.validation.FlinkResourceValidator
rename to
flink-kubernetes-webhook/src/test/resources/META-INF/services/org.apache.flink.kubernetes.operator.api.validation.FlinkResourceValidator