AWS CodePipeline 中的限额 - AWS CodePipeline

AWS CodePipeline 中的限额

CodePipeline 具有 AWS 账户在每个 AWS 区域中可以拥有的管道、阶段、操作和 Webhook 数量的限额。

这些配额按区域应用,并且可以提高。最长可能需要两周的时间来处理提高限额的请求。

资源 默认值

操作超时前的时长

(这是可配置的超时。有关不可配置的超时,请参阅下表)

CloudFormation 部署操作:3 天

CodeDeploy 和 CodeDeploy ECS(蓝/绿)部署操作:5 天

AWS Lambda 调用操作:24 小时

注意

当操作正在运行时,CodePipeline 会定期联系 Lambda 以获取状态。Lambda 函数会使用状态进行回复,其中操作执行为“成功”、“失败”或“进行中”。如果 Lambda 函数在 20 分钟后未发送任何回复,则操作将超时。如果在 20 分钟内,Lambda 函数回复操作仍在进行中,则 CodePipeline 会重新启动 20 分钟计时器并重试。如果 24 小时后仍未成功,CodePipeline 会将 Lambda 调用操作状态设置为失败。

Lambda 对 Lambda 函数使用单独的超时,该超时与 CodePipeline 操作超时无关。

Amazon S3 部署操作:90 分钟

注意

如果在部署大型 ZIP 文件期间上传到 S3 超时,则操作会因超时错误而失败。请尝试将 ZIP 文件分解成较小的文件。

手动审批操作账户级别默认超时:7 天

注意

对于管道中的特定操作,可以覆盖手动审批操作的默认超时,可配置的最长时间为 86400 分钟(60 天),最小值为 5 分钟。有关更多信息,请参阅 CodePipeline API 参考中的 ActionDeclaration

配置后,该超时将应用于操作。否则,将使用账户级别默认值。

所有其他操作:1 小时

注意

Amazon ECS 部署操作超时可配置为最长一小时(默认超时设置)。

AWS 账户中每个区域的最大管道总数

1000

注意

为轮询或基于事件的更改检测配置的管道将计入此配额。

每个 AWS 区域设置为轮询源更改的最大管道数

300

注意

这是固定限额,无法更改。如果您达到轮询管道的限制,您仍然可以配置使用基于事件的更改检测的其他管道。有关更多信息,请参阅。源操作和更改检测方法1

在一个 AWS 账户中每个区域的最大 webhook 数量 300

AWS 账户中每个区域的自定义操作数量

50

1根据源提供方,按照以下说明更新轮询管道,以使用基于事件的更改检测:

AWS CodePipeline 中的以下配额适用于区域可用性、命名约束和允许的构件大小。这些配额是固定的,不能更改。

有关每个区域中 CodePipeline 服务端点的列表,请参阅 AWS 一般参考中的 AWS CodePipeline 端点和限额

有关结构要求的信息,请参阅CodePipeline 管道结构参考

可创建管道的 AWS 区域

美国东部(俄亥俄州)

美国东部(弗吉尼亚州北部)

美国西部(加利福尼亚北部)

美国西部(俄勒冈州)

加拿大(中部)

欧洲地区(法兰克福)

欧洲(苏黎世)*

以色列(特拉维夫)

欧洲地区(爱尔兰)

欧洲地区(伦敦)

欧洲地区(米兰)*

欧洲地区(巴黎)

欧洲地区(西班牙)

欧洲地区(斯德哥尔摩)

非洲(开普敦)*

亚太地区(香港)*

亚太地区(海得拉巴)

亚太地区(孟买)

亚太地区(东京)

亚太地区 (首尔)

亚太地区(大阪)

亚太地区(新加坡)

亚太地区(悉尼)

亚太地区(雅加达)

亚太地区(墨尔本)

南美洲(圣保罗)

中东(巴林)*

中东(阿联酋)

AWS GovCloud(美国西部)

AWS GovCloud(美国东部)

操作名称中允许的字符

操作名称不能超过 100 个字符。允许的字符包括:

小写字母 az(含这两个字母)。

大写字母 AZ(含这两个字母)。

数字 09(含这两个数字)。

特殊字符 .(句点)、@(at 符号)、-(减号)和 _(下划线)。

不允许任何其他字符,例如空格。

操作类型中允许的字符

操作类型名称不能超过 25 个字符。允许的字符包括:

小写字母 a 到 z(含这两个字母)。

大写字母 A 到 Z(含这两个字母)。

数字 0 到 9(含这两个数字)。

特殊字符 .(句点)、@(at 符号)、-(减号)和 _(下划线)。

不允许任何其他字符,例如空格。

构件名称中允许的字符

构件名称不能超过 100 个字符。允许的字符包括:

小写字母 az(含这两个字母)。

大写字母 AZ(含这两个字母)。

数字 09(含这两个数字)。

特殊字符 -(减号)和 _(下划线)。

不允许任何其他字符,例如空格。

合作伙伴操作名称中允许的字符 合作伙伴操作名称必须遵循与 CodePipeline 中其他操作名称相同的命名约定和限制。具体来说,不能超过 100 个字符。允许的字符包括:

小写字母 a 到 z(含这两个字母)。

大写字母 A 到 Z(含这两个字母)。

数字 0 到 9(含这两个数字)。

特殊字符 .(句点)、@(at 符号)、-(减号)和 _(下划线)。

不允许任何其他字符,例如空格。

管道名称中允许的字符

管道名称不能超过 100 个字符。允许的字符包括:

小写字母 a 到 z(含这两个字母)。

大写字母 A 到 Z(含这两个字母)。

数字 0 到 9(含这两个数字)。

特殊字符 .(句点)、@(at 符号)、-(减号)和 _(下划线)。

不允许任何其他字符,例如空格。

阶段名称中允许的字符

阶段名称不能超过 100 个字符。允许的字符包括:

小写字母 a 到 z(含这两个字母)。

大写字母 A 到 Z(含这两个字母)。

数字 0 到 9(含这两个数字)。

特殊字符 .(句点)、@(at 符号)、-(减号)和 _(下划线)。

不允许任何其他字符,例如空格。

操作超时前的时长

CodeBuild 构建操作:36 小时

测试操作:8 小时

自定义操作:24 小时

Step Functions 调用操作:7 天

Commands 操作的构建超时:55 分钟

