Customer Relationship Management Blogs by SAP
Stay up-to-date on the latest developments and product news about intelligent customer experience and CRM technologies through blog posts from SAP experts.
cancel
Showing results for 
Search instead for 
Did you mean: 
mperndorfer
Contributor
One of the issues I see in many SAP Commerce project is the lacking developer tooling, especially around project setup, packaging, deployment etc.

This prompted me to write and share various tools with the wider developer audience.

Everything is licensed under Apache License 2.0

Here are some highlights:

SAP Commerce Gradle Plugin


Update 2021-04-27: SAP Commerce Gradle Plugin is officially part of the SAP open-source GithHub organization since end of 2020

https://github.com/SAP/commerce-gradle-plugin

This plugin enables you to do the following with Gradle:

  • Bootstrap (Unpack, configure, ...) your SAP Commerce project

  • Build SAP Commerce with Gradle

  • Use a CCv2 (aka "SAP Commerce Cloud in the Public Cloud") manifest.json to configure the build

  • Validate manifest.json for common errors


The plugins are extensively documented in the docs folder of the project, please check it out.

With these plugins, you can fully automate the project setup (for new developers, or on your Continuous Integration server) and (ideally) reduce it to a single Gradle task:
git clone <project>
cd <project>
./gradlew bootstrap

ccv2-project-template - Start your SAP Commerce Cloud in the Public Cloud (aka CCv2) project the right way


https://github.com/sap-commerce-tools/ccv2-project-template

Opinionated starter template for any CCv2 project.

Stay tuned for a future blog post about this template!

ybp - Auto-navigate to hybris/bin/platform


https://github.com/sap-commerce-tools/ybp

Everybody that develops SAP Commerce projects knows how annoying it is to change the directory to .../hybris/bin/platform, source the ant configuration if necessary and then run the commands like ant or hybrisserver.sh, especially if you work on multiple projects.

This little helper script (available for Linux, macOS and Windows) automates that.

So instead of:
cd ../../../bin/platform
source setantenv.sh
ant clean all

you can just run
ybp ant clean all

With some shell aliases / additional helper scripts (on Windows) you can reduce that even further, for example:
ya clean all

Check the README of the repository for details.

envribbon - What system am I using?


https://github.com/sap-commerce-tools/environment-ribbon

We all have been there:
You run a quick script to delete some faulty data on your test system.
Script succeeds, changes commited, another days work completed!
And then you realize that you had the wrong tab open - It wasn't the test system.
It was actually production.

The envribbon extension places a little ribbon/banner with the meta data of the current environment in the top left corner of the Administration Console and Backoffice.

Bonus: In CCv2, the meta data is provided automatically. Just add the extension to your project and you are ready to go. (Displayed information: <project>-<environment> (<aspect>))


Environment Ribbon in the Administration Console


 

hacvcsinfo - Display version control information in the administration console


https://github.com/sap-commerce-tools/hacvcsinfo

It really helps to see what commit/branch/tag was used to build the currently running server.



 




I hope these tools help everyone embarking on their SAP Commerce projects, as they already did for others.

And of course, Pull Requests, Issues, Ideas and maybe even a tool that you want to share are highly welcome!

Questions? Suggestions? - Leave a comment below!