DeploymentWindow - AWS CodePipeline

DeploymentWindow

创建条件时,可以添加 DeploymentWindow 规则。本节提供对规则参数的参考。有关规则和条件的更多信息,请参阅阶段条件是如何运作的?

规则类型

  • 类别:Rule

  • 拥有者:AWS

  • 提供方:DeploymentWindow

  • 版本:1

配置参数

Cron

必需:是

定义允许部署的天数和时间的表达式。Cron 表达式由 6 个必需字段和 1 个可选字段组成,中间用空格隔开。通过 cron 表达式字段,您可以使用 cron 表达式指定计划模式,如下所示。

字段名称 允许的值 允许使用特殊字符
不适用 *
Minutes 0-59 , - * /
Hours 0-23 , - * /
Day-of-month 1-31 , - * ? / L W
Month 1-12 或 JAN-DEC , - * /
Day-of-Week 1-7 或 SUN-SAT , - * ? / L #
Year(可选) 空,1970-2199 , - * /
  • “*”字符用于指定所有值。例如,minute 字段中的“*”表示“每分钟”。

  • day-of-month 和 day-of-week 字段允许使用“?”字符。此字符用于指定“无特定值”。当您需要在两个字段中的一个字段指定某些内容,而另一个字段不需要时,此字符非常有用。

  • “-”字符用于指定范围。例如,hour 字段中的“10-12”表示“10、11 和 12 小时”。

  • “,”字符用于指定附加值。例如,day-of-week 字段中的“MON,WED,FRI”表示“星期一、星期三和星期五”。

  • “/”字符用于指定增量。例如,seconds 字段中的“0/15”表示“0、15、30 和 45 秒”。seconds 字段中的“5/15”表示“5、20、35 和 50 秒”。在“/”前指定“*”相当于指定 0 为起始值。

  • day-of-month 和 day-of-week 字段允许使用“L”字符。此字符是“last”的简写,但在两个字段中含义不同。例如,day-of-month 字段中的值“L”表示“本月最后一天”- 在非闰年,1 月为第 31 天,2 月为第 28 天。如果在 day-of-week 字段中单独使用,则仅表示“7”或“SAT”。但如果在 day-of-week 字段中使用在另一个值之后,则表示“本月最后 <specified_day> 天”- 例如,“6L”表示“本月最后一个星期五”。您还可以指定每月最后一天的偏移量,例如“L-3”,表示日历月倒数第三天。

  • day-of-month 字段允许使用“W”字符。此字符用于指定离给定日期最近的工作日(星期一至星期五)。例如,如果将“15W”指定为 day-of-month 字段的值,其含义是:“离本月 15 日最近的工作日”。因此,如果 15 日是星期六,触发器将在 14 日星期五触发。如果 15 日是星期日,触发器将在 16 日星期一触发。如果 15 日是星期二,那么将在 15 日星期二触发。

  • 在 day-of-month 表达式中,“L”和“W”字符还可以组合成“LW”,表示“本月最后一个工作日”。

  • day-of-week 字段允许使用“#”字符。此字符用于指定本月的“第 n 个”<specified_day> 日。例如,day-of-week 字段中的值“6#3”表示本月的第三个星期五(第 6 天 = 星期五,“#3”= 本月的第三个星期五)。

  • 合法字符以及月份和星期的名称不区分大小写。

TimeZone

必需:否

部署窗口的时区。正则表达式匹配以下格式的模式:

  • Region/City 格式。该值与格式为 Region/City 或 Region/City_City 的时区相匹配。例如,America/New_YorkEurope/Berlin

  • UTC 格式。该值与 UTC 字符串相匹配,后面可选择 +HH:MM 或 -HH:MM 格式的偏移量。例如 UTCUTC+05:30UTC-03:00。如果此参数未作其他设置,这是默认格式。

  • 缩写格式。该值匹配 3 至 5 个字符的时区缩写。例如,ESTIST

    有关有效 TimeZoneID 值表,请参阅 https://docs.oracle.com/middleware/1221/wcs/tag-ref/MISC/TimeZones.html。请注意,某些缩写可以是多种不同词组的缩写,如 CST 表示 Central Standard Time、China Standard Time 和 Cuba Standard Time。

规则配置示例

YAML
- name: MyDeploymentRule ruleTypeId: category: Rule owner: AWS provider: DeploymentWindow version: '1' configuration: Cron: 0 0 9-17 ? * MON-FRI * TimeZone: PST inputArtifacts: [] region: us-east-1
JSON
[ { "name": "MyDeploymentRule", "ruleTypeId": { "category": "Rule", "owner": "AWS", "provider": "DeploymentWindow", "version": "1" }, "configuration": { "Cron": "0 0 9-17 ? * MON-FRI *", "TimeZone": "PST" }, "inputArtifacts": [], "region": "us-east-1" } ]

以下相关资源可在您使用此规则时为您提供帮助。