发布
发布
抢先体验
CLI 生成器处于抢先体验阶段。联系我们开始使用。
将生成的 CLI 发布到 npm、Homebrew 和 GitHub Releases。完成本页步骤后,每次标记发布都会自动构建跨平台二进制文件并发布。如需在自有基础设施上进行生成,可以自托管生成器,而非使用 Fern 的云服务。
本页假设您已具备:
- 一个已初始化的
fern文件夹,其中generators.yml已配置 CLI 生成器。参见快速开始。 - 一个已有的 GitHub 仓库用于存放生成的 CLI 源码,并已安装 Fern GitHub App。
配置输出位置
配置 GitHub 发布
Fern 通过 GitHub Actions 发布 CLI。配置 GitHub 仓库和发布模式:
generators.yml
repository 的所有者与您的 Fern 组织(传递给 fern init 的 --organization 值)无关。将其指向拥有目标仓库的 GitHub 用户或组织。
配置身份验证
选择发布到 npm 时的身份验证方式。
OIDC 身份验证(推荐)
基于 OIDC 的发布(可信发布)是最安全的选项。npm 信任您的 GitHub 仓库直接发布,无需管理令牌。
在 npmjs.com 上授权您的仓库
在 npmjs.com 上配置可信发布:
- 在 npmjs.com 上导航到您的包设置
- 找到 Trusted Publisher 部分并点击 Add trusted publisher
- 选择 GitHub Actions 作为提供商
- 填写:
- Organization or user:您的 GitHub 用户名或组织
- Repository:您的 CLI 仓库名(例如
my-cli) - Workflow filename:
ci.yml - Environment name:留空
基于令牌的身份验证
发布您的 CLI
当您创建带有版本标签的 GitHub 发布时,CLI 会自动发布:
- 运行
fern generate --group cli将更新的源码推送到 CLI 仓库 - 创建带有版本标签的 GitHub 发布(例如
v1.0.0) - CI 工作流为所有平台构建二进制文件并发布到 npm、Homebrew 和 GitHub Releases
构建目标
CI 工作流为以下平台生成静态链接的二进制文件:
npm 包使用 Node.js 启动器包装原生二进制文件。平台特定的可选依赖确保安装时仅下载正确的二进制文件。
用户安装说明
发布后,引导用户使用首选方式安装: