使用工作流进行构建、测试和部署 - Amazon CodeCatalyst

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

使用工作流进行构建、测试和部署

CodeCatalyst开发环境中编写应用程序代码并将其推送到CodeCatalyst 源存储库后,就可以部署它了。可以通过工作流自动执行此操作。

工作流是一个自动化过程,它描述了如何在持续集成和持续交付(CI/CD)系统中构建、测试和部署代码。工作流定义了在工作流运行期间要执行的一系列步骤,也称为操作。工作流还定义了促使工作流启动的事件或触发器。要设置工作流程,您可以使用 CodeCatalyst 控制台的可视化或 YAML 编辑器创建工作流程定义文件

提示

要快速了解如何在项目中使用工作流,请使用蓝图创建项目。每个蓝图都部署了一个可以正常运行的工作流,您可以对工作流进行查看、运行和试验。

关于工作流定义文件

工作流定义文件是描述您的工作流的 YAML 文件。默认情况下,该文件存储在源存储库根目录下的 ~/.codecatalyst/workflows/ 文件夹中。该文件的扩展名可以为 .yml 或 .yaml,并且扩展名必须小写。

下面是一个简单的工作流定义文件示例。我们将在下表中逐行解释该示例。

Name: MyWorkflow SchemaVersion: 1.0 RunMode: QUEUED Triggers: - Type: PUSH Branches: - main Actions: Build: Identifier: aws/build@v1 Inputs: Sources: - WorkflowSource Configuration: Steps: - Run: docker build -t MyApp:latest .
描述
Name: MyWorkflow

指定工作流的名称。有关 Name 属性的更多信息,请参阅顶级属性

SchemaVersion: 1.0

指定工作流架构版本。有关 SchemaVersion 属性的更多信息,请参阅顶级属性

RunMode: QUEUED

表示如何 CodeCatalyst 处理多次运行。有关运行模式的更多信息,请参阅配置运行的排队行为

Triggers:

指定将导致工作流运行启动的逻辑。有关触发器的更多信息,请参阅使用触发器自动启动工作流运行

- Type: PUSH Branches: - main

指示只要向默认源存储库的 main 分支推送代码,工作流就必须启动。有关工作流源的更多信息,请参阅将源存储库连接到工作流

Actions:

定义工作流运行期间要执行的任务。在此示例中,Actions 部分定义一个名为 Build 的操作。有关操作的更多信息,请参阅配置工作流操作

Build:

定义 Build 操作的属性。有关构建操作的更多信息,请参阅使用工作流进行构建

Identifier: aws/build@v1

为构建操作指定唯一的硬编码标识符。

Inputs: Sources: - WorkflowSource

指示构建操作应在 WorkflowSource 源存储库中查找完成处理所需的文件。有关更多信息,请参阅 将源存储库连接到工作流

Configuration:

包含特定于构建操作的配置属性。

Steps: - Run: docker build -t MyApp:latest .

告诉构建操作构建名为 MyApp 的 Docker 映像并使用 latest 标记。

有关工作流定义文件中所有可用属性的完整列表,请参阅工作流 YAML 定义

使用 CodeCatalyst 控制台的视觉编辑器和 YAML 编辑器

要创建和编辑工作流程定义文件,您可以使用首选编辑器,但我们建议使用 CodeCatalyst 控制台的可视化编辑器或 YAML 编辑器。这些编辑器提供有用的文件验证功能,有助于确保 YAML 属性名称、值、嵌套、间距、大小写等正确无误。

下图显示了可视化编辑器中的工作流。可视化编辑器为您提供了一个完整的用户界面,您可以通过该界面创建和配置工作流定义文件。可视化编辑器包括一个显示工作流主要组件的工作流程图(1)和一个配置区域(2)。

工作流可视化编辑器

您也可以使用 YAML 编辑器,如下图所示。使用 YAML 编辑器粘贴大型代码块(例如教程中的代码块),或添加可视化编辑器不提供的高级属性。

工作流 YAML 编辑器

您可以从可视化编辑器切换到 YAML 编辑器,查看您的配置对底层 YAML 代码的影响。

发现工作流

您可以在工作流摘要页面查看您的工作流,以及您在同一项目中设置的其它工作流。

下图显示了工作流摘要页面。它包含两个工作流程:BuildToProdUnitTests。您可以看到两者都运行过几次。您可以选择最近的运行以快速查看运行历史记录,也可以选择工作流名称以查看工作流的 YAML 代码和其它详细信息。

工作流日志

查看工作流运行详细信息

您可以通过在工作流摘要页面中选择运行来查看工作流运行的详细信息。

下图显示了名为 Run-cc11d 的工作流运行的详细信息,该工作流是在提交到源时自动启动的。工作流程图表明某项操作已失败(1)。您可以导航到日志(2)以查看详细的日志消息并解决问题。有关工作流运行的更多信息,请参阅运行工作流

工作流日志

后续步骤

要了解有关工作流概念的更多信息,请参阅工作流概念

要创建您的第一个工作流,请参阅入门工作流