从 GitHub 仓库触发构建

编辑页面

了解从 GitHub 仓库触发构建的流程。


For the complete documentation index, see llms.txt. Use this Use this file to discover all available pages.

Expo GitHub App 会自动使用 EAS 从我们的 GitHub 项目触发构建。我们可以根据开发团队的偏好,为任意构建配置文件触发构建。它还支持对直接推送到仓库的 git 提交或拉取请求触发构建。

在本章中,我们将配置此功能。为了演示,我们已经为示例应用准备好了一个 GitHub 仓库。

观看:如何从 GitHub 仓库触发构建
观看:如何从 GitHub 仓库触发构建

将 Expo GitHub App 连接到你的仓库,并将其配置为在推送或拉取请求时触发 EAS 构建。


1

配置 Expo GitHub 应用

要使用此功能,我们需要连接我们的 GitHub 账号:

  • 在 EAS 仪表盘中,前往 expo.dev/settings,在 Connections > GitHub 下点击 Connect。这会打开 Connect GitHub 账号页面。
  • 点击 Get started 按钮,会弹出一个窗口来授权 Expo GitHub 应用。点击 Install and Authorize
  • 应用安装到我们的 GitHub 账号后,我们需要将其链接到我们的 Expo 账号。在下一个弹窗中,点击 Link installation
  • 账号链接完成后,它会显示在 GitHub 下。

2

连接 GitHub 仓库

要启用从 GitHub 仓库触发构建,我们需要在 EAS 仪表盘中将其连接到我们的项目:

  • 在 EAS 仪表盘中,前往 Projects > 选择你的项目 > Project settings > GitHub
  • Connect a GitHub repository 下,我们会看到 GitHub 仓库列表。我们需要连接正确的那个。在示例中,我们正在查找我们的仓库 sticker-smash.
  • 对项目仓库点击 Connect

3

使用默认仓库设置

Expo GitHub 应用需要知道在哪里找到我们项目的源代码。默认情况下,它会使用 / 作为根目录。在我们的示例项目中,源代码也位于仓库根目录中。我们可以在 EAS 仪表盘中保持默认设置。

4

使用 GitHub PR 标签触发构建

Expo GitHub 应用为我们提供了多个选项来触发构建,例如:

  • 在 Builds 页面手动为特定平台触发
  • 当新的代码被推送到仓库时自动触发
  • 使用 GitHub PR 标签自动触发

为了使用 GitHub PR 标签自动触发构建,我们将使用上面列表中的第三个选项:

  • 我们需要指定将要使用的构建镜像。打开 eas.json,在 development 配置下添加 android.imageios.image 属性,并将它们的值设置为 latest

    eas.json
    { "build": { "development": { %%placeholder-start%%... %%placeholder-end%% "android": { "image": "latest" }, "ios": { "image": "latest" } } } %%placeholder-start%%... %%placeholder-end%% }
  • 接下来,让我们创建一个名为 dev 的新分支,并在应用的 JavaScript 代码中做一些修改。然后提交更改、推送分支,并从该分支创建一个 PR。

  • 在 PR 链接中,进入 Labels,创建一个名为 eas-build-all:development 的标签。

  • 点击 Create pull request 按钮创建 PR。Expo GitHub 应用将开始创建开发构建的流程。

  • 在 EAS 仪表盘的 Builds 页面,我们可以验证 Android 和 iOS 的构建都已被触发。

  • 如果我们查看某个单独构建的详情,可以在 Created by 下看到该构建是由 GitHub 应用创建的。

总结

Chapter 11: Trigger builds from a GitHub repository

我们成功将 GitHub 账号与 Expo 关联,将仓库连接到我们的 EAS 项目,并了解了如何使用 GitHub PR 标签自动创建开发构建。

了解使用 EAS 的下一步操作。

Next: EAS 之旅的下一步