本文将指导你如何用 GitLab 配置 CI/CD pipeline。
前言
请确保先将你的 Capacitor 应用添加到 Capgo,本教程只涉及上传阶段。如果你需要将应用添加到 Capgo,可以参考这篇教程 教程.
Commit 规范
首先,你需要开始遵循 commit 规范 约定式提交 (conventional commits)` 这将帮助工具链理解如何升级版本号,学会它只需 5 分钟。

GitLab CI/CD 用于 Tag
在 GitLab 仓库根目录下创建一个 .gitlab-ci.yml 文件,内容如下
stages:
- tag
bump_version:
stage: tag
only:
- main
except:
variables:
- $CI_COMMIT_MESSAGE =~ /^chore\(release\):/
script:
- git config --global user.email "gitlab@yourdomain.com"
- git config --global user.name "GitLab CI/CD"
- git checkout $CI_COMMIT_REF_NAME
- git pull origin $CI_COMMIT_REF_NAME
- npx capacitor-standard-version
- git push origin $CI_COMMIT_REF_NAME --tags
将 “gitlab@yourdomain.com” 和 “GitLab CI/CD” 替换为脚本部分中的 GitLab 邮箱和用户名。此配置仅在推送到 main 分支时触发 job,并排除以 “chore(release):” 开头的 commit。
GitLab CI/CD 用于 Build
在 .gitlab-ci.yml 文件中为 build 添加另一个 stage:
stages:
- deploy
deploy:
stage: deploy
only:
- tags # This job will only run for tag pushes
script:
- apt-get update -qy && apt-get install -y nodejs npm
- npm install -g @capgo/cli
- npm ci
- npm run build
- npx @capgo/cli bundle upload -a $CAPGO_TOKEN -c production
variables:
FIREBASE_CONFIG: $FIREBASE_CONFIG # Define this in your GitLab project settings
environment:
name: production
请确保已将您的 Capgo API 密钥 (CAPGO_TOKEN) 作为 CI/CD 变量添加到 GitLab 项目中。在 GitLab 项目中,前往 Settings > CI/CD > Variables,添加名为 CAPGO_TOKEN 的变量,并填入您的 API 密钥值。
根据您项目的具体构建流程自定义构建脚本,例如修改 npm run build 命令。
总结
大功告成!我们在技术进阶之路上又迈出了坚实的一步。在现代软件开发中,CI/CD 是不可或缺的关键环节。希望这份指南能对大家有所帮助。
继续阅读:使用 GitLab 实现 App 的自动构建与发布
如果你正在使用 使用 GitLab 自动 build 并发布应用 规划 CI/CD 自动化,并将其与 Capgo CI/CD 用于 Capgo CI/CD 中的产品工作流, Capgo Native Build 用于 Capgo Native Builds 中的产品工作流, Capgo 集成 用于 Capgo 集成中的产品工作流, CI/CD 集成 了解 CI/CD 集成的实现细节,以及 GitHub Actions 集成 有关 GitHub Actions 集成的实现细节。