Task for the UI5 CLI to zip the webapp.
npm install ui5-task-zipper> :wave: This is an open‑source, community‑driven project, developed and actively monitored by members of the UI5 community. You are welcome to use it, report issues, contribute enhancements, and support others in the community.
Task for ui5-builder, enabling zipping.
- Requires at least @ui5/cli@3.0.0 (to support specVersion: "3.0")
> :warning: UI5 CLI Compatibility
> All releases of this UI5 CLI extension using the major version 3 require UI5 CLI V3. Any previous releases below major version 3 (if available) also support older versions of the UI5 CLI. But the usage of the latest UI5 CLI is strongly recommended!
``bash`
npm install ui5-task-zipper --save-dev
)- debug: true|false
Verbose logging
- archiveName: String.zip
Desired name for the archive.
Default value:
- additionalFiles: String or Object
List of files to be included in the ZIP archive relative to the project root or Map of of files to be included in the ZIP archive relative to the project root and target path in the ZIP archive.
- onlyZip: true|falsetrue
Set this to to omit the resources contained in the ZIP from the build result (typically in the dist folder). By default, the build result contains all resources and the ZIP.
- includeDependencies: true|false or Stringtrue
Set this to if you also want to include the dependencies (UI5 libraries) in the zip archive. Otherwise, it will only include the workspace files (controller, views, etc). In order to select only specific dependencies to be included in the final zip you just need to specify the list of dependencies (value of ui5.yaml: metadata > name).
- relativePaths true|falsetrue
Set this to if you want to turn absolute data source paths in the manifest.json into relative paths, e.g. "uri": "/backend/" will be turned into "uri": "backend/" upon ZIP creation. This is useful when deploying the ZIP to the HTML Application Repository on SAP BTP, Cloud Foundry environment to later consume it in SAP Build Work Zone, standard edition, which only supports relative paths.
NOTE: Starting with release 3.0.5, the ui5-task-zipper includes the generated workspace resources such as the self-contained bundles (sap-ui-custom.* files). To do so, it is important that the ui5-task-zipper is running as last task in the build.
1. Define the dependency in $yourapp/package.json:
`json`
"devDependencies": {
// ...
"ui5-task-zipper": "*"
// ...
}
2. configure it in $yourapp/ui5.yaml:
`yaml`
builder:
customTasks:
- name: ui5-task-zipper
afterTask: generateVersionInfo
configuration:
archiveName: "webapp"
additionalFiles:
"app/foo/xs-app.json": # source path will be used as target path
"path/to/foo.js": "foo.js" # file will be placed in root of ZIP file
"path/to/files/bar.js": "some/custom/dir/bar.js"
With the configuration option includeDependencies you can also specifiy a list of dependencies to be included in the zip file. To do so, specify a list of dependencies using their ui5.yaml: metadata > name property:
`yaml``
builder:
customTasks:
- name: ui5-task-zipper
afterTask: generateVersionInfo
configuration:
includeDependencies:
- sap.ui.table
- ui5.ecosystem.demo.lib
The task can be used to zip all project resources in an archive.
This work is dual-licensed under Apache 2.0 and the Derived Beer-ware License. The official license will be Apache 2.0 but finally you can choose between one of them if you use this work.
When you like this stuff, buy @vobu or @IObert_ a beer or buy @pmuessig a coke when you see them.
diff --git a/packages/ui5-task-zipper/readme.md b/packages/ui5-task-zipper/readme.md