@sap/ux-ui5-tooling 1.18.1 → 1.18.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,15 @@ All notable changes to this project are documented in this file.
3
3
 
4
4
  This project adheres to [Semantic Versioning](http://semver.org/) and the changelog is formatted based on [Keep a Changelog](http://keepachangelog.com/).
5
5
 
6
+ ## [1.18.2] - 2025-06-26
7
+ ### Quality
8
+ | Package | Change |
9
+ |---|---|
10
+ | [@sap-ux/preview-middleware](https://github.com/SAP/open-ux-tools) ([source](https://github.com/SAP/open-ux-tools/tree/HEAD/packages/preview-middleware)) | [`0.20.24` -> `0.20.43`] |
11
+ | [@sap-ux/adp-tooling](https://github.com/SAP/open-ux-tools) ([source](https://github.com/SAP/open-ux-tools/tree/HEAD/packages/adp-tooling)) | [`0.14.15` -> `0.14.31`] |
12
+ | [@sap-ux/backend-proxy-middleware](https://github.com/SAP/open-ux-tools) ([source](https://github.com/SAP/open-ux-tools/tree/HEAD/packages/backend-proxy-middleware)) | [`0.9.2` -> `0.9.8`] |
13
+ | [@sap-ux/deploy-tooling](https://github.com/SAP/open-ux-tools) ([source](https://github.com/SAP/open-ux-tools/tree/HEAD/packages/deploy-tooling)) | [`0.16.5` -> `0.16.19`] |
14
+
6
15
  ## [1.18.1] - 2025-06-12
7
16
  ### Quality
8
17
  | Package | Type | Update | Change |
package/README.md CHANGED
@@ -4,8 +4,8 @@ The SAP Fiori Tools - UI5 Tooling contains a selection of custom [middlewares](h
4
4
  Furthermore, the module expose the cli `fiori` offering e.g. the [`fiori run`](#run) command is a wrapper of the `ui5 serve` commands and provides some additional parameters as well as `fiori add deploy-config` and `fiori add flp-config` to extend an existing project.
5
5
 
6
6
  **IMPORTANT**:
7
- - Starting with version `1.10.5`, the minimum required `@ui5/cli` version is >= 3! For more information about migration to version 3 of the `@ui5/cli`, see [here](https://sap.github.io/ui5-tooling/v3/updates/migrate-v3/).
8
- - Starting with version `1.17.6`, the minimum required NodeJS version is 20.19.2 or higher!
7
+ - For more information about migration to the latest `@ui5/cli`, see [here](https://sap.github.io/ui5-tooling/stable/).
8
+ - Starting with version `1.17.6`, the minimum required Node.js version is 20.19.2 or higher!
9
9
 
10
10
  ## [**Middlewares**](#middlewares)
11
11
 
@@ -33,7 +33,7 @@ The application reload middleware does not require any configuration parameters.
33
33
  #### path
34
34
 
35
35
  - `<string>` (default: `webapp`)
36
- Path that is to be watched. By default the standard SAPUI5 `webapp` folder is used
36
+ Path that is to be watched. By default, the standard SAPUI5 `webapp` folder is used
37
37
 
38
38
  #### ext
39
39
 
@@ -472,28 +472,22 @@ The deployment to ABAP task allows deploying SAP Fiori applications to SAP syste
472
472
  **Pre-requisites:**
473
473
 
474
474
  * SAP component SAP_UI 7.53 or higher is installed in your SAP system
475
- * Service needs to be enabled and accessible from your development environment ([how to check this](https://help.sap.com/viewer/68bf513362174d54b58cddec28794093/7.52.5/en-US/bb2bfe50645c741ae10000000a423f68.html))
476
- * For operations on a SAPUI5 ABAP repository, you need the S_DEVELOP authorization.
477
-
478
- **Notes:**
479
-
480
- * the task does not create ABAP transports, therefore, it requires an existing transport if the target ABAP package requires a transport
481
- * only Basic Authentication (user/password based authentication) as well as OAuth2 with the SAP Business Technology Platform
475
+ * Service `/UI5/ABAP_REPOSITORY_SRV` needs to be enabled and accessible from your development environment ([how to check this](https://ui5.sap.com/#/topic/a883327a82ef4cc792f3c1e7b7a48de8))
476
+ * For operations on a SAPUI5 ABAP repository, you need the `S_DEVELOP` authorization.
482
477
 
483
478
  ## Example Configuration
484
479
 
485
- Executing `ui5 build --config ui5-deploy.yaml` in your project with the configuration below in a `ui5-deploy.yaml`, manually added to the project, would deploy all files of your `dist` folder except files ending with `.test.js` and the `internal.md` file. The target system is XYZ with client 200. Username and password for authentication will be read from the environment variables `XYZ_USER` and `XYZ_PASSWORD`.
480
+ Executing the command `npm run deploy` from the root of your project, using the `ui5-deploy.yaml` configuration below, will deploy all files of your `dist` folder except files found in the `test` folder. The `username` and `password` for authentication will be read from the environment variables `XYZ_USER` and `XYZ_PASSWORD`, continue reading to see more examples of how to configure credentials.
486
481
 
487
- Based on this example, the application will be created/updated as `/TEST/SAMPLE_APP` in package `/TEST/UPLOAD` and all changes will be recorded in transport request `XYZQ300582`.
482
+ The application will be created/updated as `/TEST/SAMPLE_APP` in package `/TEST/UPLOAD` and all changes will be recorded in Transport Request `XYZQ300582`. To dynamically create a Transport Request, use the bookmark `REPLACE_WITH_TRANSPORT` in the transport property.
488
483
 
489
- Content of `ui5-deploy.yaml`
490
-
491
- ```
484
+ ```yaml
492
485
  builder:
493
486
  customTasks:
494
487
  - name: deploy-to-abap
495
488
  afterTask: replaceVersion
496
489
  configuration:
490
+ ignoreCertError: false # Disabled by default, set to true if you want to ignore certificate errors
497
491
  target:
498
492
  url: https://XYZ.sap-system.corp:44311
499
493
  client: 200
@@ -504,10 +498,9 @@ builder:
504
498
  app:
505
499
  name: /TEST/SAMPLE_APP
506
500
  package: /TEST/UPLOAD
507
- transport: XYZQ300582
501
+ transport: XYZQ300582 | REPLACE_WITH_TRANSPORT
508
502
  exclude:
509
- - .*\.test.js
510
- - internal.md
503
+ - /test/
511
504
  ```
512
505
 
513
506
  ### Command to create the ui5-deploy.yaml file
@@ -516,9 +509,9 @@ A newly created project does not contain a deployment configuration (`ui5-deploy
516
509
 
517
510
  ### Setting environment variables in a .env file
518
511
 
519
- If you prefer to keep the environment variables in a file, an option can be to create ```.env``` file at the root of your project which contains the environment variables that can be referenced in the ui5.yaml file.
512
+ If you prefer to keep the environment variables in a file, an option can be to create an `.env` file at the root of your project which contains the environment variables that can be referenced in the ui5.yaml file.
520
513
 
521
- IMPORTANT: The username and password property will **only** accept environment variable references in the ```ui5-deploy.yaml```.
514
+ IMPORTANT: The username and password property will **only** accept environment variable references in the `ui5-deploy.yaml`.
522
515
 
523
516
  ```
524
517
  XYZ_USER=[MY_USER_NAME]
@@ -527,7 +520,27 @@ XYZ_PASSWORD=[MY_PASSWORD]
527
520
 
528
521
  ## Command to deploy
529
522
 
530
- After completing the changes in the configuration files, execute the command `npm run deploy`. The deployment task is by default interactive and requires that the user confirms the deploy configuration. If such a confirmation is not required or desired then it can be disable by adding `-- -y` to the `deploy` script e.g. `ui5 build preload --config ui5-deploy.yaml -- -y`
523
+ After completing the changes in the configuration files, execute the command `npm run deploy`.
524
+
525
+ The deployment task is by default interactive and requires that the user confirms the deployment configuration.
526
+
527
+ If such a confirmation is not required or desired then it can be disabled by updating the `ui5-deploy.yaml` configuration file to include the `yes: true` property, e.g.
528
+
529
+ ```yaml
530
+ builder:
531
+ customTasks:
532
+ - name: deploy-to-abap
533
+ afterTask: replaceVersion
534
+ configuration:
535
+ yes: true # Enabled by default, set to true if you want to disable the confirmation prompt
536
+ target:
537
+ url: https://XYZ.sap-system.corp:44311
538
+ client: 200
539
+ auth: basic
540
+ credentials:
541
+ username: env:XYZ_USER
542
+ password: env:XYZ_PASSWORD
543
+ ```
531
544
 
532
545
  ### Accessing the deployed app
533
546
 
@@ -554,7 +567,7 @@ The target object contains properties identifying your target SAP system.
554
567
  #### scp
555
568
 
556
569
  - `<boolean>` (default: `false`)
557
- - By default the deployment task will use basic authentication when connecting to the backend. If the target system is ABAP Environment on SAP Business Technology Platform, this parameter needs to be set to `true`.
570
+ - By default, the deployment task will use basic authentication when connecting to the backend. If the target system is ABAP Environment on SAP Business Technology Platform, this parameter needs to be set to `true`.
558
571
 
559
572
  #### service
560
573
 
@@ -599,6 +612,7 @@ The app object describes the backend object that is created/updated as result of
599
612
 
600
613
  - `<string>` (optional)
601
614
  - The transport parameter refers to a transport request number that is to be used to record changes to the backend application object. The property is optional because it is only required if the package that is used for deployments requires transport requests.
615
+ - To dynamically create a Transport Request during the deployment or undeployment task, use the value `REPLACE_WITH_TRANSPORT`.
602
616
 
603
617
  #### description
604
618
 
@@ -608,18 +622,23 @@ The app object describes the backend object that is created/updated as result of
608
622
  ### exclude
609
623
 
610
624
  - `<string[] array of regex>` (optional)
611
- - By default the deployment task will create an archive (zip file) of all build files and send it to the backend. By using exclude, you can define expressions to match files that shall not be included into the deployment. Note: `string.match()` is used to evaluate the expressions.
625
+ - By default, the deployment task will create an archive (zip file) of all build files and send it to the backend. By using `exclude`, you can define expressions to match files that shall not be included into the deployment. Note: `string.match()` is used to evaluate the expressions.
612
626
 
613
627
  ### index
614
628
 
615
- - `true|false` (default: `false`)
629
+ - `boolean` (default: `false`)
616
630
  - If set to `true`, then an additional index.html will be generated and deployed to run the application standalone.
617
631
 
618
632
  ### test
619
633
 
620
- - `true|false` (default: `false`)
634
+ - `boolean` (default: `false`)
621
635
  - If set to `true`, the task will run through all steps including sending the archive to the SAP backend. The backend will not deploy the app but run the pre-deployment checklist and return the result.
622
636
 
637
+ ### verbose
638
+
639
+ - `boolean` (default: `false`)
640
+ - If set to `true`, the task will log additional information about the deployment process. This is useful for debugging purposes.
641
+
623
642
  ## [Commands](#commands)
624
643
  ### [fiori run](#fiori-run---starts-a-local-web-server-for-running-a-fe-application) - starts a local web server for running a FE application
625
644
  #### Options
@@ -647,16 +666,16 @@ For the deployment to CF, an MTA configuration will be created. The command allo
647
666
 
648
667
  **Pre-requisites:**
649
668
 
650
- * Availablity of the [`mta`](https://github.com/SAP/cloud-mta) executable in the path.
669
+ * Availability of the [`mta`](https://github.com/SAP/cloud-mta) executable in the path.
651
670
  Use `npm i -g mta` to install globally
652
671
  * Availability of Cloud Foundry CLI tools. Installation instructions: https://docs.cloudfoundry.org/cf-cli/install-go-cli.html
653
672
  * Availability of CF multiapps plugin. Installation instructions: https://help.sap.com/viewer/65de2977205c403bbc107264b8eccf4b/Cloud/en-US/27f3af39c2584d4ea8c15ba8c282fd75.html
654
673
  * A correctly configured destination to the backend system
655
674
  * User authorization on CF to deploy
656
675
 
657
- #### Artifacts & configuration created
676
+ #### Artifacts & Configuration
658
677
 
659
- Running the command/task, results in a directory structure that looks like this:
678
+ A Cloud Foundry MTA project structure is created in the current directory. The following files are generated or updated:
660
679
  ```
661
680
  mta_directory
662
681
  |_ application_directory
@@ -664,15 +683,16 @@ mta_directory
664
683
  |_ webapp
665
684
  |_ ...
666
685
  |_ manifest.json
667
- |_ ui5.yaml
668
- |_ cf
669
- |_ deployer
670
- |_ router
671
- |_ flp (optional)
672
- ...
673
- |_ package.json
674
- |_ mta.yaml
686
+ |_ ui5.yaml
687
+ |_ router (Standalone Approuter)(Optional)
688
+ |_ xs-app.json
689
+ |_ package.json
690
+ |_ mta.yaml
691
+ |_ xs-app.json
692
+ |_ xs-security.json
693
+ |_ ui5-deploy.yaml
675
694
  ```
695
+
676
696
  #### Information required to generate the configuration
677
697
  ##### Location of MTA Directory
678
698
  The tool finds the nearest parent directory that contains a `mta.yaml` and offers that as the MTA directory. Failing that, it defaults to the parent directory of the application.
@@ -693,13 +713,13 @@ Deploys an application to an ABAP frontend server.
693
713
 
694
714
  #### Options
695
715
 
696
- * `--config, c` - Path to config file (default: `ui5-deploy.yaml` in root folder of the project).
697
- * `--noConfig` - Only CLI arguments will be used, no config file is read.
716
+ * `--config, -c` - Path to config file (default: `ui5-deploy.yaml` in root folder of the project).
717
+ * `--noConfig, -nc` - Only CLI arguments will be used, no config file is read.
698
718
  * `--destination, -d` - The destination used in SAP Business Application Studio (default: destination from `ui5-deploy.yaml`).
699
719
  * `--url, -u` - The url of the service endpoint at the ABAP system (default: url from `ui5-deploy.yaml`).
700
- * `--username` - Name of environment variable containing a username to authenticate (default: username from `ui5-deploy.yaml`).
701
- * `--password` - Name of environment variable containing a password to authenticate (default: password from `ui5-deploy.yaml`).
702
- * `--authenticationType` - Authentication type for the app (e.g. 'basic', 'reentranceTicket'). Required for 'reentranceTicket' flows.
720
+ * `--username, -ur` - Name of environment variable containing a username to authenticate (default: username from `ui5-deploy.yaml`).
721
+ * `--password, -pw` - Name of environment variable containing a password to authenticate (default: password from `ui5-deploy.yaml`).
722
+ * `--authenticationType, -at` - Authentication type for the app (e.g. 'basic', 'reentranceTicket'). Required for 'reentranceTicket' flows.
703
723
  * `--client, -l` - The ABAP client (default: client from `ui5-deploy.yaml`).
704
724
  * `--transport, -t` - The id of the transport request (default: transport from `ui5-deploy.yaml`).
705
725
  * `--name, -n` - The application name (default: name from `ui5-deploy.yaml`).
@@ -708,7 +728,9 @@ Deploys an application to an ABAP frontend server.
708
728
  * `--yes, -y` - Deploy without asking for confirmation.
709
729
  * `--failFast, -f` - Throw an error if something goes wrong and exit with a return code != 0.
710
730
  * `--testMode, -tm` - Shows the results of CRUD operations that would be done in a real deployment to help you make an informed decision.
711
- * `--archive-path, -ap` - The path to the archive that should be deployed. If provided, the archive will be used instead of creating a new one from the dist folder.
731
+ * `--archive-path, -ap` - The path to the archive that should be deployed. If provided, the archive will be used instead of creating a new one from the dist folder.
732
+ * `--verbose, -vb` - Enable verbose logging (default: `false`).
733
+ * `--strict-ssl, -ss` - If set to `false`, the task will not validate the SSL certificate of the target system. This is useful for development purposes but should not be used in production environments (default: `true`).
712
734
 
713
735
  ## [FAQ](#faq)
714
736