操作配置键的最大长度(例如,CodeBuild 配置键为 ProjectNamePrimarySourceEnvironmentVariables

50 个字符

操作配置值的最大长度(例如,CodeCommit 操作配置中的 RepositoryName 配置的值应少于 1000 个字符:

"RepositoryName": "my-repo-name-less-than-1000-characters")

1000 个字符
每个管道的最大操作数 1000

每个管道的最大并发管道执行数(QUEUED|PARALLEL 模式)

50
每个 PARALLEL 模式管道执行的最大并发操作执行数 5
一个 Amazon S3 对象的最大文件数 100000
一个阶段中并行操作的最大数量 100
一个阶段中顺序操作的最大数量 100
源阶段中项目的最大大小

存储在 Amazon S3 桶中的构件:7 GB

存储在 CodeCommit 或 GitHub 存储库中的构件:1 GB

例外:如果您使用 AWS Elastic Beanstalk 部署应用程序,则最大项目大小始终为 512 MB。

例外:如果您使用 CloudFormation 部署应用程序,则最大项目大小始终为 256 MB。

例外:如果您使用 CodeDeployToECS 部署应用程序,则最大构件大小始终为 3MB。

部署 Amazon ECS 容器和映像的管道中使用的映像定义 JSON 文件的最大大小

100KB
CloudFormation 操作的输入构件的最大大小 256 MB
CodeDeployToECS 操作的输入构件的最大大小 3 MB
Step Functions 操作的输入构件的最大大小 Step Functions 操作在 Lambda 上运行,因此它的构件大小配额与 Lambda 函数的构件大小配额相同。有关更多信息,请参阅《Lambda 开发人员指南》中的 Lambda 配额

可存储在 ParameterOverrides 属性中的 JSON 对象的最大大小

对于将 CloudFormation 作为提供程序的 CodePipeline 部署操作,ParameterOverrides 属性用于存储一个指定 CloudFormation 模板配置文件值的 JSON 对象。ParameterOverrides 属性中可存储的 JSON 对象的大小上限是 1 KB。

阶段中的操作数量

最小为 1,最大为 50

每个操作允许的构件数量 如需了解每个操作允许的输入和输出构件数量,请参阅每种操作类型的有效输入和输出构件
保留管道执行历史信息的月数 12

管道中的阶段数量

最小为 2,最大为 50

管道标签 标签区分大小写。每个资源最多 50 个。
管道标签键名称

UTF-8 格式的 Unicode 字母、数字、空格和允许使用的字符的任意组合,长度为 1 到 128 个字符。允许使用的字符为 + - = . _ : / @

标签键名称必须是唯一的,而且每个键只能有一个值。标签不能:

  • 以 AWS 开头:

  • 只包含空格

  • 以空格结尾

  • 包含表情符号或以下任何字符:? ^ * [ \ ~ ! # $ % & * ( ) > < | " '

管道标签值

UTF-8 格式的 Unicode 字母、数字、空格和允许使用的字符的任意组合,长度为 1 到 256 个字符。允许使用的字符为 + - = . _ : / @

一个键只能有一个值,但多个键可以具有相同的值。标签不能:

  • 以 AWS 开头:

  • 只包含空格

  • 以空格结尾

  • 包含表情符号或以下任何字符:? ^ * [ \ ~ ! # $ % & * ( ) > < | " '

触发

pushpull request 配置中,管道定义中最多可有 50 个触发器。

每个推送触发器和拉取请求触发器最多可有三个筛选条件。

注意

同一事件类型数组中的筛选条件不允许重复。

您最多可以为每种事件类型(推送、拉取请求)添加 8 种包含模式和 8 种排除模式、分支和文件路径。

patternvalues 中允许使用的字符包括所有字符类型。

对于包含和排除模式,最大长度为 255 个字符。

标签名称最大长度为 255 个字符。

triggers 数组的最大大小不应超过 200 KB

触发器筛选条件

文件路径:

  • 模式数量:您最多可以添加 8 种包含模式和 8 种排除模式。

  • 模式大小:每种包含或排除模式的大小最多可为 255 个字符。

分支:

  • 模式数量:您最多可以添加 8 种包含模式和 8 种排除模式。

  • 模式大小:每种包含或排除模式的大小最多可为 255 个字符。

拉取请求:

分支:

  • 模式数量:您最多可以添加 8 种包含模式和 8 种排除模式。

  • 模式大小:每种包含或排除模式的大小最多可为 255 个字符。

名称的唯一性

在单个 AWS 账户中,您在一个 AWS 区域中创建的每个管道都必须具有唯一名称。您可以在不同 AWS 区域中重复使用管道名称。

管道中的阶段名称必须是唯一的。

阶段中的操作名称必须是唯一的。

输出变量和命名空间的限额

对于某个特定的操作,其所有输出变量的大小总和不得超过 122880 字节。

对于某个特定的操作,其已解析的操作配置的大小总和不得超过 100 KB。

输出变量名称区分大小写。

命名空间区分大小写。

允许的字符包括:

  • 小写字母 a 到 z(含这两个字母)。

  • 大写字母 A 到 Z(含这两个字母)。

  • 数字 0 到 9(含这两个数字)。

  • 特殊字符 ^(插入符号)、@(at 符号)、-(减号)、_(下划线)、[(左括号)、](右括号)、*(星号)、$(美元符号)。

    不允许任何其他字符,例如空格。

管道级变量的限额

每个管道最多有 50 个管道级变量。

管道级变量的变量名称必须符合以下条件:

  • 最大长度为 128 个字符

  • 小写字母 a 到 z(含这两个字母)。

  • 大写字母 A 到 Z(含这两个字母)。

  • 数字 0 到 9(含这两个数字)。

  • 特殊字符 @\-_]+

    不允许任何其他字符,例如空格。

变量值的最大长度为 1000 个字符

变量值允许使用所有字符。

变量描述的最大长度为 200 个字符

* 您必须启用此区域,然后才能使用它。