

亚马逊 CodeCatalyst 不再向新买家开放。现有客户可以继续正常使用该服务。有关更多信息，请参阅 [如何从中迁移 CodeCatalyst](migration.md)。

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用工作流进行构建
<a name="build-workflow-actions"></a>

使用[CodeCatalyst 工作流程](workflow.md)，您可以构建应用程序和其他资源。

**Topics**
+ [如何构建应用程序？](#build-how-to)
+ [构建操作的益处](#build-benefits)
+ [构建操作的替代方案](#build-alternatives)
+ [添加构建操作](build-add-action.md)
+ [查看构建操作的结果](build-view-results.md)
+ [教程：将构件上传到 Amazon S3](build-deploy.md)
+ [构建和测试操作 YAML](build-action-ref.md)

## 如何构建应用程序？
<a name="build-how-to"></a>

要在中构建应用程序或资源 CodeCatalyst，请先创建一个工作流程，然后在其中指定构建操作。

*部署操作*是一个工作流构建基块，可编译源代码、运行单元测试以及生成可供部署的构件。

您可以使用 CodeCatalyst 控制台的可视化编辑器或 YAML 编辑器将生成操作添加到工作流程中。

构建应用程序或资源的步骤大致如下。

**构建应用程序（高级别任务）**

1. 在中 CodeCatalyst，您可以为要构建的应用程序**添加源代码**。有关更多信息，请参阅 [将源代码存储在项目的存储库中 CodeCatalyst](source-repositories.md)。

1. 在中 CodeCatalyst，您可以**创建工作流程**。在工作流中，您可以定义如何构建、测试和部署应用程序。有关更多信息，请参阅 [入门工作流](workflows-getting-started.md)。

1. （可选）在工作流中，您可以**添加触发器**，该触发器指示将导致工作流自动启动的事件。有关更多信息，请参阅[使用触发器自动启动工作流运行](workflows-add-trigger.md)

1. 在工作流中，您可以添加**构建操作**来编译和打包应用程序或资源源代码。（可选）如果您不希望将测试操作或部署操作用于这些目的，也可以让构建操作运行单元测试、生成报告和部署应用程序。有关测试操作和部署操作的更多信息，请参阅[添加构建操作](build-add-action.md)。

1. （可选）在工作流中，您可以**添加测试操作**和**部署操作**，来测试和部署您的应用程序或资源。您可以从多个预先配置的操作中进行选择，将应用程序部署到不同的目标，例如 Amazon ECS。有关更多信息，请参阅[使用工作流进行测试使用工作流进行测试](test-workflow-actions.md)和[使用工作流进行部署使用工作流进行部署](deploy.md)。

1. 您可以手动**启动工作流**，也可以通过触发器自动启动工作流。该工作流按顺序运行构建、测试和部署操作，以便构建和测试您的应用程序和资源，并将其部署到目标。有关更多信息，请参阅 [手动启动工作流运行](workflows-manually-start.md)。

## 构建操作的益处
<a name="build-benefits"></a>

在工作流中使用构建操作有以下益处：
+ **完全托管** – 构建操作可消除设置、修补、更新和管理自己的编译服务器的需要。
+ **按需** – 构建操作可以按需扩展，以满足您的构建需求。您只需为使用的构建分钟数付费。有关更多信息，请参阅 [配置计算和运行时映像](workflows-working-compute.md)。
+ **开箱即**用 — CodeCatalyst 包括预先打包的运行时环境 Docker 镜像，这些镜像用于运行所有工作流程操作，包括构建操作。这些图像预先配置了用于构建应用程序（例如， AWS CLI 和 Node.js）的有用工具。您可以配置 CodeCatalyst 为使用从公共或私有注册表提供的构建映像。有关更多信息，请参阅 [指定运行时环境映像](build-images.md)。

## 构建操作的替代方案
<a name="build-alternatives"></a>

如果您使用生成操作来部署应用程序，请考虑改用 CodeCatalyst*部署操作*。部署操作会执行 behind-the-scenes配置，否则如果您使用的是构建操作，则必须手动编写这些配置。有关可用的部署操作的更多信息，请参阅[部署操作列表](deploy.md#deploy-concepts-action-supported)。

您也可以使用 AWS CodeBuild 来构建应用程序。有关更多信息，请参阅[什么是 CodeBuild？](https://docs.aws.amazon.com/codebuild/latest/userguide/welcome.html)。