本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
CodePipeline 用例
以下各节描述了的用例 CodePipeline。
的用例 CodePipeline
您可以创建与其他管道集成的管道 AWS 服务。这些产品可以是 AWS 服务 Amazon S3,也可以是第三方产品,例如 GitHub。本节提供了使用 CodePipeline 不同的产品集成自动发布代码的示例。有关按操作类型 CodePipeline 组织的集成的完整列表,请参阅CodePipeline 管道结构参考。
主题
CodePipeline 与亚马逊 S3 搭配使用, AWS CodeCommit,以及 AWS CodeDeploy
创建管道时,与 AWS 产品和服务 CodePipeline 集成,这些产品和服务在管道的每个阶段都充当操作提供者。当您在向导中选择阶段时,必须选择源阶段和至少一个生成或部署阶段。该向导将为您创建具有无法更改的默认名称的阶段。这些是在向导中设置完整的三阶段管道时创建的阶段名称:
-
默认名称为“Source”的源操作阶段。
-
默认名称为“Build”的生成操作阶段。
-
默认名称为“Staging”的部署操作阶段。
您可以使用本指南中的教程创建管道并指定阶段:
-
教程:创建一个简单的管道(S3 存储桶)中的步骤可帮助您使用向导创建具有两个默认阶段的管道:“Source”和“Staging”,其中您的 Amazon S3 存储库是源提供程序。本教程创建了一个管道,用于 AWS CodeDeploy 将示例应用程序从 Amazon S3 存储桶部署到运行 Amazon Linux 的 Amazon EC2 实例。
-
中的步骤教程:创建简单的管道(CodeCommit 存储库)可帮助您使用向导创建带有 “源” 阶段的管道,该阶段使用您的 AWS CodeCommit 存储库作为源提供程序。本教程创建了一个管道,用于 AWS CodeDeploy 将示例应用程序从 AWS CodeCommit 存储库部署到运行 Amazon Linux 的 Amazon EC2 实例。
CodePipeline 与第三方操作提供者(GitHub 和 Jenkins)一起使用
您可以创建与第三方产品(例如 GitHub 和 Jenkins)集成的管道。教程:创建一个四阶段管道 中的步骤将向您演示如何创建一个管道,以便:
-
从 GitHub 存储库中获取源代码,
-
使用 Jenkins 生成和测试源代码,
-
用于 AWS CodeDeploy 将构建和测试的源代码部署到运行亚马逊 Linux 或微软 Windows Server 的亚马逊 EC2 实例。
CodePipeline 用于编译、生成和测试代码 CodeBuild
CodeBuild 是云端的托管生成服务,允许您在没有服务器或系统的情况下生成和测试代码。 CodePipeline CodeBuild 与配合使用可自动通过管道运行修订,以便在源代码发生变化时持续交付软件版本。 有关更多信息,请参阅 CodePipeline 与一起使用 CodeBuild 来测试代码和运行构建。
CodePipeline 与 Amazon ECS 配合使用,将基于容器的应用程序持续交付到云端
Amazon ECS 是一种容器管理服务,可让您将基于容器的应用程序部署到云中的 Amazon ECS 实例。 CodePipeline 与 Amazon ECS 配合使用,通过管道自动运行修订,以便在源映像存储库发生变化时持续部署基于容器的应用程序。有关更多信息,请参阅教程:使用 CodePipeline 进行持续部署。
CodePipeline 与 Elastic Beanstalk 配合使用,可将 Web 应用程序持续交付到云端
Elastic Beanstalk 是一项计算服务,可让您将 Web 应用程序和服务部署到 Web 服务器。 CodePipeline 与 Elastic Beanstalk 配合使用,可将 Web 应用程序持续部署到您的应用程序环境中。您还可以使用 AWS CodeStar 创建带有 Elastic Beanstalk 部署操作的管道。
CodePipeline 搭配使用 AWS Lambda 用于持续交付 Lambda-based 和无服务器应用程序
您可以使用 AWS Lambda 和来调 CodePipeline 用 AWS Lambda 函数,如部署无服务器应用程序中所述。您还可以使用 AWS Lambda 和 AWS CodeStar 来创建用于部署无服务器应用程序的管道。
CodePipeline 搭配使用 CloudFormation 用于持续交付到云端的模板
您可以 CloudFormation 与一起使用 CodePipeline 以实现持续交付和自动化。有关更多信息,请参阅使用持续交付 CodePipeline。 CloudFormation 还用于为中创建的管道创建模板 AWS CodeStar。