基于 Bitbucket 的 CI/CD 在 Flutter 中的应用

前言

Bitbucket 是 Atlassian 最常使用的基于 git 的原始码储存库托管服务,Bitbucket 提供的一个特性是流水线功能,我们可以在这里创建用于自动化的 CI/CD 工作流。

在本文中,我们将看到如何使用 Bitbucket 的流水线功能来构建 Flutter 应用程序。

正文

准备

在开始之前,我们需要将示例 Flutter 代码上传到 bitbucket 存储库。这是一个简单的过程,相同的 git 命令也用于 Bitbucket。

对于新用户,我建议使用 Bitbucket 的客户端应用程序,命名为 Source tree。

https://www.sourcetreeapp.com

git 上传

现在,一旦你上传了你的项目,你将被介绍到下面的屏幕。

项目上传后的屏幕

让我们从管道创建开始,

我们需要在项目的根目录中创建一个 bitbucket-pipelines.yml 文件。

编写配置 yml

我们需要初始化将用于构建的 docker 映像。

image: cirrusci/flutter:latest

接下来,

添加管道关键字并添加触发器,即此管道何时运行。

我们可以在推送、请求合并或标记创建时触发管道。

我们将看到两种类型,即按下触发器,和按拉请求触发器。

push 触发

按请求 request 触发

  • 表示任何分支上的 pull 请求都会触发管道。

添加脚本

为了创建一个 Flutter 应用程序,我们通常会得到一个包,然后创建一个 apk 文件进行测试。

脚本行执行构建 apk 所需的工作。

现在我们已经准备好了,我们需要上传到回购。

为此,我们需要使用 artifact 工件关键字上传工件。

我们已经准备好推送我们的代码并运行管道了,恭喜

在构建过程中加入环境变量

对于生产应用程序,您不希望在代码中添加密钥。最好在构建期间获得那些钥匙。

我们将看看我们如何做到这一点. 。

我们需要添加存储库变量,以便在构建期间访问密钥。

链接: https://app.tango.us/app/workflow/create-repository-variable-in-bitbucket-722810f984ce489bb791c246a459df5f

我们需要使用 flutter_dotenv 包来使用. env 文件。

https://pub.dev/packages/flutter_dotenv

在这里,我创建了。使用存储库变量中存储的值添加 APP_NAME 变量。

推你的代码,你是好去!

在构建中添加标签 [可选]

我们还可以向构建中添加标记,并存储确切的代码,以便在以后引用它。

这里我们创建 changes.txt 文件并添加更改细节。

接下来,提交这些更改并创建具有当前管道构建号的 TAG。

结束语

如果本文对你有帮助,请 转发 让更多的朋友阅读。

也许这个操作只要你 3 秒钟,对我来说是一个激励,感谢。

祝你有一个美好的一天~


© 猫哥

  • 微信 ducafecat

  • https://wiki.ducafecat.tech

  • https://ducafecat.com

Last Updated:
Contributors: ducafecat