mcpField
S
sap-btp-cloud-transport-management

sap-btp-cloud-transport-management

github.com/secondsky云与 DevOps480673 次安装3 周前更新
代码仓库

关于 sap-btp-cloud-transport-management

面向 SAP BTP Cloud Transport Management 配置与运维的技能,供负责跨环境交付的开发和运维团队参考。内容涵盖传输景观、导入队列、部署目标、CI/CD 与错误排查。

主要功能

  1. 01传输节点与路由配置
  2. 02导入队列及调度管理
  3. 03MTA 与应用内容传输
  4. 04部署目标和目的地设置
  5. 05CI/CD 与 API 操作参考
  6. 06传输错误排查

适用场景

  1. 01搭建跨环境传输景观
  2. 02将 MTA 部署到 Cloud Foundry 环境
  3. 03管理导入队列并安排自动导入
  4. 04排查传输或部署失败

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/secondsky/sap-skills --skill sap-btp-cloud-transport-management

安装后在 Claude Code 中输入/sap-btp-cloud-transport-management确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

README.md
agents/
openai.yaml
references/
administration.md
destinations.md
import-operations.md
initial-setup.md
integrations.md
landscape-configuration.md
security-roles.md
troubleshooting.md

详细介绍

SAP Cloud Transport Management 技能

相关技能

  • sap-btp-cloud-platform:用于设置 BTP 子账户、角色集合和 Cloud Foundry 运行时
  • sap-btp-developer-guide:用于了解已传输内容的应用交付和 CI/CD 模式
  • sap-btp-service-manager:用于服务实例、服务密钥以及 API/服务生命周期操作
  • sap-abap:当传输流包含 ABAP Environment 或由 gCTS 管理的内容时使用

适用场景

在设置传输景观、创建传输节点/路由、管理导入队列、跨环境部署 MTA、配置部署传输的目标、将传输集成到 CI/CD,或排查 TMS 导入/部署错误时,请使用此技能。

目录

  1. 概述
  2. 快速入门:初始设置
  3. 景观配置
  4. 目标配置
  5. 导入队列操作
  6. 传输请求状态
  7. 故障排除
  8. 安全性
  9. 捆绑资源
  10. 集成
  1. 参考文档
  2. 文档链接

概述

SAP Cloud Transport Management 是 SAP BTP 上的一项服务,用于在不同环境的账户之间传输软件交付物,并通过各种运行时管理这些交付物。它提供变更审计跟踪的透明度,并支持开发团队与运维团队分工协作。

支持的环境:Cloud Foundry、Kyma、Neo(已弃用)

支持的内容类型:

  • MTA(多目标应用):用于 Cloud Foundry 部署的 .mtar 文件
  • BTP ABAP:对 Git 仓库中 ABAP 对象的引用
  • 应用程序内容:特定于应用程序的格式(.zip、.rar)
  • XSC DU:SAP HANA XS classic 交付单元

快速入门:初始设置

先决条件
  • 全局账户管理员访问权限
  • 至少一个 SAP BTP 子账户
  • 已启用 Cloud Foundry 环境
设置工作流
1. Configure Entitlements → 2. Subscribe to Service → 3. Set Up Roles → 4. Create Service Instance
步骤 1:配置授权

导航至:Global Account > Entitlements > Entity Assignments > Add Service Plans

选择“Cloud Transport Management”并选择计划:

计划类型可用计划用途
Applicationstandard、free、build-runtimeUI 访问
Instancestandard、export、transport_operatorAPI/程序化访问

Instance 计划需要有效的 Application 计划。export 计划用于 CI/CD 流水线。

步骤 2:订阅服务
  1. 导航至 Services > Service Marketplace
  2. 搜索“Cloud Transport Management”
  3. 在 Actions 菜单中选择 Create
  4. 选择订阅计划(standard、free 或 build-runtime)
  5. 确认状态显示为“Subscribed”
步骤 3:设置角色集合

预置角色集合:

  • TMS_LandscapeOperator_RC
  • TMS_Viewer_RC

可用角色:

角色功能
Administrator管理所有 TMS 任务
LandscapeOperator创建、编辑和删除节点及路由
TransportOperator管理导入队列、转发、重置和计划安排
ImportOperator导入所有传输请求
ImportSelectedOperator导入选定的传输请求
ExportOperator添加文件、创建可修改的请求
Viewer只读访问

