openems
openems copied to clipboard
Generate maven poms and releases within bnd workspace.
This pull request introduces several changes:
- It tidy up bnd files across modules, setting version in one place (cnf/build.bnd). 2) The license headers and vendor declaration are also updated. 3) There are additional properties which enable deployment of released artifacts to maven repositories.
Few notes, as there is an ongoing concern with Bundle-Version policy taken in the project. At the moment all bundles use 1.0.0.${tstamp} (1.0.0.SNAPSHOT after update) which is, even from OSGi point of view, a moving target.
Above is not in line with tags which use completely different format (2024.4.0). At the moment the release version is not propagated to gradle/bnd build making it difficult to navigate between both. For example release tag 2024.4.0 resulted in bundle version is 1.0.0.202403311530 due to different time offsets. It is possible to synchronize these through Bundle-Version: ${env;VERSION;1.0.0}.SNAPSHOT construction. Then, release scripts and pipelines needs to be updated in order to populate build environment.
@da-Kai I'd appreciate if you could review this after your holiday.
See Community-Post for reference: https://community.openems.io/t/maven-artifact-repository/2482/7
One side effect which I observed with my changes, the Bundle-Version for wrapper bundles includes SNAPSHOT in version. Probably have to tweak this to stick with static version of wrapped bundle.
Can I get someone's interest to make initial review before another holiday season starts? :-)
Cheers, Łukasz