Configure SAP Cloud Integration artifact parameters using declarative YAML files.
- Overview
- Quick Start
- Configuration File Format
- Command Reference
- Examples
- Multi-Environment Deployments
- Troubleshooting
The configure command updates configuration parameters for SAP CPI artifacts and optionally deploys them.
Key Features:
- Declarative YAML-based configuration
- Batch operations for efficient parameter updates
- Optional deployment after configuration
- Multi-environment support via deployment prefixes
- Dry-run mode to preview changes
- Process single file or folder of configs
Use Cases:
- Environment promotion (DEV → QA → PROD)
- Bulk parameter updates
- Configuration as code in CI/CD pipelines
- Disaster recovery
1. Create config file (my-config.yml):
packages:
- integrationSuiteId: "MyPackage"
displayName: "My Integration Package"
artifacts:
- artifactId: "MyFlow"
displayName: "My Integration Flow"
type: "Integration"
version: "active"
deploy: true
parameters:
- key: "DatabaseURL"
value: "jdbc:mysql://localhost:3306/mydb"
- key: "APIKey"
value: "${env:API_KEY}"2. Set environment variables:
export API_KEY="your-secret-key"3. Run command:
# Preview changes
flashpipe configure --config-path ./my-config.yml --dry-run
# Apply configuration
flashpipe configure --config-path ./my-config.yml# Optional: Deployment prefix for all packages/artifacts
deploymentPrefix: "DEV_"
packages:
- integrationSuiteId: "PackageID" # Required
displayName: "Package Display Name" # Required
deploy: false # Optional: deploy all artifacts in package
artifacts:
- artifactId: "ArtifactID" # Required
displayName: "Artifact Name" # Required
type: "Integration" # Required: Integration|MessageMapping|ScriptCollection|ValueMapping
version: "active" # Optional: default "active"
deploy: true # Optional: deploy this artifact after config
parameters:
- key: "ParameterName" # Required
value: "ParameterValue" # Required
batch: # Optional batch settings
enabled: true # default: true
batchSize: 90 # default: 90| Field | Type | Required | Description |
|---|---|---|---|
integrationSuiteId |
string | Yes | Package ID in SAP CPI |
displayName |
string | Yes | Package display name |
deploy |
boolean | No | Deploy all artifacts in package (default: false) |
artifacts |
array | Yes | List of artifacts to configure |
| Field | Type | Required | Description |
|---|---|---|---|
artifactId |
string | Yes | Artifact ID in SAP CPI |
displayName |
string | Yes | Artifact display name |
type |
string | Yes | Integration, MessageMapping, ScriptCollection, or ValueMapping |
version |
string | No | Version to configure (default: "active") |
deploy |
boolean | No | Deploy after configuration (default: false) |
parameters |
array | Yes | Configuration parameters |
batch |
object | No | Batch processing settings |
| Field | Type | Required | Description |
|---|---|---|---|
key |
string | Yes | Parameter name |
value |
string | Yes | Parameter value (supports ${env:VAR} syntax) |
Reference environment variables using ${env:VARIABLE_NAME}:
parameters:
- key: "DatabasePassword"
value: "${env:DB_PASSWORD}"
- key: "OAuthSecret"
value: "${env:OAUTH_SECRET}"flashpipe configure [flags]| Flag | Short | Type | Default | Description |
|---|---|---|---|---|
--config-path |
-c |
string | required | Path to YAML file or folder |
--deployment-prefix |
-p |
string | "" |
Prefix for package/artifact IDs |
--package-filter |
string | "" |
Filter packages (comma-separated) | |
--artifact-filter |
string | "" |
Filter artifacts (comma-separated) | |
--dry-run |
bool | false |
Preview without applying | |
--deploy-retries |
int | 5 |
Deployment status check retries | |
--deploy-delay |
int | 15 |
Seconds between deployment checks | |
--parallel-deployments |
int | 3 |
Max parallel deployments | |
--batch-size |
int | 90 |
Parameters per batch request | |
--disable-batch |
bool | false |
Disable batch processing |
configure:
configPath: "./config/dev"
deploymentPrefix: "DEV_"
dryRun: false
deployRetries: 5
deployDelaySeconds: 15
parallelDeployments: 3
batchSize: 90
disableBatch: falseRun without flags:
flashpipe configureNote: CLI flags override flashpipe.yaml settings.
Update parameters without deployment:
packages:
- integrationSuiteId: "CustomerSync"
displayName: "Customer Synchronization"
artifacts:
- artifactId: "CustomerDataFlow"
displayName: "Customer Data Integration"
type: "Integration"
deploy: false
parameters:
- key: "SourceURL"
value: "https://erp.example.com/api/customers"
- key: "BatchSize"
value: "100"flashpipe configure --config-path ./config.ymlUpdate parameters and deploy:
packages:
- integrationSuiteId: "OrderProcessing"
displayName: "Order Processing"
deploy: true
artifacts:
- artifactId: "OrderValidation"
type: "Integration"
deploy: true
parameters:
- key: "ValidationRules"
value: "STRICT"flashpipe configure --config-path ./config.ymlProcess all YAML files in a folder:
configs/
├── package1.yml
├── package2.yml
└── package3.yml
flashpipe configure --config-path ./configsConfigure specific packages or artifacts:
# Specific packages
flashpipe configure --config-path ./config.yml \
--package-filter "Package1,Package2"
# Specific artifacts
flashpipe configure --config-path ./config.yml \
--artifact-filter "Flow1,Flow2"Use same config, different prefixes:
# Development
flashpipe configure --config-path ./config.yml --deployment-prefix "DEV_"
# QA
flashpipe configure --config-path ./config.yml --deployment-prefix "QA_"
# Production
flashpipe configure --config-path ./config.yml --deployment-prefix "PROD_"Environment-specific configs:
config/
├── dev/
│ └── flows.yml
├── qa/
│ └── flows.yml
└── prod/
└── flows.yml
flashpipe configure --config-path ./config/dev
flashpipe configure --config-path ./config/qa
flashpipe configure --config-path ./config/prodparameters:
- key: "ServiceURL"
value: "${env:SERVICE_URL}"
- key: "APIKey"
value: "${env:API_KEY}"# Development
export SERVICE_URL="https://dev-api.example.com"
export API_KEY="dev-key"
flashpipe configure --config-path ./config.yml
# Production
export SERVICE_URL="https://api.example.com"
export API_KEY="prod-key"
flashpipe configure --config-path ./config.ymlexport FLASHPIPE_DEBUG=true
flashpipe configure --config-path ./config.ymlflashpipe configure --config-path ./config.yml --dry-run| Issue | Solution |
|---|---|
| Config file not found | Verify path, use absolute path |
| Invalid YAML syntax | Check indentation (spaces not tabs), validate online |
| Authentication failed | Verify credentials in flashpipe.yaml |
| Artifact not found | Check ID is correct (case-sensitive), verify prefix |
| Parameter update failed | Try --disable-batch flag |
| Deployment timeout | Increase --deploy-retries and --deploy-delay |
| Environment variable not substituted | Ensure export executed before command |
The command prints detailed statistics:
═══════════════════════════════════════════════════════════════════════
CONFIGURATION SUMMARY
═══════════════════════════════════════════════════════════════════════
Configuration Phase:
Packages processed: 2
Artifacts processed: 5
Artifacts configured: 5
Parameters updated: 23
Processing Method:
Batch requests executed: 3
Individual requests used: 0
Deployment Phase:
Deployments successful: 2
Deployments failed: 0
Overall Status: ✅ SUCCESS
✅ DO:
- Use
--dry-runbefore applying changes - Version control configuration files
- Use environment variables for secrets
- Test in DEV before promoting to PROD
- Document parameters with comments
❌ DON'T:
- Commit secrets to Git
- Skip dry-run in production
- Use hardcoded credentials
- Deploy without testing first
- configure-example.yml - Complete example
- config-examples/ - Multi-file examples
- Orchestrator Command - For full artifact deployments
- OAuth Setup - Authentication configuration