分配角色:Security > Role Collections > [Collection] > Edit > Users

步骤 4:创建服务实例和密钥
  1. 在子账户中创建 Cloud Foundry 空间
  2. 导航至 Services > Instances and Subscriptions > Create
  3. 选择:
    • 服务:Cloud Transport Management
    • 计划:standard(实例类型)
    • 运行时:Cloud Foundry
  4. 创建服务密钥——凭据结构:
{
  "uaa": {
    "clientid": "sb-xxxxxx",
    "clientsecret": "xxxxxx",
    "url": "https://<domain>.authentication.sap.hana.ondemand.com"
  },
  "uri": "https://transport-service-app-backend.ts.cfapps.sap.hana.ondemand.com"
}

Landscape 配置

传输节点

传输节点表示部署流程的源端或目标端端点。

节点类型:

  • 物理节点:实际部署端点(例如,Cloud Foundry 空间)
  • 虚拟节点:用于聚合/分发的占位符,不进行物理部署

关键配置字段:

字段说明
Name区分大小写的标识符(对于 Content Agent,必须与 sourceSystemId 匹配)
Allow Upload to Node启用本地归档文件上传
Forward ModePre-Import(默认)、Post-Import、On Success、Manual
Content TypeMTA、BTP ABAP、Application Content、XSC DU
Destination目标部署端点
Deployment Strategydefault 或 blue-green(仅限 CF 上的 MTA)
传输路由

路由用于连接传输节点。限制:一个节点只能作为一条路由的目标,但可以作为多条路由的源。

Transport Landscape 向导

适用于简单的 2–3 节点 Landscape:

  1. 选择模板(节点数量)
  2. 配置每个节点
  3. 自定义路由名称
  4. 检查并完成

Destination 配置

所有 Destination 均要求使用 HTTPS。在此处配置:SAP BTP Cockpit > Connectivity > Destinations

到 TMS 服务的 Destination(源环境)

应用直接向 TMS 导出内容时需要此配置。

字段值
NameTransportManagementService(或应用专用名称)
TypeHTTP
URL服务密钥中的 uri 值
AuthenticationOAuth2ClientCredentials
Client ID服务密钥中的 uaa.clientid
Client Secret服务密钥中的 uaa.clientsecret
Token Service URL服务密钥中的 uaa.url + /oauth/token
Additional PropertysourceSystemId = 源节点名称
MTA 部署目标(Cloud Foundry)

选项 1:基本身份验证(仅限 SAP ID 用户)

字段值
URL(组织/空间)https://deploy-service.cf.<domain>/slprot/<org>/<space>/slp
URL(空间 GUID)https://deploy-service.cf.<domain>/slprot/<guid>/slp
身份验证BasicAuthentication
用户具有 SpaceDeveloper 角色的平台用户邮箱

获取空间 GUID:cf space <space-name> --guid 对组织/空间名称中的特殊字符进行 URL 编码

选项 2:OAuth2Password(支持自定义 IdP)

字段值
URL与基本身份验证相同
身份验证OAuth2Password
客户端 IDcf
客户端密钥(留空)
令牌服务 URLhttps://login.cf.<domain>
BTP ABAP 环境目标
字段值
URLhttps://<instance>.abap.<region>.hana.ondemand.com/sap/opu/odata4/sap/a4c_mswc_api/srvd_a2x/sap/manage_software_components/0001/
身份验证BasicAuthentication
用户来自 SAP_COM_0948 的通信用户

导入队列操作

导入方法
方法描述可用范围
全部导入按顺序导入队列中的所有请求所有内容类型
导入所选项导入特定请求(可能导致不一致)不支持 BTP ABAP
导入至所选项导入所选请求之前的所有请求仅限 BTP ABAP

可导入状态:Initial、Fatal、Repeatable

文件上传
  • 最大文件大小:1 GB(免费套餐为 500 MB)
  • 存储配额:标准版 50 GB,免费版 500 MB
  • 保留期限:最终状态后 30 天(免费版为 7 天)
  • 格式:.mtar(MTA)、.tgz(XSC DU)、.zip(应用程序内容)
