Deploy Fiori App to ABAP System
npm install @sap/abap-deploy```
npm install @sap/abap-deploy
- execute abap-deploy in your terminal and answer the questions in the terminal.abap-deploy --help
- or to explore the CLI Options.
#### Prerequisite:
In order to run the abap-deploy CLI on your local environment, you need to add SAP Global Root CA Certificate to your trusted certificate list.
This can be achieved by navigating to your SAP System using your browser (e.g. https://), exporting the certificate from your browser, and then adding it to NODE_EXTRA_CA_CERTShttps://help.sap.com/viewer/a9f57505bbb34a6da3c5ba3a49d409d8/Latest/en-US/4b318bede7eb4021a8be385c46c74045.html
You can find more details in here:
- Add: "@sap/abap-deploy": "" to devDependencies section of your project's package.jsonnpm install
- Execute npm run build
- Execute abap-deploy
- Execute in your terminal and answer the questions in the terminal.
Note: When requested to provide Target System url make sure you are using https and not http.
By default the abap-deploy tool will ask the user for any missing configuration.
Configuration options may be passed as command line arguments, e.g:
abap-deploy --targetSystem=https://foo.com --client=010
The list of CLI options can be printed by running abap-deploy --help
CLI arguments may be useful to avoid re-typing the same values or to inject values from environment variables for certain options.
Any configuration options that can be set via the command line can also be specified within a separate configuration file. A variety of default config files flavors are available:
| File name | File Association |
| ----------------------- | ---------------- |
| .abap-deployrc | JSON or YAML |.abap-deployrc.json
| | JSON |.abap-deployrc.yaml
| | YAML |.abap-deployrc.yml
| | YAML |.abap-deployrc.js
| | CommonJS export |abap-deploy.config.js
| | CommonJS export |
These default configuration files will be searched "upwards" starting from the CWD.
#### Custom Name Configuration Files.
A specific configuration file path may be provided using the configPath option, e.g:
- abap-deploy --config-path=./my-custom.config.json
Multiple custom name configuration files may be useful to manage presets of deployment
scenarios, e.g test vs productive systems.
#### package.json configuration
The configuration can also be embedded in the project's package.json inside the "abap-deploy" key, e.g:
- `json`
{
"name": "myApp",
"version": "0.2.0",
"dependencies": {},
"devDependencies": {},
"abap-deploy": {}
}
#### Sample JSON Configuration File
`json`
{
"deploy": {
"sourceFolder": "./dist",
"targetSystem": "http://abc.com",
"client": "010",
"username": "Tom",
"password": "abcd1234",
"appName": "foo"
},
"cli": {
"interactiveFallBack": false
}
}
#### Sample YAML Configuration File
`yaml`
deploy:
sourceFolder: "./dist"
targetSystem: http://abc.com
client: "010"
username: Tom
password: abcd1234
appName: foo
cli:
interactiveFallBack: false
Options from different sources have different precedence levels.
- CLI arguments (e.g --source-folder) options have the highest priority and will override any other options.
- Configuration files options are next on the priority list.
- Interactive options are the lowest priority and will only be asked for options which have no values assigned by either CLI/Config FIle.
#### sourceFolder
| | |
| --------------- | ---------------------------------------------- |
| Description | Project's Pre-Built Artifacts Folder to Deploy |
| Type | String |
| CLI Name | --source-folder |--sf
| CLI Alias | |deploy.sourceFolder
| Config File Key | |./dist
| Default | (if exists) |
#### targetSystem
| | |
| --------------- | ---------------------------- |
| Description | ABAP system URL to Deploy to |
| Type | String |
| CLI Name | --target-system |--ts
| CLI Alias | |deploy.targetSystem
| Config File Key | |
#### client
| | |
| --------------- | ------------------------- |
| Description | ABAP system client number |
| Type | String |
| CLI Name | --client |--c
| CLI Alias | |deploy.client
| Config File Key | |
#### username
| | |
| --------------- | -------------------- |
| Description | ABAP System username |
| Type | String |
| CLI Name | --username |--u
| CLI Alias | |deploy.username
| Config File Key | |
#### password
| | |
| --------------- | -------------------- |
| Description | ABAP System password |
| Type | String |
| CLI Name | --password |--p
| CLI Alias | |deploy.password
| Config File Key | |
#### appName
| | |
| --------------- | -------------------------------- |
| Description | Application Name (folder in BSP) |
| Type | String |
| CLI Name | --app-name |--ap
| CLI Alias | |deploy.appName
| Config File Key | |
#### description
| | |
| --------------- | ----------------------- |
| Description | Application Description |
| Type | String |
| CLI Name | --description |--d
| CLI Alias | |deploy.description
| Config File Key | |
#### interactiveFallBack
| | |
| --------------- | --------------------------------------------------------- |
| Description | Fallback to Interactive mode in case of missing arguments |
| Type | Boolean |
| CLI Name | --interactive-fallback |--if
| CLI Alias | |cli.interactiveFallBack
| Config File Key | |
| Default | true |
#### configPath
| | |
| --------------- | ----------------------------------- |
| Description | Relative Path to Configuration file |
| Type | Boolean |
| CLI Name | --config-path |--cf
| CLI Alias | |cli.configPath
| Config File Key | |
| Default | See "Configuration Files" section |
#### logLevel
| | |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Description | The level of logs to report for notification purposes. Any logs of a higher level than the logLevel setting will be written to the abap-deploy.log file in the current working directory. |
| Type | "off" or "fatal" or "error" or "warn" or "info" or "debug" or "trace" |
| CLI Name | --log-level |--ll
| CLI Alias | |cli.logLevel` |
| Config File Key |
| Default | "off" |
For reporting an issue, open a BCP ticket with component CA-BAS-DPL-ABAP
For reporting a feature request, please open an influence request (https://influence.sap.com/sap/ino/#campaign/2538)