diff --git a/stepfunctions/TOOLS/convert_config.yaml b/stepfunctions/TOOLS/convert_config.yaml index a6bf5c42..a7d66965 100644 --- a/stepfunctions/TOOLS/convert_config.yaml +++ b/stepfunctions/TOOLS/convert_config.yaml @@ -28,6 +28,8 @@ resource: - &STG_SG_JSKULT_BATCH_LAUNDERING "sg-00b9ea30c5c6bb77a" # セキュリティグループ(ecs-export-dbdump) - &STG_SG_EXPORT_DBDUMP "sg-03962e5f52b380186" + # セキュリティグループ(ecs-jskult-batch-ultmarc-io) + - &STG_SG_JSKULT_ULTMARC_IO "sg-014caf29e738d106a" # 本番環境 product: # サブネット(PrivateSubnet1) @@ -46,6 +48,9 @@ resource: - &PRD_SG_JSKULT_BATCH_LAUNDERING "sg-0d2bc30c1a2939c32" # セキュリティグループ(ecs-export-dbdump) - &PRD_SG_EXPORT_DBDUMP "sg-07ce73feffb53fadc" + # セキュリティグループ(ecs-jskult-batch-ultmarc-io) + # TODO: 本番リリース時にIDを正式版にする + - &PRD_SG_JSKULT_ULTMARC_IO "sg-xxxxxxxxxxxxx" config: # CRMデータ取得 r-crm-datafetch-state: @@ -211,3 +216,32 @@ config: SG_ECS_ALL: *PRD_SG_ECS_ALL # セキュリティグループ(ecs-export-dbdump) SG_EXPORT_DBDUMP: *PRD_SG_EXPORT_DBDUMP + r-jskult-batch-ultmarc-io-state: + # ステージング環境 + staging: + # AWSアカウントID + AWS_ACCOUNT_ID: *AWS_ACCOUNT_ID + # 東京リージョン + REGION_AP_NORTHEAST_1: *REGION_AP_NORTHEAST_1 + # サブネット(PrivateSubnet1) + SUBNET_PRI_1A: *STG_SUBNET_PRI_1A + # サブネット(PrivateSubnet2) + SUBNET_PRI_1D: *STG_SUBNET_PRI_1D + # セキュリティグループ(ecs-all) + SG_ECS_ALL: *STG_SG_ECS_ALL + # セキュリティグループ(ecs-jskult-batch-ultmarc-io) + SG_JSKULT_ULTMARC_IO: *STG_SG_JSKULT_ULTMARC_IO + # 本番環境 + product: + # AWSアカウントID + AWS_ACCOUNT_ID: *AWS_ACCOUNT_ID + # 東京リージョン + REGION_AP_NORTHEAST_1: *REGION_AP_NORTHEAST_1 + # サブネット(PrivateSubnet1) + SUBNET_PRI_1A: *PRD_SUBNET_PRI_1A + # サブネット(PrivateSubnet2) + SUBNET_PRI_1D: *PRD_SUBNET_PRI_1D + # セキュリティグループ(ecs-all) + SG_ECS_ALL: *PRD_SG_ECS_ALL + # セキュリティグループ(ecs-jskult-batch-ultmarc-io) + SG_JSKULT_ULTMARC_IO: *PRD_SG_JSKULT_ULTMARC_IO diff --git a/stepfunctions/r-jskult-batch-ultmarc-io-state/r-jskult-batch-ultmarc-io-state.json b/stepfunctions/r-jskult-batch-ultmarc-io-state/r-jskult-batch-ultmarc-io-state.json new file mode 100644 index 00000000..6d87eaac --- /dev/null +++ b/stepfunctions/r-jskult-batch-ultmarc-io-state/r-jskult-batch-ultmarc-io-state.json @@ -0,0 +1,87 @@ +{ + "Comment": "MeDaCa 実消化&アルトマーク アルトマーク取込/データ出力ECSタスク起動 ステートマシン", + "StartAt": "params", + "States": { + "params": { + "Type": "Pass", + "Parameters": { + "ecs": { + "LaunchType": "FARGATE", + "Cluster": "arn:aws:ecs:#{REGION_AP_NORTHEAST_1}:#{AWS_ACCOUNT_ID}:cluster/mbj-newdwh2021-#{ENV_NAME}-jskult-batch-ultmarc-io-ecs", + "NetworkConfiguration": { + "AwsvpcConfiguration": { + "Subnets": [ + "#{SUBNET_PRI_1A}", + "#{SUBNET_PRI_1D}" + ], + "SecurityGroups": [ + "#{SG_ECS_ALL}", + "#{SG_JSKULT_ULTMARC_IO}" + ], + "AssignPublicIp": "DISABLED" + } + }, + "Overrides": { + "ContainerOverrides": [ + { + "Name": "mbj-newdwh2021-#{ENV_NAME}-container-jskult-batch-ultmarc-io", + "Environment": [ + { + "Name": "IMPORT_FILE_KEY", + "Value.$": "$.InputParams.TargetKey" + } + ] + } + ] + } + } + }, + "Comment": "パラメータ設定", + "ResultPath": "$.params", + "Next": "exec-ecs-task" + }, + "exec-ecs-task": { + "Type": "Task", + "Resource": "arn:aws:states:::ecs:runTask.sync", + "Parameters": { + "LaunchType.$": "$.params.ecs.LaunchType", + "Cluster.$": "$.params.ecs.Cluster", + "TaskDefinition": "arn:aws:ecs:#{REGION_AP_NORTHEAST_1}:#{AWS_ACCOUNT_ID}:task-definition/mbj-newdwh2021-#{ENV_NAME}-task-jskult-batch-ultmarc-io", + "NetworkConfiguration.$": "$.params.ecs.NetworkConfiguration", + "Overrides.$": "$.params.ecs.Overrides" + }, + "ResultPath": "$.result", + "Retry": [ + { + "ErrorEquals": [ + "States.ALL" + ], + "BackoffRate": 2, + "IntervalSeconds": 3, + "MaxAttempts": 3 + } + ], + "Catch": [ + { + "ErrorEquals": [ + "States.ALL" + ], + "Next": "Fail", + "ResultPath": "$.result" + } + ], + "Next": "Success", + "Comment": "アルトマーク取込/データ出力処理起動" + }, + "Success": { + "Type": "Succeed", + "Comment": "正常終了" + }, + "Fail": { + "Type": "Fail", + "Comment": "異常終了", + "Error": "StatusError", + "Cause": "StepFunctions ErrorEnd" + } + } +}