The new version of the SAP S/4HANA Cloud SDK Java libraries is available since today. You can update your dependencies to version 2.4.2 and consume the new version from Maven Central. We have also released version v10 of our out-of-the-box continuous delivery offering consisting of a ready-made Jenkins server and a complete delivery toolkit.
In this blog post, we will walk you through the highlights of these releases. For a complete overview, visit our release notes for the Java libraries and for the continuous delivery toolkit. The release notes also include the change log of all our releases so far.
At the end of the article, you will find a set of instructions on how to update to the new versions.
SAP TechEd 2018 is approaching soon! The conference in Las Vegas is only one week away, and Barcelona and Bangalore will follow soon after. The SAP S/4HANA Cloud SDK will be well-represented at all three locations with numerous sessions, including hands-on workshops and CodeJams.
Java Libraries: Release Highlights
Version 2.4.2 is mostly a maintenance release with some bug fixes, listed in the full release notes.
One additional improvement gives more flexibility when creating an
ScpCfService (beta) instance.
ScpCfService represents a service on SAP Cloud Platform, Cloud Foundry and makes access to this service simple, for example, in case of machine learning services. Version 2.4.2 gives additional options to designate the service to access. With the new helper class
ScpCfServiceDesignator, you can specify any combination of parameters (service type, plan, name) as follows:
ScpCfService.of( ScpCfServiceDesignator.builder().serviceName("ml-foundation-trial-beta").build(), "credentials/url", "credentials/clientid", "credentials/clientsecret", "credentials/serviceurls/TRANSLATION_URL");
Continuous Delivery Toolkit: Release Highlights
Scaling on Kubernetes
You can now run the continuous delivery toolkit on a Kubernetes cluster.
The continuous delivery toolkit of the SAP S/4HANA Cloud SDK gives you the means to quickly set up a Jenkins server and supporting tools like a download cache. It supports scaling via running Jenkins on multiple agents. With version v10 of the toolkit, this scaling can be automatically handled by running the toolkit on a Kubernetes cluster.
Kubernetes automatically orchestrates the deployment and scaling of containers, which makes it a perfect fit for the Docker-based server continuous delivery toolkit. Check out the corresponding tutorial blog post and the documentation on how to configure the toolkit to run on a Kubernetes cluster. Running the pipeline on Kubernetes will dynamically spin up new agents on demand and scale down when no jobs are running.
We improved the assistance given to users when running the cx-server. A more explicit warning is raised when Docker is running on low memory (less then 4 gigabyte assigned to Docker on Windows or macOS). Also,
cx-server.bat on Windows catches typical error conditions and points to appropriate help resources. On Linux and macOS, we offer tab-completion for cx-server on the command line; consult the documentation on how to leverage this feature.
We have made the handling of proxy settings more consistent. For the Nexus-based download cache, the toolkit prepends wildcards for no-proxy entries. We take the unix-style no-proxy list as used for other parts of the toolkit and convert it to be suitable for nexus.
We now use the Cloud Foundry deployment step from SAP/jenkins-library instead of our own step. Please update your configuration accordingly, if you are using Cloud Foundry deployment. We do offer a compatibility layer for now, but we intent to remove this in a later version. Check the build artifacts for a
pipeline_config_new.yml file which will ease the migration process.
We have combined the previously separate stages
stageBuildFrontend into one
stageBuild. For more details, consult the architecture decision record.
You can find further fixes and improvements in the complete release notes.
How to Update
To update the version of the SAP S/4HANA Cloud SDK Java libraries used in an existing project, proceed as follows:
- Open the pom.xml file in the root folder of your project.
- Locate the dependency management section and therein the
- Update the version of that dependency to
With this, you are already done thanks to the “bill of material” (BOM) approach. Your dependency should look like this:
<dependencyManagement> <dependencies> <dependency> <groupId>com.sap.cloud.s4hana</groupId> <artifactId>sdk-bom</artifactId> <version>2.4.2</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> <!-- possibly further managed dependencies ... --> </dependencyManagement>
You can now recompile your project (be aware of the compatibility notes, though) and leverage the new features of the SAP S/4HANA Cloud SDK in version 2.4.2.
Continuous Delivery Toolkit
If you are using the pipeline with a fixed version (as recommended since v7), update the continuous delivery toolkit with the following command, that you run on the server hosting the cx-server:
./cx-server update image