开始定制构建

了解如何使用自定义构建扩展 EAS Build。


自定义构建允许通过在构建过程之前、期间或之后运行命令来自定义项目的构建过程。自定义构建可以从 EAS CLI 运行,也可以在 React Native CI/CD 管道中运行构建,例如使用 EAS 工作流程

¥Custom builds allow customizing the build process for your project by running commands before, during, or after the build process. Customized builds can run from EAS CLI or when running builds in a React Native CI/CD pipeline, like with EAS Workflows.

1

Create a custom build config

To get started, create directories and a file named .eas/build/hello-world.yml at the same level as eas.json. The location and name of both directories are important for EAS Build to identify that a project contains a custom build config.

Inside the hello-world.yml, you'll write your custom build config. The filename is unimportant; you can name it whatever you want. The only requirement is that the file extension uses .yml.

Add the following custom build config steps in the file:

.eas/build/hello-world.yml
build:
  name: Hello World!
  steps:
    - run: echo "Hello, world!"
    # A built-in function (optional)

In a real world scenario, you will call a built-in function to trigger the build.

2

Add config property in eas.json

To use the custom build config, add the config property in eas.json under a build profile.

Let's create a new build profile called test under build to run the custom config from the test.yml file:

eas.json
{
  "build": {
    %%placeholder-start%%... %%placeholder-end%%
    "test": {
      "config": "test.yml",
    },
}

If you wish to use separate configs for each platform, you can create separate YAML config files for Android and iOS. For example:

eas.json
{
  "build": {
    %%placeholder-start%%... %%placeholder-end%%
    "test": {
      "ios": {
        "config": "hello-ios.yml",
      },
      "android": {
        "config": "hello-android.yml",
      }
    },
}

3

Run a build to test the custom build config

To test the custom build config, run the following command:

Terminal
eas build -p android -e test

After the build is complete, you can verify that the echo "Hello World!" script was executed by checking the logs on the build's detail page.

了解更多

¥Learn more

查看示例存储库以获取更详细的示例:

¥Check out the example repository for more detailed examples:

自定义构建示例存储库

自定义 EAS 构建示例,其中包括自定义构建的示例,例如设置函数、使用环境变量、上传工件等。