Skip to content

Commit 29c4e18

Browse files
authored
Stop using the Kaniko additional options (#12487)
Signed-off-by: Jakub Scholz <www@scholzj.com>
1 parent d40c608 commit 29c4e18

3 files changed

Lines changed: 5 additions & 37 deletions

File tree

cluster-operator/src/main/java/io/strimzi/operator/cluster/model/KafkaConnectBuild.java

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,7 @@ protected KafkaConnectBuild(Reconciliation reconciliation, HasMetadata resource,
104104
* @param useConnectBuildWithBuildah determines if Buildah should be used for the Connect Build
105105
* @return Instance of KafkaConnectBuild class
106106
*/
107-
@SuppressWarnings({"checkstyle:CyclomaticComplexity", "deprecation"})
107+
@SuppressWarnings({"checkstyle:CyclomaticComplexity"})
108108
public static KafkaConnectBuild fromCrd(Reconciliation reconciliation,
109109
KafkaConnect kafkaConnect,
110110
KafkaVersion.Lookup versions,
@@ -120,7 +120,6 @@ public static KafkaConnectBuild fromCrd(Reconciliation reconciliation,
120120
if (spec.getBuild() != null) {
121121
validateBuildConfiguration(spec.getBuild());
122122

123-
// The additionalKanikoOptions are validated separately to avoid parsing the list twice
124123
if (spec.getBuild().getOutput() != null
125124
&& spec.getBuild().getOutput() instanceof DockerOutput dockerOutput) {
126125

@@ -142,14 +141,8 @@ public static KafkaConnectBuild fromCrd(Reconciliation reconciliation,
142141
} else {
143142
if (dockerOutput.getAdditionalBuildOptions() != null
144143
&& !dockerOutput.getAdditionalBuildOptions().isEmpty()) {
145-
// in case that we are using Kaniko and `.additionalBuildOptions` field contains some options, we want to check them
146-
// because `.additionalKanikoOptions` is deprecated and `.additionalBuildOptions` is replacement
147144
validateAdditionalOptions(DockerOutput.ALLOWED_KANIKO_OPTIONS, dockerOutput.getAdditionalBuildOptions(), ".spec.build.output.additionalBuildOptions");
148145
result.additionalBuildOptions = dockerOutput.getAdditionalBuildOptions();
149-
} else if (dockerOutput.getAdditionalKanikoOptions() != null
150-
&& !dockerOutput.getAdditionalKanikoOptions().isEmpty()) {
151-
validateAdditionalOptions(DockerOutput.ALLOWED_KANIKO_OPTIONS, dockerOutput.getAdditionalKanikoOptions(), ".spec.build.output.additionalKanikoOptions");
152-
result.additionalBuildOptions = dockerOutput.getAdditionalKanikoOptions();
153146
}
154147
}
155148
}

cluster-operator/src/test/java/io/strimzi/operator/cluster/model/KafkaConnectBuildTest.java

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ public void testValidKanikoOptions() {
517517
.withNewDockerOutput()
518518
.withImage("my-image:latest")
519519
.withPushSecret("my-docker-credentials")
520-
.withAdditionalKanikoOptions("--reproducible", "--single-snapshot", "--log-format=json")
520+
.withAdditionalBuildOptions("--reproducible", "--single-snapshot", "--log-format=json")
521521
.endDockerOutput()
522522
.endBuild()
523523
.endSpec()
@@ -536,7 +536,7 @@ public void testInvalidKanikoOptions() {
536536
.withNewDockerOutput()
537537
.withImage("my-image:latest")
538538
.withPushSecret("my-docker-credentials")
539-
.withAdditionalKanikoOptions("--reproducible", "--reproducible-something", "--build-arg", "--single-snapshot", "--digest-file=/dev/null", "--log-format=json")
539+
.withAdditionalBuildOptions("--reproducible", "--reproducible-something", "--build-arg", "--single-snapshot", "--digest-file=/dev/null", "--log-format=json")
540540
.endDockerOutput()
541541
.endBuild()
542542
.endSpec()
@@ -546,7 +546,7 @@ public void testInvalidKanikoOptions() {
546546
KafkaConnectBuild.fromCrd(new Reconciliation("test", "KafkaConnect", NAMESPACE, NAME), kc, VERSIONS, SHARED_ENV_PROVIDER, false)
547547
);
548548

549-
assertThat(e.getMessage(), containsString(".spec.build.output.additionalKanikoOptions contains forbidden options: [--reproducible-something, --build-arg, --digest-file]"));
549+
assertThat(e.getMessage(), containsString(".spec.build.output.additionalBuildOptions contains forbidden options: [--reproducible-something, --build-arg, --digest-file]"));
550550
}
551551

552552
@Test
@@ -618,31 +618,6 @@ public void testInvalidBuildahPushOptions() {
618618
assertThat(e.getMessage(), containsString(".spec.build.output.additionalPushOptions contains forbidden options: [--digestfile, --sign-by, --format]"));
619619
}
620620

621-
@Test
622-
public void testKanikoAdditionalOptionsConfiguredOnBothPlaces() {
623-
List<String> expectedArgs = new ArrayList<>(EXPECTED_DEFAULT_KANIKO_OPTIONS);
624-
expectedArgs.add("--single-snapshot");
625-
expectedArgs.add("--log-format=json");
626-
627-
KafkaConnect kc = new KafkaConnectBuilder(RESOURCE)
628-
.editSpec()
629-
.editBuild()
630-
.withNewDockerOutput()
631-
.withImage("my-image:latest")
632-
.withPushSecret("my-docker-credentials")
633-
.withAdditionalKanikoOptions("--reproducible")
634-
.withAdditionalBuildOptions("--single-snapshot", "--log-format=json")
635-
.endDockerOutput()
636-
.endBuild()
637-
.endSpec()
638-
.build();
639-
KafkaConnectBuild build = KafkaConnectBuild.fromCrd(new Reconciliation("test", "KafkaConnect", NAMESPACE, NAME), kc, VERSIONS, SHARED_ENV_PROVIDER, false);
640-
641-
Pod pod = build.generateBuilderPod(true, false, ImagePullPolicy.IFNOTPRESENT, null, "cf065b80ede090aa");
642-
assertThat(pod.getSpec().getContainers().get(0).getArgs(), is(expectedArgs));
643-
assertThat(pod.getSpec().getContainers().get(0).getArgs().contains("--reproducible"), is(false));
644-
}
645-
646621
@Test
647622
public void testInvalidKanikoOptionsInAdditionalBuildOptions() {
648623
KafkaConnect kc = new KafkaConnectBuilder(RESOURCE)

systemtest/src/main/java/io/strimzi/systemtest/templates/crd/KafkaConnectTemplates.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@ public static DockerOutput dockerOutput(String imageName) {
186186
dockerOutputBuilder.withAdditionalPushOptions("--tls-verify=false");
187187
} else if (!Environment.isConnectBuildWithBuildahEnabled() && KubeClusterResource.getInstance().isKind()) {
188188
// if we use Kind we add insecure option
189-
dockerOutputBuilder.withAdditionalKanikoOptions(
189+
dockerOutputBuilder.withAdditionalBuildOptions(
190190
// --insecure for PUSH via HTTP instead of HTTPS
191191
"--insecure");
192192
}

0 commit comments

Comments
 (0)