适用于具有多个谓词条件的 Glue 的 AWS CloudFormation 模板
AWS CloudFormation template for Glue with multiple predicate conditions
我需要为 AWS Glue 编写 AWS CloudFormation 模板代码,我在其中为多个 Glue 作业创建单个模板。
我为第二份工作添加了谓词条件。不幸的是,虽然谓词接受多个条件,但它只接受前一个作业的一个状态,就像前一个作业状态成功或失败或停止一样,下一个作业仍然应该 运行。但我需要它在多个状态下 运行,即使之前的工作有任何 succeeded/failed/stopped 状态下一个工作应该添加。
如果我给出多个条件,它会报错说存在重复的工作,因为我在所有条件下都给出相同的工作名称
我在模板中写了下面的代码片段
'''
Resources:
WF:
Type: AWS::Glue::Workflow
Properties:
Description: workflow for Parallel Jobs
Name: Sequence_Job_Triggers
SequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Job_Trigger_1
Type: ON_DEMAND
Description: Description
WorkflowName: !Ref WF
Actions:
- JobName: job1
SequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Job_Trigger_2
Type: CONDITIONAL
Description: Description
WorkflowName: !Ref WF
Predicate:
Conditions:
- LogicalOperator: EQUALS
JobName: job1
State: SUCCEEDED
Actions:
- JobName: job2
'''
你不能只创建两个触发器吗,至少这对我有用:
SucceededSequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Succeeded_Job_Trigger_2
Type: CONDITIONAL
Description: Description
WorkflowName: !Ref WF
Predicate:
Conditions:
- LogicalOperator: EQUALS
JobName: job1
State: SUCCEEDED
Actions:
- JobName: job2
FailedSequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Failed_Job_Trigger_2
Type: CONDITIONAL
Description: Description
WorkflowName: !Ref WF
Predicate:
Conditions:
- LogicalOperator: EQUALS
JobName: job1
State: FAILED
Actions:
- JobName: job2
我需要为 AWS Glue 编写 AWS CloudFormation 模板代码,我在其中为多个 Glue 作业创建单个模板。 我为第二份工作添加了谓词条件。不幸的是,虽然谓词接受多个条件,但它只接受前一个作业的一个状态,就像前一个作业状态成功或失败或停止一样,下一个作业仍然应该 运行。但我需要它在多个状态下 运行,即使之前的工作有任何 succeeded/failed/stopped 状态下一个工作应该添加。
如果我给出多个条件,它会报错说存在重复的工作,因为我在所有条件下都给出相同的工作名称
我在模板中写了下面的代码片段
'''
Resources:
WF:
Type: AWS::Glue::Workflow
Properties:
Description: workflow for Parallel Jobs
Name: Sequence_Job_Triggers
SequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Job_Trigger_1
Type: ON_DEMAND
Description: Description
WorkflowName: !Ref WF
Actions:
- JobName: job1
SequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Job_Trigger_2
Type: CONDITIONAL
Description: Description
WorkflowName: !Ref WF
Predicate:
Conditions:
- LogicalOperator: EQUALS
JobName: job1
State: SUCCEEDED
Actions:
- JobName: job2
'''
你不能只创建两个触发器吗,至少这对我有用:
SucceededSequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Succeeded_Job_Trigger_2
Type: CONDITIONAL
Description: Description
WorkflowName: !Ref WF
Predicate:
Conditions:
- LogicalOperator: EQUALS
JobName: job1
State: SUCCEEDED
Actions:
- JobName: job2
FailedSequenceTrigger:
Type: AWS::Glue::Trigger
Properties:
Name: Failed_Job_Trigger_2
Type: CONDITIONAL
Description: Description
WorkflowName: !Ref WF
Predicate:
Conditions:
- LogicalOperator: EQUALS
JobName: job1
State: FAILED
Actions:
- JobName: job2