ui5-deployer sends your Fiori/UI5 app from your local computer to the remote server
Deploying SAP Fiori/UI5 apps was always painful for those developers who prefer to work on their local IDE of choice (Visual Code, WebStorm, Vim, Brackets… not you Eclipse, nobody likes you). The only options provided by SAP were via SAP Web IDE or SAP GUI. The former involved a lot of steps to get your code into Web IDE before deploying, the latter was a little bit more straight forward using the ABAP report /UI5/UI5_REPOSITORY_LOAD, however, it was even worse… Both still have a terrible Developer Experience (DX) for people working with local IDEs.
One day I was just tired of using whatever we had available and I decided to create a new deployment tool integrated with ui5-tooling, ui5-deployer was born. I’ve been using it since middle last year and today it’s the “official” deployment tool we’re using in the company.
ui5-deployer leverages on ui5.yaml for the configuration and can be used for deploying to SAP ABAP servers and SAP Cloud Platform (NEO and CF environments). It doesn’t extend ui5-builder, it’s a whole new module built on top of ui5-cli itself. It works on pretty much all ABAP versions with ADT support.
1. Install ui5-deployer as devDependencies into your package.json file
$ npm install ui5-deployer --save-dev
2. Configure the ui5.yaml file
specVersion: '2.1' metadata: name: ui5-deployer-app-test type: application customConfiguration: deployer: type: sap-netweaver sourcePath: dist/ # Path to the project to be deployed connection: url: https://dev.my-sap-server.com credentials: username: MyUsername password: MyPassword abapRepository: client: 100 language: EN transportRequest: ABAPDK999999 package: ZMYPACKAGE bspApplication: ZDEPLOYAPP001 bspApplicationText: TEST DEPLOY APP x1
3. Run the command in a terminal:
$ ui5-deployer deploy
I should have written this blog before, but somehow I was too busy or too lazy for that. I hope we can see more and more tools and libraries from the community to improve DX for the poor Fiori Developers. Also, I hope SAP keeps supporting and listening to the community for we still have a lot of room for improvements.
Fun fact: when SAP released ui5-tooling 2.0, it broke pretty much all ui5 tools I’ve built (public and private) because it introduced a validation on ui5.yaml file. I’ve reported it in the Slack channel #tooling and after a quick discussion they provided a solution and released a new version to allow customConfiguration. Thanks @RandomByte!
PS: we now have even more options such as https://www.npmjs.com/package/ui5-task-nwabap-deployer and https://www.npmjs.com/package/@sap/ux-ui5-tooling, but I’m still using https://www.npmjs.com/package/ui5-deployer as I can deploy to multiple targets (on-premise and cloud) with the same tool.