ui5-versionmanager
v0.0.13
Published
This cli application enables a ui5 lib version replacement within a pipeline like AzureDevops.
Downloads
37
Readme
motivation
This cli application enables an UI5 lib version replacement within a pipeline like AzureDevops, Travis CI or Jenkins. It replaces the src from index.html and manifest.json with a target version given from a providing hook method.
If you have a domain (apps which belonging together to fullfill a process) of applications which means you have an amount of apps which will be build with a central build pipeline template, every app should have the same ui5 lib version. ui5-vman helps you to achieve a consistently version management by modifying the version in the target files.
installation
npm i ui5-versionmanager
use in cli
ui5-vman --modify --mod='onPrem' --manifestPath='test/manifest.json' --indexPath='test/index.html' --versionEndpoint='https%3A%2F%2Fendpoint.com%2Fsap%2Fopu%2Fodata%2Flew%2Fui5bibversmanager_srv%2FGroupVersion%28ui5Group%3DMyGroup%27%27%2Cactive%3Dtrue%29%2Fversion%2F%24value'
argument/command | description ------------ | ------------- modify | command to modify files mod | which mode should be execute? onPrem: OnPremise(SAP Gateway)/Fiori Launchpad(via index.html reference) or SCP (via neo-app.json comming soon) manifestPath | path to manifest.json indexPath | path to index.html versionEndpoint | service endpoint which returns a valid ui5 lib version as string in response body
pipeline example (AzureDevops)
Following example shows a powerscript task from a build pipeline which will be managed by the ui5-versionmanager.
node .\node_modules\ui5-versionmanager\ui5-vman.js --modify --mod='onPrem' --manifestPath=$(manifestpath) --indexPath=$(indexpath) --versionEndpoint=$(endpoint)
before ui5-vman modify
after ui5-vman modify
hints
- The endpoint has to be URI encoded (use: urlencoder )
- versionEndpoint: You need a service which has to response in the body with a valid ui5 lib version as string (use: Available UI5 versions )
- to achieve different ui5 lib versions inside a central pipeline template, you can set different endpoints to the given pipeline