SuperAPI AI 工具集

migrate

部署与运维

查看项目

更新于 10-30 11:50

技能介绍

该技能用于将 SAP BTP 的 HTML5 应用迁移到 appFront(Application Frontend)部署模型。根据提供的资料,迁移过程遵循严格的工作流,并包含硬性规则以确保源项目不被修改。

用途:将现有的 SAP BTP HTML5 应用从旧部署模型(如 SAP Neo HTML5 应用、使用 html5-apps-repo 的托管应用路由器、独立应用路由器)迁移到 appFront 部署模型。

主要能力:

  • 强制识别源类型:通过检查项目结构(如 mta.yaml、neo-mta.yaml、xs-app.json、资源类型等)确定源是 Neo、html5-apps-repo(托管应用路由器)、WorkZone 托管应用路由器还是独立应用路由器。
  • 分阶段迁移工作流:包括发现阶段(定位 MTA 根目录、复制源到 appfront-migrated/、检测源类型、询问目标运行时和认证服务、检测后端类型和工作区集成)、基线分析阶段(读取所有配置文件、提取 sap.cloud.service 用于资源命名、构建发现表)和迁移计划检查点(在用户确认前不修改 appfront-migrated/)。
  • 资源命名规则:从 manifest.json 中提取 sap.cloud.service 值,去除点号形成前缀,用于所有资源和服务命名(如资源名 P-<service>,service-name 参数 P-<service>-service)。
  • 后端处理:根据后端类型(BTP 后端、外部/本地后端、无后端)采用不同的目的地配置方法。对于 BTP 后端,在部署器模块的 parameters.config.destinations 中配置目的地并设置 forwardAuthToken: true;对于外部后端,使用目的地服务资源并在 init_data 中定义目的地(Authentication: NoAuthentication);对于无后端,需用户确认后省略相关路由。
  • 认证服务处理:读取 xs-security.json 或 ias-security.json 以及所有 xs-app.json 来决定使用 XSUAA 还是 IAS,不假设认证服务。不修改 xs-app.json 中的 authenticationType 除非用户明确确认目标认证服务。
  • 移除 html5-apps-repo 特定配置:如 HTML5Runtime_enabled: true 标志、destination-content 模块等。
  • 在线文档获取:在需要时从 SAP Help Portal 获取相关文档,但仅使用于上下文,不写入磁盘。

使用方式:该技能以技能文件形式存在,用户需在迁移会话中调用。技能会主动询问用户一系列阻塞性问题(如源类型确认、目标运行时、认证服务、后端类型、后端 URL、XSUAA 实例等),并根据回答执行迁移步骤。所有迁移工作仅在 appfront-migrated/ 目录内进行,源目录只读。

适用场景:适用于需要将 SAP BTP HTML5 应用迁移到 appFront 部署模型的开发或运维场景,特别是从 Neo 或 html5-apps-repo 迁移的情况。

限制:资料中未提供具体的收费、价格、平台兼容性细节或效果数据。技能依赖用户交互(如确认源类型、提供后端 URL 等),且某些步骤(如 WorkZone 集成)需要额外处理。迁移过程中可能遇到占位符 <<REPLACE_WITH_REAL_BACKEND_URL>> 导致构建错误,需用户替换。部分 SAP Help Portal 页面可能需要认证,无法获取内容时需回退到本地参考或训练知识。