计划
  • 模式:每日(每小时、每天 4 次)或每周(指定日期/时间)
  • 自动停用:连续 3 周以上发生 3 次致命失败后
自动导入

按节点启用后,会立即处理所有可导入请求,并在有新请求到达时触发。

传输请求状态

导入状态
状态描述
Initial已添加但尚未导入
Running正在导入
Succeeded导入成功
Warning已完成,但有警告
Error导入失败(可重试)
Fatal导入失败(致命错误)
Skipped已主动跳过(虚拟节点)
Repeatable已重置,可重新导入
Deleted已从队列中移除
Transient已测试并释放(可修改请求)
生命周期状态
  • 可修改:可以编辑请求
  • 已释放:位于至少一个非归档状态的队列中
  • 已删除:已从所有队列中删除
  • 已归档:已由保留策略清理

故障排除

快速参考:常见错误
错误可能原因快速修复
Not FoundCF 域名错误将域名与 cf api 输出匹配
Not Found特殊字符未编码使用空间 GUID:cf space <name> --guid
Forbidden缺少 SpaceDeveloper 角色在 BTP Cockpit 或 CF CLI 中添加角色
ForbiddenIdP 错误使用带有 origin 属性的 OAuth2Password
连接被拒绝(ABAP)URL 模式错误验证 SAP_COM_0948 通信安排 URL
导入卡住状态非最终状态检查 Transport Action Logs 以查找根本原因
MTA 部署错误

错误:部署期间出现 Not Found

原因:

  1. URL 中的 Cloud Foundry 域名错误
  2. 组织/空间名称中的特殊字符未进行 URL 编码

解决方案:

  • 验证域名与 CF API 端点匹配:cf api
  • 使用空间 GUID 替代名称
  • 对特殊字符进行 URL 编码(+ → %2B,空格 → %20)

错误:部署期间出现 Forbidden

原因:

  1. 用户缺少 SpaceDeveloper 角色
  2. 用户来自错误的身份提供商

解决方案:

  • 验证用户角色:cf space-users <org> <space>
  • 对自定义 IdP 用户使用 OAuth2Password 身份验证
SAP 支持

组件:BC-CP-LCM-TMS(应用内容的传输管理)

提交事件时需要提供:区域、子账户 ID、复现步骤、传输操作日志、屏幕截图

有关详细的故障排查步骤、按内容类型分类的错误目录和支持流程,请参阅 references/troubleshooting.md。

安全

API 访问的服务计划
计划访问级别
standard完整 API 访问权限
export仅限导出操作(CI/CD)
transport_operator仅限导入、重置、转发和删除
特定节点的限制

使用属性将角色限制为特定节点:

  • TmsNodesTransportOperator
  • TmsNodesImport
  • TmsNodesExport
恶意软件扫描

TMS 不会执行恶意软件扫描,目标应用负责扫描。例外:MTA 部署描述符会经过验证。

集成

CI/CD 集成

使用 SAP Continuous Integration and Delivery 或 Project Piper,并选择 export 服务计划。

警报通知

配置 ALERT_NOTIFICATION_SERVICE 目标,以接收以下通知:

  • TmsImportFinished / TmsImportStarted
  • TmsTransportRequestAdded
  • TmsNodeImportJobDeactivated
  • TmsStorageQuotaUsage(85% 阈值)
API 操作
  1. 文件上传:上传内容归档文件
  2. 节点导出:将文件附加到新请求,并转发到目标节点
  3. 节点上传:上传到指定节点(CI/CD 场景)
  4. 导入操作:异步执行;使用 Get transport action 进行监控

参考文档

有关详细配置步骤,请参阅参考文件:


随附资源

参考文档
  • references/initial-setup.md - 完整的设置步骤
  • references/landscape-configuration.md - 节点、路由、可视化和向导
  • references/destinations.md - 全部 8 种目标类型及其配置
  • references/import-operations.md - 导入队列、MTA 描述符、可修改请求
  • references/administration.md - 服务计划、备份、存储、数据导出
  • references/troubleshooting.md - 错误解决指南
  • references/integrations.md - 集成场景和 API 操作
  • references/security-roles.md - 角色和权限详情

文档链接


最后更新:2025-11-22 来源:SAP-docs/sap-btp-cloud-transport-management

评论

支持 Markdown