关于 deploying-ui-bundle
面向 Salesforce UI bundle 项目的部署工作流技能,规定组织认证、构建、元数据部署、权限分配、可选数据导入及 GraphQL schema 生成的顺序。
主要功能
- 01认证目标组织
- 02构建 UI bundle
- 03部署元数据并配置访问权限
- 04经确认后导入计划数据
- 05获取 GraphQL schema 并生成类型
适用场景
- 01将 UI bundle 更新部署到 Salesforce 组织
- 02获取 schema 前部署元数据并分配权限
- 03部署后刷新 GraphQL 类型
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ forcedotcom/ sf-skills --skill deploying-ui-bundle安装后在 Claude Code 中输入/deploying-ui-bundle确认已加载。
详细介绍
部署 UI Bundle
部署到 Salesforce 组织时,操作顺序至关重要。以下是规范流程。
步骤 1:组织身份验证
检查组织是否已连接。如果没有,请进行身份验证。后续所有步骤都需要经过身份验证的组织。
步骤 2:部署前构建 UI Bundle
安装依赖项并构建 UI Bundle,以生成 dist/。部署 UI Bundle 实体前必须完成此步骤。
适用时机:部署 UI Bundle,且 dist/ 缺失或源代码已更改时。
步骤 3:部署元数据
先检查是否存在清单(manifest/package.xml 或 package.xml)。如果存在,请使用清单进行部署;如果不存在,则部署项目中的所有元数据。
部署对象、布局、权限集、Apex 类、UI Bundle 及所有其他元数据。必须在获取架构之前完成部署,因为架构反映的是组织当前状态。
步骤 4:部署后配置
部署不代表已分配。部署后:
- 权限集 / 权限集组 — 将其分配给用户,使用户能够访问自定义对象和字段。这是 GraphQL 内省返回正确架构的必要条件。
- 配置文件 — 确保用户使用正确的配置文件。
- 其他配置 — 命名凭据、已连接应用、自定义设置、流程激活。
主动操作:成功部署后,从 force-app/main/default/permissionsets/ 中发现权限集,并逐一分配(或询问用户)。
步骤 5:导入数据(可选)
仅当 data/data-plan.json 存在时执行。删除操作按计划顺序的逆序运行(先子项,后父项)。导入使用 Anonymous Apex,并启用重复规则保存。
导入或清理数据前,务必先询问用户。
步骤 6:GraphQL 架构和代码生成
- 设置默认组织
- 获取架构(GraphQL 内省)——在项目根目录写入
schema.graphql - 生成类型(代码生成从本地读取架构)
适用时机:架构缺失,或自上次获取后元数据 / 权限已更改时。
步骤 7:最终构建 UI Bundle
如果步骤 2 中尚未构建 UI Bundle,则在此构建。
概要:交互顺序
- 检查组织 / 进行身份验证
- 构建 UI Bundle(如果要部署 UI Bundle)
- 部署元数据
- 分配权限并进行配置
- 导入数据(如果存在数据计划,需先征得用户确认)
- 获取 GraphQL 架构并运行代码生成
- 构建 UI Bundle(如有需要)
关键规则
- 获取架构之前部署元数据——只有部署后才能看到自定义对象 / 字段
- 获取架构之前分配权限——用户可能没有自定义字段的 FLS
- 每次部署更改对象、字段或权限的元数据后,都要重新获取架构并运行代码生成
- 绝不默默跳过权限集分配或数据导入——要么执行,要么询问用户
部署后检查清单
每次成功部署元数据后:
- 发现并分配权限集(或询问用户)
- 如果存在
data/data-plan.json,询问用户是否要导入数据 - 从 UI Bundle 目录重新获取架构并运行代码生成
评论
支持 Markdown