

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

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

# 配置工作流操作
<a name="workflows-actions"></a>

*操作*是工作流的主要构建基块，它定义了工作流运行期间要执行的逻辑工作单元（又称任务）。通常，一个工作流包括多个按顺序运行或并行运行的操作，具体取决于您配置这些操作的方式。

**Topics**
+ [操作类型](#workflows-actions-types)
+ [添加操作到工作流](workflows-add-action.md)
+ [从工作流中删除操作](workflows-delete-action.md)
+ [开发自定义操作](workflows-custom-action.md)
+ [将操作分组为操作组](workflows-group-actions.md)
+ [顺序操作](workflows-depends-on.md)
+ [在操作之间共享构件和文件](workflows-working-artifacts.md)
+ [指定要使用的操作版本](workflows-action-versions.md)
+ [列出可用的操作版本](workflows-action-versions-determine.md)
+ [查看操作的源代码](workflows-view-source.md)
+ [与 GitHub 操作集成](integrations-github-actions.md)

## 操作类型
<a name="workflows-actions-types"></a>

在 Amazon CodeCatalyst 工作流程中，您可以使用以下类型的操作。

**Topics**
+ [CodeCatalyst 行动](#workflows-actions-types-cc)
+ [CodeCatalyst 实验室行动](#workflows-actions-types-cc-labs)
+ [GitHub 行动](#workflows-actions-types-github)
+ [第三方操作](#workflows-actions-types-3p)

### CodeCatalyst 行动
<a name="workflows-actions-types-cc"></a>

*CodeCatalyst 动*作是由 CodeCatalyst 开发团队创作、维护和全力支持的动作。

有一些用于构建、测试和部署应用程序的 CodeCatalyst 操作，以及用于执行其他任务（例如调用 AWS Lambda 函数）的操作。

以下 CodeCatalyst 操作可用：
+ **构建**

  此操作会构建您的构件并在 Docker 容器中运行单元测试。有关更多信息，请参阅 [添加构建操作](build-add-action.md)。
+ **测试**

  此操作会针对您的应用程序或构件运行集成和系统测试。有关更多信息，请参阅 [添加测试操作](test-add-action.md)。
+ **Amazon S3 发布**

  此操作会将应用程序构件复制到 Amazon S3 存储桶。有关更多信息，请参阅 [使用工作流将文件发布到 Amazon S3](s3-pub-action.md)。
+ **AWS CDK bootstrap**

  此操作会预置部署 CDK 应用程序 AWS CDK 所需的资源。有关更多信息，请参阅 [使用工作流程引导 AWS CDK 应用程序](cdk-boot-action.md)。
+ **AWS CDK 部署**

  此操作合成并部署应用程序。 AWS Cloud Development Kit (AWS CDK) 有关更多信息，请参阅 [使用工作流程部署 AWS CDK 应用程序](cdk-dep-action.md)。
+ **AWS Lambda 调用**

  此操作调用一个函数。 AWS Lambda 有关更多信息，请参阅 [使用工作流调用 Lambda 函数](lam-invoke-action.md)。
+ **GitHub 操作**

  此操作允许您在 CodeCatalyst 工作流程中运行 GitHub 操作。*CodeCatalyst*有关更多信息，请参阅 [使用工作流调用 Lambda 函数](lam-invoke-action.md)。
+ **部署 CloudFormation 堆栈**

  此操作会部署 CloudFormation 堆栈。有关更多信息，请参阅 [部署 CloudFormation 堆栈](deploy-action-cfn.md)。
+ **部署到 Amazon ECS**

  此操作会注册 Amazon ECS 任务定义并将其部署到 Amazon ECS 服务。有关更多信息，请参阅 [使用工作流部署到 Amazon ECS](deploy-action-ecs.md)。
+ **部署到 Kubernetes 集群**

  此操作会将应用程序部署到 Kubernetes 集群。有关更多信息，请参阅 [使用工作流部署到 Amazon EKS](deploy-action-eks.md)。
+ **渲染 Amazon ECS 任务定义**

  此操作会将容器映像 URI 插入到 Amazon ECS 任务定义 JSON 文件中，从而创建新的任务定义文件。有关更多信息，请参阅 [修改 Amazon ECS 任务定义](render-ecs-action.md)。

 CodeCatalyst 操作文档可在本指南和每个操作的自述文件中找到。

有关可用 CodeCatalyst 操作以及如何向工作流程添加操作的信息，请参阅[添加操作到工作流](workflows-add-action.md)。

### CodeCatalyst 实验室行动
<a name="workflows-actions-types-cc-labs"></a>

*CodeCatalyst 实验室操作*是 Amazon Labs 的一部分，Amazon CodeCatalyst Labs 是实验性应用程序的试验场。 CodeCatalyst 已经开发了实验室操作来展示与 AWS 服务的集成。

以下 CodeCatalyst 实验室操作可用：
+ **部署到 AWS Amplify 主机**

  该操作会将应用程序部署到 Amplify Hosting。
+ **部署到 AWS App Runner**

  此操作会将源映像存储库中的最新映像部署到 App Runner。
+ **部署到亚马逊 CloudFront 和亚马逊 S3**

  此操作会将应用程序部署到 CloudFront 和 Amazon S3。
+ **使用部署 AWS SAM**

  此操作使用 AWS Serverless Application Model （AWS SAM）部署无服务器应用程序。
+ **使 Amazon CloudFront 缓存失效**

  此操作会使给定路径集的 CloudFront 缓存失效。
+ **传出 Webhook**

  此操作使用户能够使用 HTTPS 请求将工作流中的消息发送到任意 Web 服务器。
+ **发布到 AWS CodeArtifact**

  此操作将包发布到 CodeArtifact 存储库。
+ **发布到 Amazon SNS**

  此操作使用户能够通过创建主题、发布到主题或订阅主题来与 Amazon SNS 集成。
+ **推送到 Amazon ECR**

  此操作会构建 Docker 映像并将其发布到 Amazon Elastic Container Registry（Amazon ECR）存储库。
+ **使用 Amazon CodeGuru 安全软件进行扫描**

  此操作会创建已配置代码路径的 zip 存档，并使用 “ CodeGuru 安全” 来运行代码扫描。
+ **Terraform Community Edition**

  此操作会运行 Terraform Community Edition 的 `plan` 和 `apply` 操作。

 CodeCatalyst 实验室操作的文档可在每个操作的自述文件中找到。

有关向工作流程添加 CodeCatalyst 实验室操作和查看其自述文件的信息，请参阅[添加操作到工作流](workflows-add-action.md)。

### GitHub 行动
<a name="workflows-actions-types-github"></a>

Acti *GitHub on* 很像一个[CodeCatalyst 动作](#workflows-actions-types-cc)，不同之处在于它是为与 GitHub 工作流程一起使用而开发的。有关 GitHub 操作的详细信息，请参阅[GitHub 操作](https://docs.github.com/en/actions)文档。

在 CodeCatalyst 工作流程中，您可以将 GitHub CodeCatalyst 操作与原生操作一起使用。

为方便起见， CodeCatalyst 控制台提供对多个常用 GitHub操作的访问权限。您也可以使用 [GitHub Marketplace](https://github.com/marketplace/actions) 中列出的任何 GitHub 操作（但有一些限制）。

操作文档可在每个 GitHub 操作的自述文件中找到。

有关更多信息，请参阅 [与 GitHub 操作集成](integrations-github-actions.md)。

### 第三方操作
<a name="workflows-actions-types-3p"></a>

*第三方操作*是由第三方供应商创作并在 CodeCatalyst 控制台中提供的操作。第三方操作的示例包括分别由 **Mend 和 Sonar 编写的 “修复 SCA**” 和 “**SonarCloud 扫描**” 操作。

第三方操作的文档可在每个操作的自述文件中找到。第三方供应商也可能提供其它文档。

有关向工作流中添加第三方操作和查看操作自述文件的信息，请参阅[添加操作到工作流](workflows-add-action.md)。