aepfli / lyberator

An alternative approach to SAP Commerce Setup.
MIT License
3 stars 0 forks source link

Collecting feedback #1

Open aepfli opened 2 years ago

aepfli commented 2 years ago

This is just a prototype, and i am not sure about how well received the approach is by multiple sides.

Hence that, i use this issue to collect feedback.

aepfli commented 2 years ago

@mpern - i would highly appreciate, if you do think this is feasible and viable. your @sap-commerce-tools it a great starting point and you gradle plugin, already gave me a lot of guidance (not for this one, but for other gradle plugins in connection with commerce).

mpern commented 2 years ago

I like the idea, it's something that I've thought about a while ago.

In a perfect world, there would be a fancy bootstrap Gradle plugin that only unpacks / bootstraps what's necessary. (What we actually need is the Commerce equivalent to "Spring Boot Starters") All dependencies are provided by a SAP-owned Maven repo, and you can only use those extensions/modules that you've licensed.

To take it one step further: Replace ant with Gradle. An extensions is, on a high level, just one or more Gradle (sub-)projects with dependencies. Buildcallbacks can be easily replaced with custom Gradle tasks that hook into a clearly defined build lifecycle using task dependencies. e.g.

tasks.named("coolstorefrontcore:beforeBuild") {
    dependsOn("someCustomTask")
} 

ant gradle is the first step in the right direction, but the legacy ant-bused build is already a huge burden on the developer experience of Commerc/hybris. It's too hard to setup e.g. Sonar or any other tool with Commerce.