From 975df652291f3a1ffb22e48976da11747f404212 Mon Sep 17 00:00:00 2001 From: Boyan Velinov Date: Tue, 7 Apr 2026 16:22:32 +0300 Subject: [PATCH] Remove sap_java_buildpack deprecation warning The June 2025 deadline has passed and the buildpack has been removed. Delete DeprecatedBuildpackChecker and its usages in BuildCloudDeployModelStep. --- .../steps/BuildCloudDeployModelStep.java | 6 -- .../util/DeprecatedBuildpackChecker.java | 63 ------------------- .../steps/BuildCloudDeployModelStepTest.java | 4 -- 3 files changed, 73 deletions(-) delete mode 100644 multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/util/DeprecatedBuildpackChecker.java diff --git a/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStep.java b/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStep.java index 652a307b4a..c25ec23424 100644 --- a/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStep.java +++ b/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStep.java @@ -36,7 +36,6 @@ import org.cloudfoundry.multiapps.controller.core.util.NameUtil; import org.cloudfoundry.multiapps.controller.process.Messages; import org.cloudfoundry.multiapps.controller.process.security.util.SecureLoggingUtil; -import org.cloudfoundry.multiapps.controller.process.util.DeprecatedBuildpackChecker; import org.cloudfoundry.multiapps.controller.process.util.ProcessTypeParser; import org.cloudfoundry.multiapps.controller.process.variables.Variables; import org.cloudfoundry.multiapps.mta.builders.v2.ParametersChainBuilder; @@ -77,8 +76,6 @@ public class BuildCloudDeployModelStep extends SyncFlowableStep { private ModuleToDeployHelper moduleToDeployHelper; @Inject private ProcessTypeParser processTypeParser; - @Inject - private DeprecatedBuildpackChecker buildpackChecker; @Inject private TokenService tokenService; @@ -115,9 +112,6 @@ protected StepPhase executeStep(ProcessContext context) { mtaManifestModulesNames, deployedModuleNames, mtaModulesForDeployment); - buildpackChecker.warnForDeprecatedBuildpacks(modulesCalculatedForDeployment, deploymentDescriptor, getStepLogger(), - moduleToDeployHelper); - List moduleJsons = modulesCalculatedForDeployment.stream() .map(dynamicSecureSerialization::toJson) .collect(toList()); diff --git a/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/util/DeprecatedBuildpackChecker.java b/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/util/DeprecatedBuildpackChecker.java deleted file mode 100644 index 1561f1db1b..0000000000 --- a/multiapps-controller-process/src/main/java/org/cloudfoundry/multiapps/controller/process/util/DeprecatedBuildpackChecker.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.cloudfoundry.multiapps.controller.process.util; - -import java.util.List; -import java.util.Map; - -import jakarta.inject.Named; -import org.cloudfoundry.multiapps.controller.core.helpers.ModuleToDeployHelper; -import org.cloudfoundry.multiapps.controller.core.model.SupportedParameters; -import org.cloudfoundry.multiapps.mta.builders.v2.ParametersChainBuilder; -import org.cloudfoundry.multiapps.mta.model.DeploymentDescriptor; -import org.cloudfoundry.multiapps.mta.model.Module; -import org.cloudfoundry.multiapps.mta.util.PropertiesUtil; - -@Named -public class DeprecatedBuildpackChecker { - - private static final String DEPRECATION_MESSAGE = "SAP Java Buildpack 1 has been deprecated and is going to be removed from SAP BTP, Cloud Foundry environment after June, 2025!"; - private static final String DEFAULT_BUILDPACK_MESSAGE_1 = "If no buildpack is specified, sap_java_buildpack is currently applied by default for certain module types (java.tomee, java.tomcat, java)."; - private static final String DEFAULT_BUILDPACK_MESSAGE_2 = "This default will change after June - we strongly recommend that you manually migrate to the supported buildpack in advance to avoid deployment issues."; - private static final String DEPRECATION_LINK = "https://help.sap.com/whats-new/cf0cb2cb149647329b5d02aa96303f56?Component=SAP+Java+Buildpack&Valid_as_Of=2025-04-01:2025-04-10&locale=en-US"; - - private static final String DEPRECATED_BUILDPACK = "sap_java_buildpack"; - - public void warnForDeprecatedBuildpacks(List modulesCalculatedForDeployment, - DeploymentDescriptor deploymentDescriptor, StepLogger stepLogger, - ModuleToDeployHelper moduleToDeployHelper) { - List appsWithDeprecatedBuildpacks = modulesCalculatedForDeployment.stream() - .filter(moduleToDeployHelper::isApplication) - .filter(module -> hasDeprecatedBuildpack(module, - deploymentDescriptor - )) - .map(Module::getName) - .toList(); - - if (!appsWithDeprecatedBuildpacks.isEmpty()) { - logDeprecationNotice(stepLogger, appsWithDeprecatedBuildpacks); - } - } - - private boolean hasDeprecatedBuildpack(Module module, DeploymentDescriptor deploymentDescriptor) { - List> parametersList = new ParametersChainBuilder(deploymentDescriptor) - .buildModuleChain(module.getName()); - - List buildpacks = PropertiesUtil.getPluralOrSingular( - parametersList, SupportedParameters.BUILDPACKS, SupportedParameters.BUILDPACK); - - return buildpacks.contains(DEPRECATED_BUILDPACK); - } - - private void logDeprecationNotice(StepLogger stepLogger, List appsWithDeprecatedBuildpacks) { - String separator = "=".repeat(80); - - stepLogger.warn("== ATTENTION: =="); - stepLogger.warn(separator); - stepLogger.warn(DEPRECATION_MESSAGE); - stepLogger.warn(DEFAULT_BUILDPACK_MESSAGE_1); - stepLogger.warn(DEFAULT_BUILDPACK_MESSAGE_2); - stepLogger.warn("Affected modules: " + appsWithDeprecatedBuildpacks); - stepLogger.warn("For more information, see: " + DEPRECATION_LINK); - stepLogger.warn(separator); - } - -} diff --git a/multiapps-controller-process/src/test/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStepTest.java b/multiapps-controller-process/src/test/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStepTest.java index bcc37a4ba9..bf8de9dc31 100644 --- a/multiapps-controller-process/src/test/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStepTest.java +++ b/multiapps-controller-process/src/test/java/org/cloudfoundry/multiapps/controller/process/steps/BuildCloudDeployModelStepTest.java @@ -21,7 +21,6 @@ import org.cloudfoundry.multiapps.controller.core.model.SupportedParameters; import org.cloudfoundry.multiapps.controller.core.security.token.TokenService; import org.cloudfoundry.multiapps.controller.core.test.DescriptorTestUtil; -import org.cloudfoundry.multiapps.controller.process.util.DeprecatedBuildpackChecker; import org.cloudfoundry.multiapps.controller.process.util.ProcessTypeParser; import org.cloudfoundry.multiapps.controller.process.variables.Variables; import org.cloudfoundry.multiapps.mta.model.DeploymentDescriptor; @@ -87,9 +86,6 @@ class BuildCloudDeployModelStepTest extends SyncFlowableStepTest testExecute() { return Stream.of( // @formatter:off