跳过主要内容
CI/CD

使用GitLab自动构建和发布应用

使用GitLab免费创建自己的CI/CD管道,每次推送到main时都部署Ionic Capacitor JS应用

文章来源

马丁·多纳迪厄

作者

瓦莱里亚

审阅者

乔丹

编辑

使用GitLab自动构建和发布应用

This article will guide you on how to do CI/CD pipeline setup with GitLab.

前言

Be sure you have added your Capacitor app first to Capgo, this tutorial just focuses on the upload phase. If you need to add your app to Capgo, you can follow this 教程.

提交规范

首先,您需要遵循提交规范 上下文提交这将有助于工具理解如何升级版本号码,学习它只需5分钟。

上下文提交

GitLab CI/CD for 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 邮箱和用户名配置。该配置仅在推送主分支时触发作业,并排除以 “chore(release):” 开头的提交消息。

GitLab CI/CD for Build

为您的 .gitlab-ci.yml 文件添加另一个阶段:

    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

确保您已在 GitLab 项目中添加 CI/CD 变量,包括您的 Capgo API 密钥(CAPGO_TOKEN)。在 GitLab 中,导航到您的项目,转到设置 > CI/CD > 变量,添加一个名为 CAPGO_TOKEN 的变量,并将其值设置为您的 API 密钥。

自定义构建脚本以匹配您的项目的具体构建过程,例如修改 npm 运行构建命令。

结论

我们做到了!我们在技术之旅中又迈出了一个步伐。在现代软件开发中,CICD 是一个不可或缺的因素。因此,我希望这份指南对大家有所帮助。

继续阅读 Automatic build and release app with GitLab

如果您正在使用 Automatic build and release app with GitLab 来规划 CI/CD 自动化,连接它 Capgo CI/CD 为产品工作流程在Capgo CI/CD中 Capgo 原生构建 为产品工作流程在Capgo 原生构建中 Capgo 集成 为产品工作流程在Capgo 集成中 CI/CD 集成 为CI/CD 集成的实现细节 GitHub 动作集成 为GitHub 动作集成的实现细节

实时更新 Capacitor 应用

当 web 层 bug 活跃时,通过 Capgo 直接将修复推送给用户,而不是等待几天的 app 商店审批。用户在后台接收更新,而原生变化仍然在正常审查路径中。

来自 Martin 的人性化支持

立即开始

最新博客文章

Capgo 为您提供了创建真正专业的移动应用所需的最佳见解。