用途:修改远程 GitHub 仓库的 GitHub Actions 工作流文件,将其与 JFrog Artifactory 集成,用于依赖解析和产物发布。
输入:github_repos(owner/repo 列表)、project_key(JFrog 项目键)、ecosystems(npm、maven、pip、go、docker、helm 之一或多个)、oidc_provider_name(OIDC 提供方名称,无 OIDC 时为空字符串)、github_host(GitHub 主机 URL)。
主要能力:先检查 .github/workflows/,无工作流则按检测到的生态新建;在每个 job 的构建步骤前插入 jfrog/setup-jfrog-cli@v4;有 OIDC 时配置 id-token: write 与 contents: read 并使用 oidc-provider-name,无 OIDC 时使用 JF_ACCESS_TOKEN 密钥;设置 JF_PROJECT 环境变量;将 npm install/ci、npm publish、mvn install/deploy、pip install、go build/publish、docker push 等替换为对应 jf 命令(docker build 与 helm package 保持不变,helm push 改为 jf rt upload);按需添加产物上传步骤;setup-jfrog-cli@v4 会自动发布构建信息,无需显式 jf rt build-publish。
使用方式:对每个仓库执行浅克隆,检出或新建 jfrog-onboarding 分支,编辑工作流文件后提交并推送,随后提示用户发起 PR。需提醒用户在目标仓库设置变量 JF_URL,以及(非 OIDC 时)密钥 JF_ACCESS_TOKEN。
限制:自托管 GitHub Enterprise 运行器可能无法使用该 Action,此时可用 curl 安装 JFrog CLI 作为回退,或从自有 Artifactory 下载二进制;仅在 Action 不可用时使用回退方案。各生态工作流模板与密钥设置细节见 reference.md 和 github-secrets-setup.md。