Initial commit

This commit is contained in:
Zhongwei Li
2025-11-30 08:54:59 +08:00
commit 3c342f5dfe
12 changed files with 3388 additions and 0 deletions

View File

@@ -0,0 +1,12 @@
{
"name": "sap-btp-cloud-transport-management",
"description": "Transport management for software deliverables across BTP environments. Covers transport landscapes, nodes, routes, import queues, and CI/CD integration.",
"version": "1.0.0",
"author": {
"name": "Zhongwei Li",
"email": "zhongweili@tubi.tv"
},
"skills": [
"./"
]
}

3
README.md Normal file
View File

@@ -0,0 +1,3 @@
# sap-btp-cloud-transport-management
Transport management for software deliverables across BTP environments. Covers transport landscapes, nodes, routes, import queues, and CI/CD integration.

386
SKILL.md Normal file
View File

@@ -0,0 +1,386 @@
---
name: BTP Cloud Transport Management
description: |
Comprehensive skill for SAP Cloud Transport Management service on SAP BTP. Use when setting up transport landscapes, configuring transport nodes and routes, managing import queues, deploying MTAs across Cloud Foundry environments, integrating with CI/CD pipelines, configuring ABAP environment transports, troubleshooting deployment errors, or implementing change management workflows. Covers entitlements, subscriptions, role collections, service instances, destinations, and API integrations.
license: GPL-3.0
metadata:
version: "1.0.0"
last_verified: "2025-11-27"
sap_documentation_source: "[https://help.sap.com/docs/cloud-transport-management"](https://help.sap.com/docs/cloud-transport-management")
---
# SAP Cloud Transport Management Skill
## Table of Contents
1. [Overview](#overview)
2. [Quick Start: Initial Setup](#quick-start-initial-setup)
- [Prerequisites](#prerequisites)
- [Setup Workflow](#setup-workflow)
- [Step 1: Configure Entitlements](#step-1-configure-entitlements)
- [Step 2: Subscribe to the Service](#step-2-subscribe-to-the-service)
- [Step 3: Set Up Role Collections](#step-3-set-up-role-collections)
- [Step 4: Create Service Instance and Key](#step-4-create-service-instance-and-key)
3. [Landscape Configuration](#landscape-configuration)
- [Transport Nodes](#transport-nodes)
- [Transport Routes](#transport-routes)
- [Transport Landscape Wizard](#transport-landscape-wizard)
4. [Destination Configuration](#destination-configuration)
- [Destination to TMS Service (Source Environment)](#destination-to-tms-service-source-environment)
- [MTA Deployment Destinations (Cloud Foundry)](#mta-deployment-destinations-cloud-foundry)
- [BTP ABAP Environment Destinations](#btp-abap-environment-destinations)
5. [Import Queue Operations](#import-queue-operations)
- [Import Methods](#import-methods)
- [File Upload](#file-upload)
- [Scheduling](#scheduling)
- [Automatic Import](#automatic-import)
6. [Transport Request Statuses](#transport-request-statuses)
- [Import Statuses](#import-statuses)
- [Lifecycle Statuses](#lifecycle-statuses)
7. [Troubleshooting](#troubleshooting)
- [Quick Reference: Common Errors](#quick-reference-common-errors)
- [MTA Deployment Errors](#mta-deployment-errors)
- [SAP Support](#sap-support)
8. [Security](#security)
- [Service Plans for API Access](#service-plans-for-api-access)
- [Node-Specific Restrictions](#node-specific-restrictions)
- [Malware Scanning](#malware-scanning)
9. [Integrations](#integrations)
- [CI/CD Integration](#cicd-integration)
- [Alert Notifications](#alert-notifications)
- [API Operations](#api-operations)
10. [Reference Documentation](#reference-documentation)
11. [Documentation Links](#documentation-links)
## Overview
SAP Cloud Transport Management is a service on SAP BTP that manages software deliverables between accounts of different environments by transporting them across various runtimes. It provides transparency to the audit trail of changes and enables separation of concerns between developers and operations teams.
**Supported Environments**: Cloud Foundry, Kyma, Neo (deprecated)
**Supported Content Types**:
- **MTA** (Multitarget Applications): `.mtar` files for Cloud Foundry deployments
- **BTP ABAP**: References to ABAP objects in Git repositories
- **Application Content**: Application-specific formats (`.zip`, `.rar`)
- **XSC DU**: SAP HANA XS classic delivery units
## Quick Start: Initial Setup
### Prerequisites
- Global account administrator access
- At least one SAP BTP subaccount
- Cloud Foundry environment enabled
### Setup Workflow
```
1. Configure Entitlements → 2. Subscribe to Service → 3. Set Up Roles → 4. Create Service Instance
```
### Step 1: Configure Entitlements
Navigate to: **Global Account > Entitlements > Entity Assignments > Add Service Plans**
Select "Cloud Transport Management" and choose plans:
| Plan Type | Plans Available | Purpose |
|-----------|-----------------|---------|
| Application | `standard`, `free`, `build-runtime` | UI access |
| Instance | `standard`, `export`, `transport_operator` | API/programmatic access |
> Instance plans require an active application plan. The `export` plan is for CI/CD pipelines.
### Step 2: Subscribe to the Service
1. Navigate to **Services > Service Marketplace**
2. Search for "Cloud Transport Management"
3. Select **Create** from the Actions menu
4. Choose a subscription plan (`standard`, `free`, or `build-runtime`)
5. Verify status shows "Subscribed"
### Step 3: Set Up Role Collections
**Pre-delivered Role Collections**:
- `TMS_LandscapeOperator_RC`
- `TMS_Viewer_RC`
**Available Roles**:
| Role | Capabilities |
|------|-------------|
| Administrator | Full administration for all TMS tasks |
| LandscapeOperator | Create/edit/delete nodes and routes |
| TransportOperator | Manage import queues, forward, reset, schedule |
| ImportOperator | Import all transport requests |
| ImportSelectedOperator | Import selected transport requests |
| ExportOperator | Add files, create modifiable requests |
| Viewer | Read-only access |
Assign roles: **Security > Role Collections > [Collection] > Edit > Users**
### Step 4: Create Service Instance and Key
1. Create a Cloud Foundry space in your subaccount
2. Navigate to **Services > Instances and Subscriptions > Create**
3. Select:
- Service: `Cloud Transport Management`
- Plan: `standard` (instance type)
- Runtime: `Cloud Foundry`
4. Create a service key - credentials structure:
```json
{
"uaa": {
"clientid": "sb-xxxxxx",
"clientsecret": "xxxxxx",
"url": "[https://<domain>.authentication.sap.hana.ondemand.com"](https://<domain>.authentication.sap.hana.ondemand.com")
},
"uri": "[https://transport-service-app-backend.ts.cfapps.sap.hana.ondemand.com"](https://transport-service-app-backend.ts.cfapps.sap.hana.ondemand.com")
}
```
## Landscape Configuration
### Transport Nodes
Transport nodes represent source or target endpoints of deployment processes.
**Node Types**:
- **Physical Nodes**: Actual deployment endpoints (e.g., Cloud Foundry spaces)
- **Virtual Nodes**: Placeholders for aggregation/distribution without physical deployment
**Key Configuration Fields**:
| Field | Description |
|-------|-------------|
| Name | Case-sensitive identifier (must match `sourceSystemId` for Content Agent) |
| Allow Upload to Node | Enable file uploads for local archives |
| Forward Mode | `Pre-Import` (default), `Post-Import`, `On Success`, `Manual` |
| Content Type | `MTA`, `BTP ABAP`, `Application Content`, `XSC DU` |
| Destination | Target deployment endpoint |
| Deployment Strategy | `default` or `blue-green` (MTA on CF only) |
### Transport Routes
Routes connect transport nodes. Constraint: A node can be a target for only one route but can be a source for multiple routes.
### Transport Landscape Wizard
Use for simple 2-3 node landscapes:
1. Select template (number of nodes)
2. Configure each node
3. Customize route names
4. Review and finish
## Destination Configuration
All destinations require **HTTPS**. Configure in: **SAP BTP Cockpit > Connectivity > Destinations**
### Destination to TMS Service (Source Environment)
Required for applications exporting content directly to TMS.
| Field | Value |
|-------|-------|
| Name | `TransportManagementService` (or app-specific name) |
| Type | HTTP |
| URL | Service key `uri` value |
| Authentication | OAuth2ClientCredentials |
| Client ID | Service key `uaa.clientid` |
| Client Secret | Service key `uaa.clientsecret` |
| Token Service URL | Service key `uaa.url` + `/oauth/token` |
| Additional Property | `sourceSystemId` = source node name |
### MTA Deployment Destinations (Cloud Foundry)
**Option 1: Basic Authentication (SAP ID users only)**
| Field | Value |
|-------|-------|
| URL (org/space) | `[https://deploy-service.cf.<domain>/slprot/<org>/<space>/slp`](https://deploy-service.cf.<domain>/slprot/<org>/<space>/slp`) |
| URL (space GUID) | `[https://deploy-service.cf.<domain>/slprot/<guid>/slp`](https://deploy-service.cf.<domain>/slprot/<guid>/slp`) |
| Authentication | BasicAuthentication |
| User | Platform user email with `SpaceDeveloper` role |
> Get space GUID: `cf space <space-name> --guid`
> URL-encode special characters in org/space names
**Option 2: OAuth2Password (Custom IdP support)**
| Field | Value |
|-------|-------|
| URL | Same as Basic Auth |
| Authentication | OAuth2Password |
| Client ID | `cf` |
| Client Secret | (leave empty) |
| Token Service URL | `[https://login.cf.<domain>`](https://login.cf.<domain>`) |
### BTP ABAP Environment Destinations
| Field | Value |
|-------|-------|
| URL | `[https://<instance>.abap.<region>.hana.ondemand.com/sap/opu/odata4/sap/a4c_mswc_api/srvd_a2x/sap/manage_software_components/0001/`](https://<instance>.abap.<region>.hana.ondemand.com/sap/opu/odata4/sap/a4c_mswc_api/srvd_a2x/sap/manage_software_components/0001/`) |
| Authentication | BasicAuthentication |
| User | Communication user from `SAP_COM_0948` |
## Import Queue Operations
### Import Methods
| Method | Description | Availability |
|--------|-------------|--------------|
| Import All | Sequential import of all requests in queue | All content types |
| Import Selected | Import specific requests (may cause inconsistencies) | Not BTP ABAP |
| Import Upto | Import all requests up to selected one | BTP ABAP only |
**Importable Statuses**: `Initial`, `Fatal`, `Repeatable`
### File Upload
- **Max file size**: 1 GB (500 MB on free plan)
- **Storage quota**: 50 GB standard, 500 MB free
- **Retention**: 30 days (7 days free) after final status
- **Formats**: `.mtar` (MTA), `.tgz` (XSC DU), `.zip` (Application Content)
### Scheduling
- **Patterns**: Daily (hourly, 4x/day) or Weekly (specific days/times)
- **Auto-deactivation**: After 3 consecutive fatal failures over 3+ weeks
### Automatic Import
Enable per node - immediately processes all importable requests and triggers on new arrivals.
## Transport Request Statuses
### Import Statuses
| Status | Description |
|--------|-------------|
| Initial | Added but not imported |
| Running | Import in progress |
| Succeeded | Import successful |
| Warning | Completed with warnings |
| Error | Import failed (retryable) |
| Fatal | Import failed (fatal error) |
| Skipped | Intentionally skipped (virtual nodes) |
| Repeatable | Reset for re-import |
| Deleted | Removed from queue |
| Transient | Tested and released (modifiable requests) |
### Lifecycle Statuses
- **Modifiable**: Request can be edited
- **Released**: In at least one queue with non-archived status
- **Deleted**: Deleted from all queues
- **Archived**: Cleaned up by retention policy
## Troubleshooting
### Quick Reference: Common Errors
| Error | Likely Cause | Quick Fix |
|-------|--------------|-----------|
| `Not Found` | Wrong CF domain | Match domain to `cf api` output |
| `Not Found` | Unencoded special chars | Use space GUID: `cf space <name> --guid` |
| `Forbidden` | Missing SpaceDeveloper | Add role in BTP Cockpit or CF CLI |
| `Forbidden` | Wrong IdP | Use OAuth2Password with `origin` property |
| Connection refused (ABAP) | Wrong URL pattern | Verify `SAP_COM_0948` communication arrangement URL |
| Import stuck | Non-final status | Check Transport Action Logs for root cause |
### MTA Deployment Errors
**Error**: `Not Found` during deployment
*Causes*:
1. Wrong Cloud Foundry domain in URL
2. Special characters in org/space names not URL-encoded
*Solutions*:
- Verify domain matches CF API endpoint: `cf api`
- Use space GUID instead of names
- URL-encode special characters (`+``%2B`, space → `%20`)
**Error**: `Forbidden` during deployment
*Causes*:
1. User lacks `SpaceDeveloper` role
2. User from wrong identity provider
*Solutions*:
- Verify user roles: `cf space-users <org> <space>`
- Use OAuth2Password auth for custom IdP users
### SAP Support
**Component**: `BC-CP-LCM-TMS` (Transport Management for application content)
**Required for incidents**: Region, subaccount ID, reproduction steps, transport action logs, screenshots
For detailed troubleshooting steps, error catalogs by content type, and support procedures, see `references/troubleshooting.md`.
## Security
### Service Plans for API Access
| Plan | Access Level |
|------|-------------|
| `standard` | Full API access |
| `export` | Export actions only (CI/CD) |
| `transport_operator` | Import, reset, forward, delete only |
### Node-Specific Restrictions
Use attributes to restrict roles to specific nodes:
- `TmsNodesTransportOperator`
- `TmsNodesImport`
- `TmsNodesExport`
### Malware Scanning
TMS does not perform malware scans - target applications are responsible. Exception: MTA deployment descriptors are verified.
## Integrations
### CI/CD Integration
Use SAP Continuous Integration and Delivery or Project Piper with the `export` service plan.
### Alert Notifications
Configure `ALERT_NOTIFICATION_SERVICE` destination for:
- `TmsImportFinished` / `TmsImportStarted`
- `TmsTransportRequestAdded`
- `TmsNodeImportJobDeactivated`
- `TmsStorageQuotaUsage` (85% threshold)
### API Operations
1. **File Upload**: Upload content archive
2. **Node Export**: Attach file to new request, forward to target nodes
3. **Node Upload**: Upload to specific node (CI/CD scenarios)
4. **Import operations**: Async - monitor with Get transport action
## Reference Documentation
For detailed configuration procedures, see the reference files:
- `references/initial-setup.md` - Complete setup procedures
- `references/landscape-configuration.md` - Nodes, routes, visualization, and wizard
- `references/destinations.md` - All 8 destination types with configurations
- `references/import-operations.md` - Import queue, MTA descriptors, modifiable requests
- `references/administration.md` - Service plans, backup, storage, data export
- `references/troubleshooting.md` - Error resolution guide
- `references/integrations.md` - Integration scenarios and API operations
- `references/security-roles.md` - Role and permission details
## Documentation Links
- **GitHub Docs**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management](https://github.com/SAP-docs/sap-btp-cloud-transport-management)
- **SAP Help Portal**: [https://help.sap.com/docs/cloud-transport-management](https://help.sap.com/docs/cloud-transport-management)
- **API Reference**: [https://api.sap.com/package/TmsForCloudPub/rest](https://api.sap.com/package/TmsForCloudPub/rest)
---
*Last Updated: 2025-11-22*
*Source: SAP-docs/sap-btp-cloud-transport-management*

77
plugin.lock.json Normal file
View File

@@ -0,0 +1,77 @@
{
"$schema": "internal://schemas/plugin.lock.v1.json",
"pluginId": "gh:secondsky/sap-skills:skills/sap-btp-cloud-transport-management",
"normalized": {
"repo": null,
"ref": "refs/tags/v20251128.0",
"commit": "be836d509b2fa60ec5c4f14f0ddc5604147154c9",
"treeHash": "93002496b849044e9d1a0d47837ee59b7ac9b548d40909a18a323837c0831d60",
"generatedAt": "2025-11-28T10:28:12.189977Z",
"toolVersion": "publish_plugins.py@0.2.0"
},
"origin": {
"remote": "git@github.com:zhongweili/42plugin-data.git",
"branch": "master",
"commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390",
"repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data"
},
"manifest": {
"name": "sap-btp-cloud-transport-management",
"description": "Transport management for software deliverables across BTP environments. Covers transport landscapes, nodes, routes, import queues, and CI/CD integration.",
"version": "1.0.0"
},
"content": {
"files": [
{
"path": "README.md",
"sha256": "083c373aedf036104b9ed1010b22f87d649127b8e1b4d84b290535e9d14f444e"
},
{
"path": "SKILL.md",
"sha256": "8b14ac2b329429350f0412f65c6dfa4ee4cb8c894c1b5fd67b8af881ccf006ed"
},
{
"path": "references/import-operations.md",
"sha256": "8ffe2057b499333f5026e67d6016b1b4a665992814a26c709c0949a1333dd318"
},
{
"path": "references/troubleshooting.md",
"sha256": "fb6d3066792008215960e48e773527987aa2cbb70318bc0cb2597020793c3263"
},
{
"path": "references/integrations.md",
"sha256": "d62e0146265fff35a9380b8fa3d572dddd8df6a43df4e8f4477ee2421c5087f8"
},
{
"path": "references/initial-setup.md",
"sha256": "23adc98b12aa6ebd9ab4b69717e6bcc1d9a9e687dc7306dc377ff4f9d4ea396c"
},
{
"path": "references/security-roles.md",
"sha256": "956071939e3092e48a0308c3a84ba3081163a826bdfb0dbb3d604ec09de8d9eb"
},
{
"path": "references/landscape-configuration.md",
"sha256": "b610164e8f055f9c06abf29a3490713be2c1ca7e17299d3b7ba7daf684a56093"
},
{
"path": "references/administration.md",
"sha256": "9fc262de28151ac854d2a33a56f3b73e82dd4554bc308c072988870d98e76e1e"
},
{
"path": "references/destinations.md",
"sha256": "b3db7bf1ebc78c93565abdac0ac3d1ec1157849fb613c0269b860d767cfbd421"
},
{
"path": ".claude-plugin/plugin.json",
"sha256": "66edab3108984f445569b9378ce333ccc708728257b30ef5fac726b86a97a4ce"
}
],
"dirSha256": "93002496b849044e9d1a0d47837ee59b7ac9b548d40909a18a323837c0831d60"
},
"security": {
"scannedAt": null,
"scannerVersion": null,
"flags": []
}
}

View File

@@ -0,0 +1,356 @@
# SAP Cloud Transport Management - Administration Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/50-administration](https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/50-administration)
---
## Administration Tasks Overview
Account administrators perform the following ongoing tasks:
1. Configure transport landscape (destinations, nodes, routes)
2. Grant user roles
3. Configure archiving settings
4. Set up notifications (via Alert Notification Service)
5. Plan backup strategy
6. Manage storage space
7. Update service plan
8. Monitor service activities
---
## Monitoring
### Home Screen Dashboard
Provides overview of:
- All imports (pie chart with selectable time intervals)
- Pending transports (Top n Nodes with importable requests)
- Storage usage (capacity and consumption)
- Deactivated import schedules
### Activity Logs
| Log Type | Purpose |
|----------|---------|
| Transport Action Logs | Track all transport operations |
| Landscape Action Logs | Detect configuration changes |
| Audit Logs | Security monitoring |
### Alert Notifications
Configure SAP Alert Notification Service for:
- Service actions (import start/finish, request added)
- Storage threshold warnings (85% quota)
### API-Based Monitoring
**API Endpoint**: [https://api.sap.com/api/TMS_v2/overview](https://api.sap.com/api/TMS_v2/overview)
Use for:
- Custom monitoring scripts
- Automated transport log retrieval
- Integration with external monitoring tools
### Recommended Practices
Regularly review:
1. Home screen dashboard
2. Transport action logs
3. Landscape action logs
4. Audit logs
5. Storage quota
---
## Service Plan Updates
### Supported Upgrade Paths
| Current Plan | Target Plan | Prerequisite |
|--------------|-------------|--------------|
| `free` | `standard` | `standard` application plan entitlement |
| `build-code` | `build-runtime` | `build-runtime` application plan entitlement |
| `free` | `build-runtime` | `build-runtime` application plan entitlement |
| `standard` | `build-runtime` | `build-runtime` application plan entitlement |
### Update Procedure
1. Navigate to **BTP Cockpit > Subaccount > Services > Instances and Subscriptions**
2. Expand Cloud Transport Management row (arrow control)
3. Select three-dot menu next to **Go to Application**
4. Choose **Update**
5. In **Update Subscription** dialog:
- Select target application plan
- Click **Update Subscription**
### Reference
Service plans: SAP Discovery Center Service - Cloud Transport Management
---
## Customer Data Export
### Built-In Export Functions
Three download capabilities in TMS UI:
| Export Type | Description |
|-------------|-------------|
| Transport Action Logs | Download transport-related logs and archived logs |
| MTA Extension Descriptors | Download `.mtaext` files |
| Landscape Configuration | Export nodes, routes, and properties |
### Data Handling
- Service does not modify uploaded content
- Content persisted only for deployment/import tasks
- Content removed after operations complete
- **Recommendation**: Maintain independent content repositories
### Decommissioning Export
For service termination, formal customer data export process available.
**Requirements**:
- Export must occur before purging phase
- Review Terms and Conditions for timeline
- Submit incident via component: `BC-CP-LCM-TMS`
- Subject prefix: `Customer Data Export Request`
---
## Backup Configuration
### Data Storage Locations
| System | Contents |
|--------|----------|
| PostgreSQL | Landscape configuration, transport requests, log files |
| Object Store | Uploaded files (MTAs), archived transport action logs |
### Automatic Backup
**PostgreSQL**:
- Retention: 14 days
- Restore: Datacenter level only (not individual customers)
**Object Store**:
- No backup/restore functions
### Manual Backup Options
When automatic backup insufficient:
1. **Transport logs**: Download from system
2. **MTA extension descriptors**: Download available
3. **Landscape configuration**: Export function
**Note**: Recreation of MTA from specific commit is typically feasible; accessing uploaded files post-transport usually unnecessary.
---
## Transport Action Log Archiving
Configure archiving settings for transport action logs.
### Access
Transport Action Logs > Settings (gear icon) > Configure Archiving Settings
### Default Settings
- **Archiving Frequency**: Every 13 weeks (quarterly)
- **Data Retention**: 7 years (actions older than this are archived)
- **Archived Location**: Archived Logs tab in Transport Action Logs
### Configuration Options
| Setting | Options | Default |
|---------|---------|---------|
| Mode | Archive, Delete | Archive |
| Retention Period | 1-7 years | 7 years |
| Archiving Schedule | Adjustable intervals (weekly to 52-week) | 13 weeks |
| User Anonymization | Checkbox | Disabled |
**Mode**:
- **Archive**: Moves older actions to secondary storage, then removes from database
- **Delete**: Permanently removes actions without archival
**User Data Anonymization**:
- Replaces usernames and email addresses with `***<anonymized>***`
- **Irreversible** once applied
### Implementation
1. Navigate to Transport Action Logs
2. Select settings (gear) icon
3. Adjust parameters in dialog
4. Save changes
**Note**: Archiving runs as background jobs, logged in Landscape Action Logs.
---
## Storage Management
> **Cross-reference**: For storage capacity impact on import operations, see `import-operations.md` → Storage Capacity section.
### Capacity Limits
| Plan | Total Capacity | File Limit | Default Retention |
|------|----------------|------------|-------------------|
| Standard | 50 GB | 1 GB | 30 days |
| Free | 500 MB | 500 MB | 7 days |
### Partner-Managed Edition (China/US Gov)
| Plan | Total Capacity | File Limit | Default Retention |
|------|----------------|------------|-------------------|
| Standard | 10 GB | 400 MB | 30 days |
| Free | 500 MB | 400 MB | 7 days |
### Retention Configuration
- **Standard**: Configurable 1-30 days
- **Free**: Configurable 1-7 days
- Access via **Settings > File Retention Time**
### Automatic Cleanup
Files deleted when:
- Transport requests reach final status (Deleted, Error, Skipped, Succeeded, Warning)
- Retention period elapsed since last action
Files **NOT** deleted if status is: Fatal, Initial, Repeatable, Running
### Capacity Alerts
- **Warning**: 85% capacity threshold
- **Blocked**: No uploads when maximum reached
- Enable notification via **Settings > My File Quota > Enable Notification**
### Freeing Space
- Delete unnecessary transport requests
- Reduce retention time
- Upgrade service plan
---
## Transport Action Logs
### Access
Home Screen > Transport Action Logs
### Logged Actions
- Import to Node
- File Upload
- Upload to Node
- Delete Queue Entry
- Repeat Queue Entry
- Export to Node
- Add Queue Entry
- Forward Queue Entry
### Information Columns
| Column | Description |
|--------|-------------|
| Node | Transport node name |
| Action Type | Operation performed |
| User | User who executed action |
| Status | Result status |
| End Time | Completion timestamp |
### Filtering
- Node
- Action Type
- User
- Status
- End Time (date picker)
### Additional Features
- **Include Archived**: Show archived actions
- **Refresh expired actions**: Manually refresh running import statuses
- **Download**: Plain Text or CSV (selected or all)
### Archiving
- Default: Archive actions older than 7 years every 13 weeks
- Configure via gear icon
---
## Home Screen Features
### Import Overview
- Pie chart with import data
- Selectable time intervals
- Direct navigation to Transport Action Logs
### Top n Nodes
Lists nodes with highest importable requests (Initial, Fatal, Repeatable).
Click to navigate to import queue.
### Storage Usage
Displays maximum capacity and current consumption.
### Import Schedules
Lists queues where scheduled import failed 3+ times consecutively over 3+ weeks.
Schedules auto-deactivated; requires manual reactivation.
---
## Settings Menu
### File Quota
- Storage information
- 85% capacity threshold notification option
### File Retention Time
- View/adjust retention period
- Based on service plan
### About
- Current version information
---
## User Profile Options
### Language
- Chinese
- English
- Browser default detection
### Appearance Themes
- Horizon (default)
- Belize
- Standard Light
- Standard Dark
- High Contrast Black
---
## Documentation Links
- Administration: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/administration-1fe3030.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/administration-1fe3030.md)
- Storage Capacity: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/background-information-storage-capacity-e8d5187.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/background-information-storage-capacity-e8d5187.md)
- Backup: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/configuring-backup-8d15541.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/configuring-backup-8d15541.md)
- Service Plan Update: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/updating-the-service-plan-1717e87.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/updating-the-service-plan-1717e87.md)
- Data Export: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/customer-data-export-11365bf.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/customer-data-export-11365bf.md)

289
references/destinations.md Normal file
View File

@@ -0,0 +1,289 @@
# SAP Cloud Transport Management - Destination Configuration Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/20-configure-landscape](https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/20-configure-landscape)
---
## Overview
Transport destinations contain the connection details for remote communication. They are created in the SAP BTP Cockpit of the subaccount where you subscribe to SAP Cloud Transport Management.
**Important**: SAP Cloud Transport Management only supports **HTTPS** destinations.
**Location**: SAP BTP Cockpit > Connectivity > Destinations > Create > From Scratch
---
## Destination Types
### 1. Destination to TMS Service (Source Environment)
Required when applications export content directly to TMS.
**Purpose**: Enable source environment to call TMS export API
**Fixed Names by Application**:
- SAP Cloud Integration: `TransportManagementService`
- SAP Build Work Zone: `ctms_destination`
- Other applications: Check specific documentation
| Field | Value | Notes |
|-------|-------|-------|
| Name | `TransportManagementService` | Application-dependent fixed name |
| Type | HTTP | |
| Description | Optional | |
| URL | Service key `uri` value | Addresses TMS instance |
| Proxy Type | Internet | |
| Authentication | OAuth2ClientCredentials | Required |
| Client ID | Service key `uaa.clientid` | |
| Client Secret | Service key `uaa.clientsecret` | |
| Token Service URL Type | Dedicated | |
| Token Service URL | Service key `uaa.url` + `/oauth/token` | Authentication service endpoint |
**Additional Properties**:
| Property | Value |
|----------|-------|
| `sourceSystemId` | Source transport node name |
---
### 2. MTA Deployment on Cloud Foundry - Basic Authentication
**Identity Provider Support**:
- **Default**: Authenticates against SAP Identity Service (SAP ID users only)
- **Custom IAS Tenant**: Can be enabled by SAP upon request
- When enabled: Supports only **local IAS-managed users**
- Does **NOT** support federated users (users from corporate identity providers)
- Contact SAP Support to enable custom IAS tenant authentication
| Field | Value | Notes |
|-------|-------|-------|
| Name | User-defined | |
| Type | HTTP | |
| Description | Optional | |
| Proxy Type | Internet | |
| Authentication | BasicAuthentication | |
| User | Platform user email | Must have SpaceDeveloper role |
| Password | User's password | |
**URL Options**:
**Option A - Using Organization and Space Names**:
```
[https://deploy-service.cf.<domain>/slprot/<myorg>/<myspace>/slp](https://deploy-service.cf.<domain>/slprot/<myorg>/<myspace>/slp)
```
- `<domain>`: From Cloud Foundry API endpoint (subaccount Overview)
- URL-encode special characters:
- Space → `%20`
- Comma → `%2C`
- Plus → `%2B`
- Slash → `%2F`
Example:
```
[https://deploy-service.cf.eu10-004.hana.ondemand.com/slprot/TestOrg/TestSpace/slp](https://deploy-service.cf.eu10-004.hana.ondemand.com/slprot/TestOrg/TestSpace/slp)
```
**Option B - Using Space GUID** (Recommended):
```
[https://deploy-service.cf.<domain>/slprot/<my-space-guid>/slp](https://deploy-service.cf.<domain>/slprot/<my-space-guid>/slp)
```
- Retrieve GUID: `cf space <my-space-name> --guid`
- Benefits:
- GUIDs follow standard formatting
- HTTP-compatible (no encoding needed)
- Stable even if org/space names change
Example:
```
[https://deploy-service.cf.eu10-004.hana.ondemand.com/slprot/977a24d6-2eaf-432d-a3e1-5294451551a3/slp](https://deploy-service.cf.eu10-004.hana.ondemand.com/slprot/977a24d6-2eaf-432d-a3e1-5294451551a3/slp)
```
**User Requirements**:
- Valid Cloud Foundry environment user
- `SpaceDeveloper` role in target space
- Platform user (required for multi-content deployment)
- Not subject to Data Protection and Privacy requirements
- Technical user recommended (avoids password rotation)
---
### 3. MTA Deployment on Cloud Foundry - OAuth2Password Authentication
**Use when**: Custom identity provider for platform users
**Authentication Flow**: UAA returns JWT token, used for Cloud Deployment Service API calls
| Field | Value | Notes |
|-------|-------|-------|
| Name | User-defined | |
| Type | HTTP | |
| Description | Optional | |
| URL | Same as Basic Auth options | |
| Proxy Type | Internet | |
| Authentication | OAuth2Password | |
| User | Platform user email | SpaceDeveloper role required |
| Password | User's password | |
| Client ID | `cf` | Fixed value |
| Client Secret | (empty) | Not required |
| Token Service URL | `[https://login.cf.<domain>`](https://login.cf.<domain>`) | Replace `api` with `login` from API endpoint |
**Custom Identity Provider**:
- Add `origin` property in Additional Properties
- Custom provider must be registered
- Automated logon must be enabled
---
### 4. SAP Content Agent Service Destination
**Use when**: Transporting SAP Cloud Integration or API Management content together
**Prerequisites**:
- Service instance and key created in target subaccount
- SAP Content Agent service deployed
| Field | Value |
|-------|-------|
| Name | User-defined |
| Type | HTTP |
| URL | Content Agent service URL from service key |
| Proxy Type | Internet |
| Authentication | OAuth2ClientCredentials |
| Client ID | From service key |
| Client Secret | From service key |
| Token Service URL | From service key + `/oauth/token` |
---
### 5. BTP ABAP Environment Destination
**Prerequisites**:
- Communication scenario `SAP_COM_0948` instance in target ABAP environment
- Communication system with inbound communication user
- "User ID and Password" authentication configured
| Field | Value | Notes |
|-------|-------|-------|
| Name | User-defined | |
| Type | HTTP | |
| Description | Optional | |
| Proxy Type | Internet | |
| Authentication | BasicAuthentication | |
| User | Inbound communication user from `SAP_COM_0948` | |
| Password | Communication user password | |
**URL Pattern**:
```
[https://<service-instance>.abap.<region>.hana.ondemand.com/sap/opu/odata4/sap/a4c_mswc_api/srvd_a2x/sap/manage_software_components/0001/](https://<service-instance>.abap.<region>.hana.ondemand.com/sap/opu/odata4/sap/a4c_mswc_api/srvd_a2x/sap/manage_software_components/0001/)
```
**Trust Settings**:
- Use default client truststore (SAP-provided certificates)
- Alternative: Custom certificates via destination certificate configuration
**API**: Uses `MANAGE_SOFTWARE_COMPONENTS` API with `SAP_COM_0948`, supports import of all transport requests.
---
### 6. XSC Delivery Unit Destination
**Use when**: Transporting SAP HANA XS classic delivery units
| Field | Value | Notes |
|-------|-------|-------|
| Name | User-defined | |
| Type | HTTP | |
| Proxy Type | Internet | |
| Authentication | BasicAuthentication | |
| User | Platform user | Deployment operations user |
| Password | User password | |
**URL Pattern**:
```
[https://<host>/sap/hana/xs/lm/slp/slp.xsjs](https://<host>/sap/hana/xs/lm/slp/slp.xsjs)
```
**Example**:
```
[https://demoabcd12345.hana.ondemand.com/sap/hana/xs/lm/slp/slp.xsjs](https://demoabcd12345.hana.ondemand.com/sap/hana/xs/lm/slp/slp.xsjs)
```
**Host Discovery**: Find host in SAP HANA Cockpit or Web-based Development Workbench
---
### 7. Application Content Destination
**Use when**: Transporting application-specific content formats
| Field | Value | Notes |
|-------|-------|-------|
| Name | User-defined | |
| Type | HTTP | |
| URL | Application-specified | Check application documentation |
| Authentication | OAuth2ClientCredentials | Typical; varies by application |
| Client ID | From target service instance | |
| Client Secret | From target service instance | |
| Token Service URL | Example: `[https://ts.authentication.sap.hana.ondemand.com`](https://ts.authentication.sap.hana.ondemand.com`) | |
**Note**: URL and authentication vary by application. Consult specific application documentation.
---
### 8. Neo Environment MTA Deployment (Deprecated)
> **⚠️ Legacy Only**: SAP BTP Neo environment is end-of-life (EOL). Use only for existing Neo environments still in operation. **Cloud Foundry is the standard platform for all new implementations.** Plan migration to Cloud Foundry for long-term support.
**Use when**: Transporting MTAs to existing SAP BTP Neo environments (legacy systems only)
| Field | Value | Notes |
|-------|-------|-------|
| Name | User-defined | |
| Type | HTTP | |
| Proxy Type | Internet | |
| Authentication | BasicAuthentication | |
| User | Neo platform user | Must have Operating Solutions roles |
| Password | User password | |
**URL Pattern**:
```
[https://slservice.<landscape-host>/slservice/slp/basic/<Neo-subaccount-technical-name>/slp](https://slservice.<landscape-host>/slservice/slp/basic/<Neo-subaccount-technical-name>/slp)
```
**Example**:
```
[https://slservice.eu1.hana.ondemand.com/slservice/slp/basic/a123c4567b/slp](https://slservice.eu1.hana.ondemand.com/slservice/slp/basic/a123c4567b/slp)
```
**User Requirement**: Must be valid Neo environment user with roles per "Operating Solutions" documentation.
---
## Verification
Use **Check Connection** to validate URL accessibility.
**Important**: Successful connection check doesn't guarantee deployment success. Conduct test deployments to confirm full functionality.
---
## Common Configuration Errors
| Error | Cause | Solution |
|-------|-------|----------|
| `Not Found` | Wrong CF domain | Match domain to CF API endpoint |
| `Not Found` | Special characters not encoded | Use space GUID or URL-encode |
| `Forbidden` | Missing SpaceDeveloper role | Add role to user |
| `Forbidden` | Wrong identity provider | Use OAuth2Password with correct origin |
---
## Documentation Links
- Create Transport Destinations: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-transport-destinations-c9905c1.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-transport-destinations-c9905c1.md)
- TMS Service Destination: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-destinations-to-sap-cloud-transport-management-service-795f733.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-destinations-to-sap-cloud-transport-management-service-795f733.md)
- Basic Auth: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-using-sap-cloud-deployment-service-with-basic-authentication-6b7c9d8.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-using-sap-cloud-deployment-service-with-basic-authentication-6b7c9d8.md)
- OAuth2Password: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-using-sap-cloud-deployment-service-with-oauth2password-authenticati-a26a721.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-using-sap-cloud-deployment-service-with-oauth2password-authenticati-a26a721.md)
- Content Agent Service: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-using-sap-content-agent-service-3f895ed.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-using-sap-content-agent-service-3f895ed.md)
- ABAP Environment: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-for-deployment-of-references-of-sap-btp-abap-environment-3014453.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/creating-destinations-for-deployment-of-references-of-sap-btp-abap-environment-3014453.md)

View File

@@ -0,0 +1,608 @@
# SAP Cloud Transport Management - Import Operations Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/30-using-import-queue](https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/30-using-import-queue)
---
## Import Queue Overview
The import queue is the primary interface for managing transport requests in a transport node.
### Access Methods
1. **Via Home Screen**: Transport Nodes > Select node
2. **Via Landscape Visualization**: Select node > "Go to this node's import queue"
### Queue Interface Components
**Header Section**:
- Transport node name and description
- Forward Mode assignment
- Content Type (if assigned)
- Destination (if assigned)
- Application Type and Region Key (from destination)
**Tabs**:
- **Import Queue**: Transport requests with search/filter/actions
- **Node Details**: General node information and scheduling
- **Transport Routes**: Associated routes
---
## Prerequisites
| Action | Required Role(s) |
|--------|-----------------|
| Import all requests | ImportOperator |
| Import selected requests | TransportOperator OR ImportSelectedOperator |
| Add files | Administrator OR ExportOperator |
| Forward requests | Administrator OR TransportOperator |
| Reset requests | Administrator OR TransportOperator |
| Schedule imports | TransportOperator |
| Enable automatic import | Administrator OR TransportOperator |
---
## Adding Files to Import Queue
**Prerequisites**:
- Administrator or ExportOperator role
- "Allow Upload to Node" enabled on transport node
- Supported content types: MTA, XSC DU, or Application Content
- **Not supported**: BTP ABAP manual uploads
**Constraints**:
- Maximum file size: 1 GB (500 MB on free plan)
- Subscription-level quota applies
- Automatic deletion: 30 days after import completion (unless Initial, Repeatable, or Fatal)
### Procedure
1. Select **Add** in the import queue
2. Complete the dialog:
| Field | Details |
|-------|---------|
| Transport Description | Describes the upload |
| Content Type | Auto-selected if destination exists; otherwise select |
| File | `.mtar` (MTA), `.tgz` (XSC DU), `.zip` (Application Content) |
3. Select **OK**
4. Monitor progress via upload indicator
5. Transport request automatically added to queue
---
## Import Methods
### Import All
Executes all transport requests sequentially as they appear in the queue.
**Note**: Includes requests not visible due to filter settings.
**Eligible Statuses**: Initial, Fatal, Repeatable
**Result**: Succeeded status (or error status if failed)
### Import Selected
Import specific transport requests.
**Availability**: All content types **except** BTP ABAP
**Warning**: May cause inconsistencies if dependent requests aren't imported.
### Import Upto (BTP ABAP Only)
Imports all requests up to a specific transport request.
**Behavior with identical software component references**:
- Only selected request content imports
- Previous requests receive Skipped status
**Error**: Displayed if relevant requests hidden by filters
---
## Forward Transport Requests
Manual forwarding of requests to target nodes.
**Prerequisites**:
- Administrator or TransportOperator role
- Forward Mode set to **Manual** on transport node
- Archive attached to transport request
- Status: Error, Skipped, Succeeded, or Warning
**Selection Order**: Requests forward in selection order, influencing target queue order.
### Status Transitions Upon Forwarding
| Original Status | New Status |
|-----------------|------------|
| Initial | Initial |
| Deleted, Error, Fatal, Skipped, Succeeded, Warning | Repeatable |
| Repeatable | Repeatable |
**Note**: Forwarding requires intact archive; retention periods vary by plan.
---
## Reset Transport Requests
Reset requests to repeat imports.
**Eligible Statuses**: Error, Skipped, or Succeeded
**Result**: Status changes to **Repeatable**
### Procedure
1. Select transport requests in import queue
2. Select **Reset**
3. Requests now have Repeatable status, available for re-import
---
## Schedule Imports
Automate imports at defined intervals.
**Prerequisites**:
- TransportOperator role
- Regular import allowed in queue
- Access from import queue or Landscape Visualization Properties panel
### Import Patterns
**Daily Pattern**:
- Select time interval: "Every hour", "Four times per day", etc.
**Weekly Pattern**:
- Select weekly interval: "Every week", "Every second week", etc.
- Set Execution Time (start time)
- Choose specific days
### Activation
- Schedules are **inactive** by default
- Select **Active** checkbox to enable
### Visual Indicators
- **IMPORT SCHEDULE DETECTED** button in queue header
- Shows job status and next execution time
### Auto-Deactivation Rule
Schedules automatically deactivate after:
- 3 consecutive fatal failures
- Over a period of at least 3 weeks
Affected nodes appear in **Import Schedules** section on home screen.
---
## Enable Automatic Import
Immediate processing of all importable requests when new requests arrive.
**Prerequisites**:
- Administrator or TransportOperator role
- Importing not disabled in node
**Warning**: Activating immediately processes all requests with Initial, Fatal, or Repeatable statuses.
### Effects When Enabled
**Visual**:
- "AUTOMATIC IMPORT ENABLED" label in node header
**Functional**:
- Existing importable requests processed immediately
- New requests trigger automatic background imports (Import All)
- Failed imports retried when new requests arrive
- Manual importing removed from queue
- Enable button converts to disable
**System**:
- Existing import schedules become inactive
- Action logged as "Automatic Import Enabled" = true
- Landscape Visualization shows "Import Automatically" = Yes
---
## Transport Request Statuses
### Import Statuses (in Import Queues)
| Status | Description | Importable |
|--------|-------------|------------|
| Initial | Added but not imported | Yes |
| Running | Import in progress | No |
| Succeeded | Import successful | No |
| Warning | Completed with warnings | No |
| Error | Failed due to error | No |
| Fatal | Failed due to fatal error | Yes |
| Skipped | Intentionally skipped | No |
| Repeatable | Reset for re-import | Yes |
| Deleted | Removed from queue | No |
| Transient | Tested modifiable request, then released | No |
### Lifecycle Statuses (in Transport Requests Overview)
| Status | Description |
|--------|-------------|
| Modifiable | Request can be edited |
| Released | In at least one queue with non-archived/deleted status |
| Deleted | Deleted from all queues |
| Archived | Cleaned up by retention policy |
### Lifecycle Status Transitions
```
┌─────────────┐
│ Modifiable │ ← Created
└──────┬──────┘
│ Test (optional)
┌─────────────┐
│ Released │ ← After Release or direct export
└──────┬──────┘
│ Delete from all queues
┌─────────────┐
│ Deleted │
└──────┬──────┘
│ Retention period expires
┌─────────────┐
│ Archived │
└─────────────┘
```
**Key Points**:
- Modifiable → Released: Occurs on **Release** action or when first exported via API
- Released → Deleted: Only when removed from **all** import queues
- Deleted → Archived: Automatic after retention period (7-30 days)
---
## Transport Request Details View
### Header Section
- Lifecycle status indicator
- Transport request ID
- Creation date and user
- Content type
- File size
- Testing status (modifiable requests)
- "Imports Failed" link (navigates to affected nodes)
### Tabs
**Tracking Tab** (default):
- Landscape canvas with nodes and routes
- Color-coded import status indicators
- Node info: ID and forward mode
- Context menu for node actions
- "Test Nodes" frame (modifiable only)
**Action Logs Tab**:
- Reverse chronological action listing
- Fields: node name, action type, user, status, last changed
- Anonymized users for archived actions
- Clickable rows open detailed logs
- Covers deleted nodes
**Content Tab**:
- File details: URI, name, version, filename
- Add/remove content (modifiable requests)
- Rearrange files (multiple files)
- Click file row to display MD5 hash
- Module listing for `.mtar` files
- Object metadata (software component, commit ID, branch)
### Display Options in Import Queue
**Request Fields Displayed**:
- Transport Request ID
- Mode (Final or Test)
- Description
- Owner
- Status
- Entry Node
- Timestamp
**Icons**:
- **Paperclip**: Shows attached file names; for `.mtar` shows modules
- **Log icon**: Opens log for request in current node
**MTA Operation Logs**:
- For MTA on Cloud Foundry: logs link to MTA deploy operation logs
- **Expiry**: 3 days (no CF CLI access needed)
---
## Modifiable Transport Requests
Allow efficient management of multiple files in a single request.
### Create Modifiable Request
**Prerequisites**:
- Access to transport requests overview
- ExportOperator role for source node
**Procedure**:
1. Select **Create** from overview
2. Complete dialog:
- **Source Node**: Choose from nodes with uploads enabled
- **Upload in Source Node**: If checked, imports to source; if unchecked, exports to follow-on nodes
- **Content Type**: Must match source node
- **Description**: Request details
3. Select **Create** (creates empty request)
### "Upload in Source Node" Decision Table
| Scenario | Upload in Source Node | Result |
|----------|----------------------|--------|
| Need to deploy in DEV first, then promote | ✓ Checked | Content imports to DEV, then forwards to TEST/PROD |
| Content already deployed in DEV, need to sync TEST/PROD | ☐ Unchecked | Content skips DEV, goes directly to follow-on nodes |
| Hotfix that needs to reach production ASAP | ☐ Unchecked | Bypasses source node; use with caution |
| Standard development flow (DEV→TEST→PROD) | ✓ Checked | Full pipeline deployment |
| CI/CD pipeline deploying pre-tested artifacts | ☐ Unchecked | Artifacts already validated; direct promotion |
**Important**: When unchecked, the source node serves only as the entry point; no import occurs there.
### Add Files
1. Click transport request row
2. Navigate to **Content** tab
3. Select **Add**
4. Browse and select file (must match content type)
5. Choose **Upload**
**Capabilities**:
- Multiple files without limit
- Remove and rearrange before testing
- Request invisible in import queues until Test mode
### Test Modifiable Requests
**Prerequisites**:
- Access to modifiable transport request detail view
- ImportOperator role for all target nodes
**Test Scope** (via Tracking tab):
- If "Upload in Source Node" selected: source + first-level follow-on nodes
- If not selected: only first-level follow-on nodes
**Modify Test Scope**:
- Add nodes via context menu (in-between nodes auto-included)
- Cannot select final production node
- Remove nodes via delete in context menu
**Procedure**:
1. Choose **Test** to open dialog
2. Optionally select "Import Automatically" checkbox
3. Execute **Test** and refresh
**Results**:
- Request enters queues in Initial status, Test mode
- Forward mode governs subsequent routing
- Failed imports show "Imports Failed" link
- Request remains modifiable during testing
### Release Modifiable Requests
**Prerequisites**:
- TransportOperator role minimum
**Procedure**:
1. Select **Release**
2. Confirm dialog
**Results**:
- Status transitions to **Released**
- Request becomes immutable
- First-level nodes: Initial status, Final mode
- Previously tested nodes: Transient status, Test mode (for audit)
**Important**: Objects imported during test remain in tenant - not automatically removed.
### Delete Transport Requests
Mass delete from all import queues.
**Prerequisites**: TransportOperator role for all tenant nodes
**Procedure**:
1. Select requests in Transport Requests overview
2. Confirm deletion dialog
**Results**:
- Deleted from all import queues in tenant
- Files immediately removed from storage
- **Irreversible** - cannot restore deleted requests
---
## MTA Extension Descriptors
Upload `.mtaext` files to customize MTA deployments for specific transport nodes.
**Prerequisites**:
- TransportOperator role
- Cloud Foundry transport node with Content Type "Multi-Target Application"
### File Specifications
- **Extension**: `.mtaext`
- **Purpose**: Complement deployment descriptors, customize MTA deployment per node
### Matching Conditions
MTA extension descriptors match when:
1. MTA ID matches `extends:` parameter in descriptor
2. Version binding matches imported MTA version
### Version Binding
| Binding | Behavior |
|---------|----------|
| `*` (asterisk) | Applies to all MTA versions (default) |
| Specific (e.g., `1.4.2`) | Applies only to that version |
**Note**: Cannot use wildcards (e.g., `1.4.*`). Specific bindings take precedence over universal.
### Key Constraints
- Descriptors are **NOT forwarded** to target nodes
- Must upload separately in each import queue
- Can upload before or after MTA addition to queue
### Operations
- Add via **Browse** or direct input
- View content via magnifying glass icon
- Download existing descriptors
- Remove from queue
- Check availability via paperclip icon
### Audit Trail
Upload/deletion actions logged in transport action logs.
---
## Search and Filter Options
### Search Methods
- **Description Search**: Enter any character string
- **Request ID Search**: Enter complete ID
### Filter Criteria
**Status Filter**:
- Default: Initial, Repeatable, Fatal, Running
- Succeeded/Error entries auto-delete after retention period on next import
**Date Range Filter**:
- Default: Last 7 days
- Alternative presets available
- Timestamp = time of last status change
**Custom Date Filter**:
- Use calendar picker
- Click first and last date
- Grays out preset option when active
- Delete dates to restore preset
**Reset**: Choose **Restore** to reset all filters to defaults
---
## Remove Transport Requests
Remove specific requests from a single import queue.
**Prerequisites**:
- Administrator or TransportOperator role
- Access to the specific import queue
### Procedure
1. Select transport requests
2. Execute **Remove**
### Results
- Status changes to **Deleted**
- Removed from this import queue only
- When removed from ALL queues: automatic cleanup deletes physical file
**Note**: For mass deletion across all queues, use **Delete** from Transport Requests overview.
---
## Disable Import
Temporarily prevent imports in a transport node.
**Prerequisites**:
- Administrator or TransportOperator role
- Access to the import queue
### Procedure
1. Select **Disable Import**
2. Optionally provide reason
3. Confirm
### Effects When Disabled
**Import Execution**:
- No imports executed (including scheduled)
- Other operations continue (file additions work)
**Forwarding**:
- Manual forwarding allowed
- Automatic forwarding from preceding nodes continues
**Visual Indicators**:
- Header displays **Import Disabled** message
- Hover shows disable reason
- Action logged in Landscape Action Logs
**Re-enable**: Select **Enable Import**
---
## Storage Capacity
> **Cross-reference**: For storage administration, retention configuration, and freeing space, see `administration.md` → Storage Management section.
### Limits by Plan
| Plan | Total Capacity | File Limit | Retention |
|------|----------------|------------|-----------|
| Standard | 50 GB | 1 GB | 1-30 days (default 30) |
| Free | 500 MB | 500 MB | 1-7 days (default 7) |
### Partner-Managed Edition
| Plan | Total Capacity | File Limit | Retention |
|------|----------------|------------|-----------|
| Standard | 10 GB | 400 MB | 1-30 days |
| Free | 500 MB | 400 MB | 1-7 days |
### Automatic Cleanup
Files deleted when:
- Requests reach final status (Deleted, Error, Skipped, Succeeded, Warning)
- Retention period elapsed since last action
- Exception: Deleted status requests cleaned immediately
Files **NOT** deleted if status is: Fatal, Initial, Repeatable, Running
### Capacity Alerts
- Warning at 85% usage
- No uploads when maximum reached
- Manual deletion frees space
---
## Documentation Links
- Import Queue: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/using-the-import-queue-3c4b6f3.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/using-the-import-queue-3c4b6f3.md)
- Import Requests: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/import-transport-requests-d2005d5.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/import-transport-requests-d2005d5.md)
- Add Files: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/add-files-to-import-queues-c3c87cb.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/add-files-to-import-queues-c3c87cb.md)
- Schedule Imports: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/schedule-imports-110a7a4.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/schedule-imports-110a7a4.md)
- Automatic Import: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/enable-automatic-import-9171d39.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/30-using-import-queue/enable-automatic-import-9171d39.md)
- Request Statuses: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/40-using-request-overview/statuses-of-transport-requests-3a8259e.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/40-using-request-overview/statuses-of-transport-requests-3a8259e.md)

238
references/initial-setup.md Normal file
View File

@@ -0,0 +1,238 @@
# SAP Cloud Transport Management - Initial Setup Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/10-initial-setup](https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/10-initial-setup)
---
## Prerequisites
- Global account administrator status
- Established global account with at least one SAP BTP subaccount
- Cloud Foundry environment familiarity (see "Getting Started in the Cloud Foundry Environment")
**Recommendation**: Deploy as a shared service on a central administrative subaccount to:
- Simplify role management
- Enforce strict access controls
- Avoid conflicts with SAP Cloud ALM subaccount
---
## Step 1: Configure Entitlements
**Location**: Global Account > Entitlements > Entity Assignments
### Procedure
1. Navigate to or create the target subaccount
2. Enable Cloud Foundry in the subaccount:
- In Cloud Foundry section, select **Enable**
- Enter organization name
- Choose **Create**
3. Go to **Entitlements > Entity Assignments**
4. Search for and select the target subaccount
5. Choose **Configure Entitlements**
6. Select **Add Service Plans**
7. Search for "Cloud Transport Management"
8. Select desired plans from the Service Details section
9. Click **Add [n] Service Plans**
10. **Save** the configuration
### Available Service Plans
#### Application Plans (UI Access)
| Plan | Purpose |
|------|---------|
| `build-runtime` | SAP Build ecosystem content transport via UI |
| `free` | Reduced-scope UI access for testing (500MB storage, 7-day retention) |
| `standard` | Full UI access (50GB storage, 30-day retention) |
#### Instance Plans (Programmatic/API Access)
| Plan | Authorization Level | Use Cases |
|------|---------------------|-----------|
| `standard` | Full access | Default integrations, SAP Cloud ALM, Solution Manager |
| `export` | Export actions only | File upload, node upload/export, CI/CD pipelines |
| `transport_operator` | Transport operations only | Import, reset, forward, delete actions |
### Selection Scenarios
**Scenario 1 - Local File System Archives Only**:
- Select one application plan (e.g., `standard`)
**Scenario 2 - Direct Application-to-Application Transport**:
- Select one application plan
- Select one or more instance plans for programmatic access
- Note: Instance plans require an active application plan
---
## Step 2: Subscribe to the Service
**Location**: Subaccount > Services > Service Marketplace
### Procedure
1. Navigate to the target subaccount
2. Select **Services > Service Marketplace**
3. Search for "Cloud Transport Management"
4. On the Cloud Transport Management tile, select **Actions > Create**
5. In the dialog, select a subscription plan:
- `build-runtime` (SAP Build ecosystem)
- `free`
- `standard`
- Ensure plan type is **Subscription**
6. Click **Create**
7. When the subscription dialog appears, choose **View Subscription**
8. Confirm status displays as **Subscribed**
### Post-Subscription
- Access subscriptions: **Services > Instances and Subscriptions**
- Plan upgrades available through update service plan process
---
## Step 3: Set Up Role Collections
**Location**: Subaccount > Security > Role Collections
### Pre-Delivered Role Collections
SAP provides two ready-to-use collections:
- `TMS_LandscapeOperator_RC` (LandscapeOperator role)
- `TMS_Viewer_RC` (Viewer role)
### Available Role Templates
| Role | Capabilities |
|------|-------------|
| **Administrator** | Overall administration for all SAP Cloud Transport Management tasks, manage import queues, forward requests, reset transport request statuses |
| **LandscapeOperator** | Create, edit, delete transport nodes and transport routes |
| **TransportOperator** | Remove files, forward requests, reset statuses, upload MTA descriptors, schedule imports |
| **ImportSelectedOperator** | Start import of selected requests in import queue |
| **ImportOperator** | Start import of all transport requests, test modifiable requests |
| **ExportOperator** | Add files to import queues, create modifiable transport requests |
| **Viewer** | Display-only access without landscape configuration or import capabilities |
### Setup Procedure
1. **Locate delivered roles**:
- Navigate to **Services > Instances and Subscriptions**
- Select **Cloud Transport Management > Manage Roles**
2. **Create role collections**:
- Go to **Security > Role Collections**
- Select the plus icon
- Enter collection names
3. **Assign roles to collections**:
- Return to subscription's **Roles** tab
- Select plus icon next to desired template roles
- Choose target role collections
4. **Assign collections to users**:
- Go to **Security > Role Collections**
- Select collection > **Edit > Users** tab
- Enter user data per your identity provider requirements
**Recommendation**: Add roles from the **Roles** tab of the subscription details to see all relevant template roles in one location.
---
## Step 4: Create Service Instance and Service Key
**Location**: Subaccount > Services > Instances and Subscriptions
Required for programmatic/API access.
### Procedure
1. **Select subaccount**:
- Use a central administrative subaccount (not SAP Cloud ALM subaccount)
2. **Create Cloud Foundry space**:
- Navigate to your subaccount's Cloud Foundry organization
- Create a new space with default space roles assigned
3. **Optional: Create quota plan**:
- Access **Cloud Foundry > Quota Plans > New Plan**
- Specify name and minimum of one service
- Assign plan to your created space
4. **Create service instance**:
- Navigate to **Services > Instances and Subscriptions > Create**
- Configure:
| Field | Selection |
|-------|-----------|
| Service | Cloud Transport Management |
| Plan | Instance-type plan (e.g., `standard`) |
| Runtime Environment | Cloud Foundry |
| Space | Previously created space |
| Instance Name | User-defined name |
- Note: TMS doesn't support initial JSON parameters - skip this step
5. **Generate service key**:
- From the Instances tab, select **Actions > Create Service Key**
- The resulting credentials structure:
```json
{
"uaa": {
"clientid": "sb-xxxxxx",
"clientsecret": "xxxxxx",
"url": "[https://<domain>.authentication.sap.hana.ondemand.com"](https://<domain>.authentication.sap.hana.ondemand.com")
},
"uri": "[https://transport-service-app-backend.ts.cfapps.sap.hana.ondemand.com"](https://transport-service-app-backend.ts.cfapps.sap.hana.ondemand.com")
}
```
These credentials enable API-based programmatic access and are used to configure destinations.
---
## Integrated SAP Solutions (21 Supported)
### Build & Development Platform
- Joule Studio in SAP Build
- SAP Build Apps
- SAP Build Process Automation
- SAP Build Work Zone (standard & advanced)
### Analytics & Data
- SAP Analytics Cloud
- SAP Datasphere
### Integration & APIs
- SAP Integration Suite
- SAP API Management
### Process & Automation
- SAP Digital Manufacturing
- SAP Cell and Gene Therapy Orchestration
### Enterprise Solutions
- SAP BTP ABAP environment
- SAP Mobile Services
### Domain-Specific Solutions
- SAP Asset Performance Management
- SAP Batch Release Hub for Life Sciences
- SAP Cloud for Real Estate
- SAP Entitlement Management
- SAP Excise Tax Management
- SAP Group Reporting Data Collection
- SAP Intelligent Clinical Supply Management
- SAP Risk and Assurance Management
---
## Documentation Links
- Initial Setup Overview: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/initial-setup-66fd728.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/initial-setup-66fd728.md)
- Subscribing: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/subscribing-to-cloud-transport-management-7fe10fc.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/subscribing-to-cloud-transport-management-7fe10fc.md)
- Entitlements: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/configuring-entitlements-to-sap-cloud-transport-management-13894be.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/configuring-entitlements-to-sap-cloud-transport-management-13894be.md)
- Role Collections: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/setting-up-role-collections-eb134e0.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/setting-up-role-collections-eb134e0.md)
- Service Instance: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/creating-a-service-instance-and-a-service-key-f449560.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/10-initial-setup/creating-a-service-instance-and-a-service-key-f449560.md)

309
references/integrations.md Normal file
View File

@@ -0,0 +1,309 @@
# SAP Cloud Transport Management - Integrations Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/70-integrations/integrating-the-service-7e966f7.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/70-integrations/integrating-the-service-7e966f7.md)
---
## Overview
SAP Cloud Transport Management integrates with development and change management processes through:
1. Documented partnerships with SAP BTP services
2. Customizable APIs on SAP Business Accelerator Hub
---
## Integration Scenarios
### 1. SAP Continuous Integration and Delivery
**Purpose**: Receive transports from release candidates qualified by automated pipelines
**Resources**:
- Official CI/CD service documentation
- Integration guides for embedding TMS into CI/CD jobs
- Blog posts on TMS + CI/CD pipeline integration
- Tutorial videos on DevOps with SAP BTP
**Service Plan**: Use `export` instance plan for CI/CD pipelines
---
### 2. Project Piper Integration
**Purpose**: Integrate TMS into CI/CD pipelines using Project Piper framework
**Implementation**:
- Use Project Piper's TMS integration steps
- Configure pipeline stages for transport operations
---
### 3. Hybrid Landscapes with CTS+
**Purpose**: Combine cloud and on-premise transport management
**Components**:
- CTS+ (Change and Transport System)
- Change Request Management (ChaRM)
- Hybrid environment support
---
### 4. SAP Automation Pilot
**Purpose**: Automate transport management through command catalogs
**Capabilities**:
- Manage transport nodes
- Manage transport routes
- Manage transport requests
---
### 5. SAP Solution Manager Integration
**Purpose**: Coordinate change control across systems
**Supported Features**:
- Change Request Management
- Quality Gate Management
- Controlled deployment workflows
---
### 6. SAP Cloud ALM Integration
**Purpose**: Enable change and deployment management capabilities
**Resources**:
- Blog posts on Cloud ALM interplay
- Specific scenarios (MTA transport from Neo)
---
### 7. SAP Alert Notification Service
**Purpose**: Receive alerts and notifications for TMS actions
**Setup Requirements**:
1. **Entitle Alert Notification service** in global account
2. **Create service instance** in Cloud Foundry space
3. **Create destination** named `ALERT_NOTIFICATION_SERVICE`:
| Field | Value |
|-------|-------|
| Type | HTTP |
| Proxy Type | Internet |
| Authentication | OAuth2ClientCredentials |
| URL | From Alert Notification service key |
| Client ID | From service key |
| Client Secret | From service key |
| Token Service URL | From service key |
4. **Configure destination** in each TMS-subscribed subaccount
**Notification Events**:
| Event | Description |
|-------|-------------|
| `TmsImportFinished` | Import completed |
| `TmsImportStarted` | Import started |
| `TmsTransportRequestAdded` | Request added to queue |
| `TmsNodeImportJobDeactivated` | Scheduler disabled due to failures |
| `TmsStorageQuotaUsage` | Storage exceeded 85% threshold |
**Enable Notifications**:
- **Node level**: Select "Perform Notification" when creating node
- **Storage**: Select "Enable Notification" in user profile settings
**Notification Channels**:
- Email
- Slack
- Other supported channels
**Filtering**:
- `eventType` = specific event
- `tags.nodeId` = specific transport node
**Actionable Links**: Import finished and request added notifications include links for:
- Display transport request
- Forward request
- Initiate import
---
### 8. SAP Content Agent Service
**Purpose**: Receive transport requests of Cloud Foundry content
**Flow**:
1. Content assembled in source environment
2. Exported using SAP Content Agent service
3. Transported via TMS to target environments
**Supported Content**:
- SAP Integration Suite artifacts
- API Management artifacts
---
### 9. SAP Solution Lifecycle Management
**Purpose**: Transport Neo content gathered via Solution Export Wizard
**Flow**:
1. Content gathered in Neo source
2. Exported using Solution Export Wizard
3. Transported via TMS
---
## API Integration
### Available APIs
- **Cloud Transport Management API**: Full transport operations
- **Cloud Transport Management Version Endpoint API**: Version information
**Reference**: [https://api.sap.com/package/TmsForCloudPub/rest](https://api.sap.com/package/TmsForCloudPub/rest)
---
### API Operations for Export
#### File Upload
**Purpose**: Upload content archive to TMS
**When**: First operation for file-based transport
**Returns**: File ID for subsequent operations
#### Node Export
**Purpose**: Enable transport directly from application
**Flow**:
1. Uploaded file or reference attaches to new transport request
2. Request added to import queues of follow-on nodes
**Use Case**: Direct application-to-TMS integration
#### Node Upload
**Purpose**: Upload archives to first transport node or specific subaccounts
**Use Case**: CI/CD scenarios, external archive upload
**Flow**:
1. Upload MTA to specific node
2. Request created in that node's queue
---
### API Operations for Import
| Operation | Description |
|-----------|-------------|
| Import | Import specific transport requests |
| Import All | Import all requests in node |
| Forward | Forward requests to target nodes |
| Reset | Reset request status for re-import |
| Delete | Remove requests from queues |
---
### Monitoring Operations
#### Get Transport Action
**Purpose**: Monitor async operations
**Flow**:
1. Initiate import (async operation)
2. Poll action status via Get transport action
3. Check for completion
#### Get Transport Requests
**Purpose**: Retrieve transport request details
#### Get Transport Logs
**Purpose**: Access detailed operation logs
---
### Asynchronous Processing
**Important**: Imports are typically asynchronous operations.
**Pattern**:
```
1. Initiate import operation → Returns action ID
2. Poll Get transport action with action ID
3. Check status (Running, Succeeded, Error, etc.)
4. Retrieve logs if needed
```
---
### Reference-Based Transport
**Alternative to file upload**: Transport based on reference without file upload.
**Use Cases**:
- BTP ABAP (Git repository references)
- Other reference-based content types
**Reference Contents**:
- Software component name
- Commit ID
- Branch name
- Tag name
---
## Sample Integration Workflow
### CI/CD Pipeline Integration
```
1. Build MTA in CI/CD pipeline
2. Call File Upload API with MTA
3. Call Node Export/Upload API with file ID
4. TMS creates transport request
5. Request appears in target node queue
6. Import (manual, scheduled, or automatic)
7. Deployment to target environment
```
### Application Direct Integration
```
1. User selects content for transport in application
2. Application calls TMS destination
3. TMS receives content via API
4. Transport request created
5. Forwarded to target nodes per routes
6. Operations team imports in target
```
---
## Integration Service Plans
| Plan | Use Case |
|------|----------|
| `standard` | Full integration, Cloud ALM, Solution Manager |
| `export` | CI/CD pipelines, file upload only |
| `transport_operator` | Import operations only |
---
## Documentation Links
- Integrating the Service: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/70-integrations/integrating-the-service-7e966f7.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/70-integrations/integrating-the-service-7e966f7.md)
- Alert Notifications: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/receive-notifications-for-sap-cloud-transport-management-actions-using-sap-alert-notifica-95d4fc7.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/receive-notifications-for-sap-cloud-transport-management-actions-using-sap-alert-notifica-95d4fc7.md)
- API Reference: [https://api.sap.com/package/TmsForCloudPub/rest](https://api.sap.com/package/TmsForCloudPub/rest)

View File

@@ -0,0 +1,476 @@
# SAP Cloud Transport Management - Landscape Configuration Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/20-configure-landscape](https://github.com/SAP-docs/sap-btp-cloud-transport-management/tree/main/docs/20-configure-landscape)
---
## Overview
Before transporting content between environments, configure your transport landscape:
1. Create transport destinations (target endpoints)
2. Create transport nodes (source/target points)
3. Create transport routes (connections between nodes)
---
## Transport Nodes
### Definition
Transport nodes represent source or target endpoints of deployment processes (e.g., Cloud Foundry spaces, ABAP environments).
### Node Types
#### Physical Nodes
- Reference actual source or target endpoints
- Have content type and destination assigned
- Perform actual deployments
#### Virtual Nodes
- Don't reference physical endpoints
- Serve as placeholders in hybrid scenarios
- Aggregate transport requests
- Distribute to connected nodes
- Result in "Skipped" status when imported
---
### Creating Transport Nodes
**Prerequisites**:
- Administrator or LandscapeOperator role
- Transport destinations configured
- Optional: Alert Notification service destination
**Access Points**:
- Landscape Visualization screen (plus icon)
- Transport Landscape Wizard
- Transport Nodes screen (plus icon)
---
### Node Configuration Fields
#### Basic Fields
| Field | Required | Description |
|-------|----------|-------------|
| Name | Yes | Case-sensitive identifier |
| Description | No | Additional context |
| Tags | No | Categorization (display on Transport Nodes screen only) |
**Name Requirement**: When using SAP Content Agent service, node name must match `sourceSystemId` parameter in destination.
---
#### Behavioral Fields
| Field | Default | Description |
|-------|---------|-------------|
| Allow Upload to Node | Off | Enable file uploads for local archives and API uploads |
| Perform Notification | Off | Enable alerts (requires ALERT_NOTIFICATION_SERVICE destination) |
| Controlled By SAP Solution Manager | Off | Disable manual imports; controlled via Solution Manager |
| Virtual Node | Off | No physical endpoint, content type, or imports |
---
#### Forward Mode
Controls when transport requests forward to target nodes.
| Mode | Behavior |
|------|----------|
| **Pre-Import** (default) | Forward when import starts, before importing |
| **Post-Import** | Forward after import, regardless of success |
| **On Success** | Forward only after successful import (Skipped, Succeeded, Warning) |
| **Manual** | User must select Forward button |
---
#### Content Type
Required for target nodes. Options:
| Type | Description | File Format |
|------|-------------|-------------|
| Multitarget Application (MTA) | Cloud Foundry applications | `.mtar` |
| BTP ABAP | ABAP environment references | N/A (reference-based) |
| Application Content | Application-specific content | `.zip`, application-specific |
| XSC Delivery Unit | SAP HANA XS classic | `.tgz` |
**Note**: Optional for source nodes.
---
#### Destination
Required for target nodes. Links to configured transport destination.
**Access**: Direct link to Destinations editor for creation/editing.
---
#### Deployment Strategy (MTA + Cloud Foundry Only)
| Strategy | Behavior |
|----------|----------|
| **default** | Stops old version before deploying new |
| **blue-green** | Zero-downtime deployment; testing phase auto-skipped |
**Not available**: In Transport Landscape Wizard.
---
### Node Tags
**Purpose**: Categorize and organize nodes.
**Behavior**:
- Create new tags or assign existing
- Remove via X icon
- Display only on Transport Nodes screen
- Deleted when removed from single-node association
- Deleted when associated node deleted
---
## Transport Routes
### Definition
Routes connect transport nodes, defining the flow of transport requests through the landscape.
### Constraint
- A node can be **source** for multiple routes
- A node can be **target** for only **one** route
### Creating Transport Routes
**Prerequisites**:
- Administrator or LandscapeOperator role
- Transport nodes configured
**Access Points**:
- Landscape Visualization screen (Create Route button or side menu)
- Transport Landscape Wizard
- Transport Nodes screen (plus icon)
**Procedure**:
1. Enter route name
2. Optionally add description
3. Select source node
4. Select target node
---
## Transport Landscape Wizard
### Purpose
Simplified configuration for simple transport landscapes.
### Prerequisites
- Administrator or LandscapeOperator role
- Transport destinations configured
### Procedure
**Step 1**: Select template (number of nodes)
- Example: DEV + PROD (2 nodes)
- Example: DEV + TEST + PROD (3 nodes)
**Step 2**: Click **Next**
**Step 3**: Configure each node
- Enter node details
- Reference Create Transport Nodes guidelines
**Step 4**: Customize routes (optional)
- Modify auto-generated route names
- Add descriptions
**Step 5**: Click **Next** to view generation steps
**Step 6**: Review Summary
- View created nodes and routes
- Access individual entities via links
**Step 7**: Click **Finish**
### Results
- Transport nodes created
- Transport routes established
- Options to edit entities afterward
### Limitations
- Not available:
- Deployment Strategy configuration
- Controlled By SAP Solution Manager
- Virtual Node option
---
## Sample Configuration Scenario
### Use Case
Transport content archives directly within an application (e.g., SAP Integration Suite).
### Setup
**Environments**: DEV, TEST, PROD subaccounts
**Content**: `.mtar` files (Integration Suite content)
### Configuration Elements
| Element | Location | Purpose |
|---------|----------|---------|
| Transport Destinations | SAP BTP Cockpit (TMS subaccount) | Point to TEST and PROD endpoints |
| Transport Nodes | TMS Service | DEV, TEST, PROD nodes |
| Transport Routes | TMS Service | DEV→TEST, TEST→PROD |
| Source Destination | DEV environment | Connect to TMS for export |
### Process Flow
1. User selects content for transport in DEV
2. Application exports to TMS via destination
3. Transport request created in TEST queue
4. Import to TEST (manual or automatic)
5. With Pre-Import forward: Request forwards to PROD queue
6. Import to PROD
### Alternative: Local File Upload
If no export integration in source:
1. Download archive locally
2. Upload to TMS via import queue
3. Import to target environments
---
## Landscape Visualization
### Access
Home Screen > Landscape Visualization
**Prerequisites**:
- Transport destinations configured
- Administrator or LandscapeOperator role
### Node Status Indicators
| Indicator | Meaning |
|-----------|---------|
| Red + error icon | Overall status is Error or Fatal |
| Orange + warning icon | Import ended with warnings |
| Green + success icon | All imports successful |
**Additional Icons**:
- Import Scheduler icon: Scheduled imports active
- Automatic Import icon: Auto-import enabled
- Dashed line: Virtual transport node
### Icon Bar Operations
| Function | Description |
|----------|-------------|
| Plus icon | Create new transport node |
| Route icon | Create transport route |
| Refresh | Update graph, show changes by other users |
| Export | Save landscape config to `.zip` file |
| Import | Restore landscape from exported `.zip` |
| Search | Find nodes/routes by character string |
| Legend | Show color coding |
### Export/Import Landscape Configuration
**Export**: Saves complete landscape to `.zip` file
**Import Prerequisites**:
- File unchanged and under 10 MB
- TMS version must match export version
- No duplicate nodes/routes allowed
- Cannot import partial landscapes
- Destinations require separate manual maintenance
### Context Menus
**Node Options**:
- Display node details/properties
- Access node's import queue
- Create routes from node
- Delete node
**Route Options**:
- View properties (description, source, target)
- Delete route
---
## Landscape Action Logs
Track all landscape configuration changes.
### Access
Home Screen > Landscape Action Logs
### Information Columns
| Column | Description |
|--------|-------------|
| Entity Type | Node, Route, Job, Archive, Wizard |
| Action Type | Create, Edit, Delete |
| Affected Object | Clickable link (except Wizard/Delete) |
| Changed By | User email/name |
### Filtering
Filter by:
- Entity Type
- Action Type
- Changed By
- Changed On (date picker)
### Detail View
Click row to see:
- **Old value**: Previous state
- **New value**: Current state
- Create/Delete show "None" for old/new respectively
- Import schedules use cron expression format
---
## Best Practices
### Node Naming
- Use consistent naming convention
- Include environment (DEV, TEST, PROD)
- Match `sourceSystemId` for Content Agent integrations
### Forward Mode Selection
| Scenario | Recommended Mode |
|----------|------------------|
| Standard pipeline | Pre-Import |
| Quality gates | Manual |
| Continuous deployment | On Success |
| Full visibility | Post-Import |
### Virtual Nodes
Use for:
- Aggregating requests from multiple sources
- Star topology (hub-and-spoke) configurations
- Hybrid cloud/on-premise scenarios
### Tags
Use for:
- Environment classification (Production, Non-Production)
- Team ownership
- Content type grouping
---
## Common Patterns
### Two-Node (DEV → PROD)
```
DEV ──route──> PROD
```
### Three-Node (DEV → TEST → PROD)
```
DEV ──route1──> TEST ──route2──> PROD
```
### Star Topology (Hub)
```
──route1──> PROD-EU
DEV-HUB ──route2──> PROD-US
──route3──> PROD-APAC
```
### Multi-Source
```
DEV-A ──route1──>
TEST ──route3──> PROD
DEV-B ──route2──>
```
---
## Import Failure Scenarios
Understanding how failures propagate through the landscape helps in troubleshooting and recovery.
### Failure Impact by Forward Mode
| Forward Mode | On Import Failure | Impact on Downstream Nodes |
|--------------|-------------------|---------------------------|
| Pre-Import | Failure after forwarding | Request already in downstream queues (Initial status) |
| Post-Import | Failure before forwarding | Request NOT forwarded; stays in current queue only |
| On Success | Failure prevents forwarding | Request NOT forwarded; downstream unaffected |
| Manual | N/A (user controls) | User decides when/whether to forward |
### Recovery Actions
| Scenario | Action | Result |
|----------|--------|--------|
| Import failed, request in downstream queues | Fix issue, re-import current node | Downstream nodes unaffected; import when ready |
| Import failed, request NOT forwarded | Fix issue, re-import, forward manually (if Manual mode) | Request propagates after successful import |
| Persistent failure | Reset to Repeatable status | Allows retry; original file must exist (within retention) |
### Cascade Failure Prevention
**Recommendation**: Use **On Success** forward mode for production-critical landscapes to prevent partially deployed content from reaching downstream nodes.
---
## Topology Pattern Decision Guide
Select topology based on organizational and deployment requirements.
### When to Use Each Pattern
| Pattern | Use When | Avoid When |
|---------|----------|------------|
| **Two-Node (DEV→PROD)** | Small teams, rapid deployment, non-critical apps | Regulatory compliance required, need testing stage |
| **Three-Node (DEV→TEST→PROD)** | Standard enterprise deployment, quality gates needed | Very small projects, time-critical hotfixes |
| **Star/Hub (Hub→Multiple Targets)** | Multi-region deployment, centralized control | Independent regional teams, different release cycles |
| **Multi-Source** | Multiple dev teams, feature branches | Need strict order of deployment, interdependent features |
### Topology Selection Criteria
1. **Regulatory Requirements**: Add TEST/QA nodes for audit trails
2. **Team Structure**: Multi-source for independent teams
3. **Geographic Distribution**: Star topology for multi-region
4. **Release Cadence**: Simpler topology for faster releases
5. **Risk Tolerance**: More nodes = more validation gates
---
## Documentation Links
- Configuring Landscape: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/configuring-the-landscape-3e7b042.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/configuring-the-landscape-3e7b042.md)
- About Transport Nodes: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/about-transport-nodes-7cd4a78.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/about-transport-nodes-7cd4a78.md)
- Create Nodes: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-transport-nodes-f71a4d5.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-transport-nodes-f71a4d5.md)
- Create Routes: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-transport-routes-dddb749.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/create-transport-routes-dddb749.md)
- Landscape Wizard: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/use-the-transport-landscape-wizard-f14192e.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/use-the-transport-landscape-wizard-f14192e.md)
- Sample Scenario: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/sample-configuration-scenario-22e1ed6.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/20-configure-landscape/sample-configuration-scenario-22e1ed6.md)

View File

@@ -0,0 +1,323 @@
# SAP Cloud Transport Management - Security & Roles Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/security-51939a4.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/security-51939a4.md)
---
## Role Templates
SAP Cloud Transport Management provides seven role templates for access management.
### 1. Administrator
**Scope**: Overall administration for all TMS tasks
**Capabilities**:
- Manage import queues
- Forward transport requests
- Reset transport request statuses
- Full landscape configuration
- All other role capabilities
---
### 2. LandscapeOperator
**Scope**: Transport infrastructure management
**Capabilities**:
- Create transport nodes
- Create transport routes
- Edit transport nodes and routes
- Delete transport nodes and routes
**Pre-delivered Collection**: `TMS_LandscapeOperator_RC`
---
### 3. TransportOperator
**Scope**: Import queue operations
**Capabilities**:
- Remove files from import queues
- Forward transport requests
- Reset transport request statuses
- Upload MTA extension descriptors
- Schedule imports
- Enable/disable automatic imports
**Node-Specific Attribute**: `TmsNodesTransportOperator`
---
### 4. ImportSelectedOperator
**Scope**: Selective import operations
**Capabilities**:
- Start import of selected requests in import queue
---
### 5. ImportOperator
**Scope**: Bulk import operations
**Capabilities**:
- Start import of all transport requests in import queue
- Test modifiable transport requests
**Node-Specific Attribute**: `TmsNodesImport`
---
### 6. ExportOperator
**Scope**: Export and upload operations
**Capabilities**:
- Add files to import queues
- Create modifiable transport requests
**Node-Specific Attribute**: `TmsNodesExport`
---
### 7. Viewer
**Scope**: Read-only access
**Capabilities**:
- View all TMS information
- No landscape configuration
- No import capabilities
- No modification capabilities
**Pre-delivered Collection**: `TMS_Viewer_RC`
---
## Pre-Delivered Role Collections
| Collection | Included Role |
|------------|---------------|
| `TMS_LandscapeOperator_RC` | LandscapeOperator |
| `TMS_Viewer_RC` | Viewer |
---
## Node-Specific Restrictions
Three roles support restricting operations to specific transport nodes.
### Attributes
| Role | Attribute |
|------|-----------|
| TransportOperator | `TmsNodesTransportOperator` |
| ImportOperator | `TmsNodesImport` |
| ExportOperator | `TmsNodesExport` |
### Usage
1. Create role from template
2. Add attribute with node name(s)
3. Assign to role collection
4. User can only operate on specified nodes
**Example**: Restrict TransportOperator to only DEV and TEST nodes.
---
## Service Plans for API Access
### Standard Plan
**Authorization Level**: Full access
**Capabilities**:
- All Cloud Transport Management API operations
- File upload, export, import, management
**Use Cases**:
- Default for standard integrations
- SAP Cloud ALM integration
- Solution Manager integrations
---
### Export Plan
**Authorization Level**: Export actions only
**Capabilities**:
- File upload
- Node upload
- Node export actions
**Use Cases**:
- CI/CD pipelines
- Solution Lifecycle Management
- External archive upload scenarios
**Restrictions**:
- Cannot import
- Cannot reset
- Cannot forward
- Cannot delete
---
### Transport Operator Plan
**Authorization Level**: Transport operations only
**Capabilities**:
- Import operations
- Reset operations
- Forward operations
- Delete operations
**Restrictions**:
- Cannot upload files
- Cannot export
---
## Role Assignment Matrix
| Action | Admin | Landscape | Transport | ImportSel | Import | Export | Viewer |
|--------|-------|-----------|-----------|-----------|--------|--------|--------|
| View all | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
| Create nodes | ✓ | ✓ | | | | | |
| Create routes | ✓ | ✓ | | | | | |
| Edit nodes/routes | ✓ | ✓ | | | | | |
| Delete nodes/routes | ✓ | ✓ | | | | | |
| Add files | ✓ | | | | | ✓ | |
| Import all | ✓ | | | | ✓ | | |
| Import selected | ✓ | | ✓ | ✓ | | | |
| Forward requests | ✓ | | ✓ | | | | |
| Reset requests | ✓ | | ✓ | | | | |
| Remove from queue | ✓ | | ✓ | | | | |
| Schedule imports | ✓ | | ✓ | | | | |
| Upload MTA desc | ✓ | | ✓ | | | | |
| Create modifiable | ✓ | | | | | ✓ | |
| Test modifiable | ✓ | | | | ✓ | | |
---
## Security Features
### Malware Scanning
**Policy**: TMS does not perform malware scans on uploaded archives.
**Rationale**: Archives treated as "black box" content without processing or extraction.
**Exception**: MTA deployment descriptors are verified for malware-free content.
**Responsibility**: Target applications must perform malware scanning during deployment.
---
### Encryption
**Transport**: SSL/TLS for all communications (HTTPS only)
**Storage**: Archives and MTA extension descriptors are **NOT encrypted** by persistency layer
**Mitigation**: Archives are only temporarily persisted and deleted after the configured file retention period (7-30 days depending on plan) has elapsed since the transport reached a final status (Deleted, Error, Skipped, Succeeded, Warning). See Storage Management in administration.md for retention details.
---
### Audit Logging
**Category**: `audit.security-events`
**Events Logged**:
| Event | Description |
|-------|-------------|
| Cleanup service runs | Scheduled file cleanup executed |
| Authorization check failed | API call without sufficient scope |
| Subscription plan updated | Plan changed successfully |
| Subscription plan update failed | Plan change failed |
---
### Data Protection
**Capabilities**:
- Export transport action logs
- Export MTA extension descriptors
- Export landscape configurations
**Use Cases**:
- Data protection compliance
- Decommissioning processes
- Backup procedures
---
## Backup Configuration
### PostgreSQL (Main Database)
**Contents**: Landscape configuration, transport requests, log files
**Backup**: Automatic, 14-day retention
**Restore**: Datacenter level only (not individual customers)
### Object Store
**Contents**: Uploaded files (MTAs), archived transport action logs
**Backup**: No automatic backup/restore
### Manual Export Options
1. Transport-related logs download
2. MTA extension descriptors download
3. Landscape configuration export
---
## Best Practices
### Role Assignment
1. **Principle of least privilege**: Assign minimum required roles
2. **Separation of duties**:
- Developers → ExportOperator
- Operations → TransportOperator, ImportOperator
- Admins → Administrator (sparingly)
3. **Node restrictions**: Use attributes to limit scope
### Technical Users
1. Use technical users for:
- Destination authentication
- CI/CD integrations
- Automated operations
2. Benefits:
- Avoid password rotation issues
- No personal data considerations
- Consistent authentication
### Security Monitoring
1. Review audit logs regularly
2. Monitor for authorization failures
3. Track subscription plan changes
---
## Documentation Links
- Security: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/security-51939a4.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/security-51939a4.md)
- Auditing: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/auditing-and-logging-information-9e3ee94.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/auditing-and-logging-information-9e3ee94.md)
- Data Protection: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/data-protection-and-privacy-a2749d5.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/60-security/data-protection-and-privacy-a2749d5.md)
- Backup: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/configuring-backup-8d15541.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/50-administration/configuring-backup-8d15541.md)

View File

@@ -0,0 +1,311 @@
# SAP Cloud Transport Management - Troubleshooting Reference
**Source**: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/troubleshooting-issues-when-transporting-multitarget-applications-mtas-3f7a9bc.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/troubleshooting-issues-when-transporting-multitarget-applications-mtas-3f7a9bc.md)
---
## MTA Deployment Errors
### Error 1: "Not Found" During Deployment
```
Exception during start of deployment for deploy type 'SLP_CTS': Error during client creation: Not Found
```
#### Issue 1A: Incorrect Cloud Foundry Domain
**Cause**: Destination URL points to wrong Cloud Foundry API endpoint domain.
**Details**: The URL to SAP Cloud Deployment service can use org/space names or space GUID. When the domain doesn't match the actual Cloud Foundry environment, deployment fails immediately even if connection checks succeed.
**Diagnosis**:
- Connection check succeeds but deployment fails
- Domain in URL doesn't match CF API endpoint
**Solution**:
1. Get correct CF API endpoint:
- **Via Cockpit**: Subaccount Overview > Cloud Foundry Environment tab
- **Via CLI**: `cf api`
2. Verify destination URL domain matches:
- Example wrong: `eu10.hana.ondemand.com`
- Example correct: `eu10-004.hana.ondemand.com`
3. Update destination URL with correct domain
**Reference**: SAP Cloud Foundry regions and API endpoints documentation
---
#### Issue 1B: Special Characters in Org/Space Names
**Cause**: Organization or space names contain special characters not URL-encoded.
**Affected Characters**:
- Whitespace (space)
- Slashes (`/`)
- Plus signs (`+`)
- Other non-URL-safe characters
**Details**: Special characters prevent proper URL path construction, causing deployment failure despite successful connection tests.
**Solutions**:
**Option 1: URL-Encode Special Characters**
Encode org and space names separately before combining:
| Character | Encoded |
|-----------|---------|
| Space | `%20` |
| Plus (`+`) | `%2B` |
| Comma (`,`) | `%2C` |
| Slash (`/`) | `%2F` |
| At (`@`) | `%40` |
| Ampersand (`&`) | `%26` |
Example: `dev+test``dev%2Btest`
**Option 2: Use Space GUID (Recommended)**
Replace org/space names with space GUID:
```bash
cf space <my-space-name> --guid
```
**Benefits**:
- GUIDs follow standard formatting
- HTTP-compatible (no encoding needed)
- Stable even if org/space names change
**URL Pattern**:
```
[https://deploy-service.cf.<domain>/slprot/<space-guid>/slp](https://deploy-service.cf.<domain>/slprot/<space-guid>/slp)
```
**Exception**: Avoid GUID-based URLs in automated pipelines that frequently recreate spaces for testing.
---
### Error 2: "Forbidden" During Deployment
```
Exception during start of deployment for deploy type 'SLP_CTS': Error during client creation: Forbidden
```
#### Issue 2A: User Lacks Required Privileges
**Cause**: User in destination doesn't have `SpaceDeveloper` role in target org/space.
**Details**: MTA deployment requires valid platform user with appropriate role assignments. Connection tests may succeed, but deployment fails due to insufficient permissions.
**Diagnosis**:
- Connection check succeeds
- Deployment fails with Forbidden error
**Solution**:
1. **Verify user roles via Cockpit**:
- Navigate to subaccount
- Select **Cloud Foundry > Spaces**
- Click space tile
- Review **Space Members**
2. **Verify via CLI**:
```bash
cf space-users <org> <space>
```
3. **Add missing role**:
- If user doesn't exist or lacks role, add with SpaceDeveloper permission
---
#### Issue 2B: User from Incorrect Identity Provider
**Cause**: User name exists in multiple identity providers; destination user from wrong provider or lacks role in that provider.
**Details**: When user names aren't unique across identity providers, system may authenticate against wrong provider, resulting in insufficient permissions.
**Solution**:
1. Verify user belongs to correct identity provider
2. Confirm SpaceDeveloper role in that specific provider
3. For custom IdP users: Use OAuth2Password authentication with `origin` property
**Destination Configuration for Custom IdP**:
```
Authentication: OAuth2Password
Additional Properties:
origin: <your-custom-idp-name>
```
---
## General Troubleshooting Steps
### Step 1: Check Connection
Use **Check Connection** in destination configuration.
**Note**: Success only validates URL accessibility, not deployment capability.
### Step 2: Verify User Permissions
```bash
# List space users and roles
cf space-users <org> <space>
# Check current user
cf target
```
### Step 3: Validate Destination URL
```bash
# Get API endpoint
cf api
# Get space GUID
cf space <space-name> --guid
```
### Step 4: Review Transport Action Logs
**Location**: SAP Cloud Transport Management > Transport Action Logs
**Logged Actions**:
- Import to Node
- File Upload
- Upload to Node
- Delete Queue Entry
- Repeat Queue Entry
- Export to Node
- Add Queue Entry
- Forward Queue Entry
**Columns**:
- Node
- Action Type
- User
- Status
- End Time
**Download Formats**: Plain Text, CSV (selected or all actions)
### Step 5: Check Audit Logs
**Category**: `audit.security-events`
**Events Logged**:
- Cleanup service runs
- Authorization check failures
- Subscription plan updates
---
## Common Issues by Content Type
### MTA (Multitarget Applications)
| Issue | Cause | Solution |
|-------|-------|----------|
| `Not Found` | Wrong domain | Match CF API endpoint |
| `Not Found` | Unencoded special chars | Use GUID or URL-encode |
| `Forbidden` | Missing SpaceDeveloper | Add role to user |
| `Forbidden` | Wrong IdP | Use OAuth2Password with origin |
| Deployment timeout | Large MTA | Increase timeout, check resources |
### BTP ABAP
| Issue | Cause | Solution |
|-------|-------|----------|
| Connection refused | Wrong URL | Verify `SAP_COM_0948` URL pattern |
| Authentication failed | Wrong user | Use communication user from arrangement |
| Import failed | API mismatch | Use `MANAGE_SOFTWARE_COMPONENTS` API |
### Application Content
| Issue | Cause | Solution |
|-------|-------|----------|
| Unsupported format | Wrong file type | Check application requirements |
| Deployment failed | Target service issue | Check target application logs |
---
## Import Scheduler Issues
### Auto-Deactivation
**Trigger**: 3 consecutive fatal failures over 3+ weeks
**Indicator**: Nodes appear in **Import Schedules** section on home screen
**Resolution**:
1. Investigate root cause in Transport Action Logs
2. Fix underlying issue
3. Manually reactivate schedule
---
## Storage Issues
### Quota Exceeded
**Indicator**: Warning at 85% capacity; no uploads at 100%
**Solutions**:
1. Delete unnecessary transport requests
2. Reduce retention time
3. Upgrade service plan
### Files Not Auto-Deleted
**Cause**: Requests in non-final status (Fatal, Initial, Repeatable, Running)
**Solution**: Resolve stuck requests or manually delete
---
## Support Resources
### SAP Support Component
**Component**: `BC-CP-LCM-TMS`
Use for: Transport Management for application content
### Required Information for Incidents
When submitting SAP Support tickets, include:
| Information | Details |
|-------------|---------|
| Environment | Region (EU10, US10, etc.) |
| Account | Subaccount technical identifier |
| URL | Complete URL where error occurs |
| Reproduction | Exact steps triggering the issue |
| Logs | Relevant transport action logs |
| Evidence | Screenshots or screen recordings |
### Pre-Incident Checks
Before contacting support:
1. Check SAP platform status
2. Verify installed tool versions
3. Review announced maintenance windows
4. Search SAP Community for existing solutions
### Community Resources
- Search SAP Community posts tagged "SAP Cloud Transport Management"
- Create discussion threads for peer assistance
### Documentation Links
- Monitoring: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/monitoring-and-troubleshooting-c39411d.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/monitoring-and-troubleshooting-c39411d.md)
- MTA Troubleshooting: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/troubleshooting-issues-when-transporting-multitarget-applications-mtas-3f7a9bc.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/troubleshooting-issues-when-transporting-multitarget-applications-mtas-3f7a9bc.md)
- Transport Action Logs: [https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/transport-action-logs-86319ed.md](https://github.com/SAP-docs/sap-btp-cloud-transport-management/blob/main/docs/transport-action-logs-86319ed.md)