Почему мой рабочий процесс, связанный с моим SFTP-сервером AWS, останавливается после первого шага?
У меня есть SFTP-сервер в AWS (семейство Transfer). Я связал с ним рабочий процесс.
Этот рабочий процесс состоит из 3 шагов:
- вызвать лямбда-функцию для каждого файла, загруженного на SFTP-сервер (в )
- скопируйте исходный файл (из
bucket_name_same_as_user_name/unprocessed
кbucket_name_same_as_user_name/processed
) - удалить исходный файл
Лямбда-функция вызывается правильно, но по некоторым причинам ни один из других шагов не выполняется. Почему это ? Я что-то пропустил в своей конфигурации?
Вот подробности об этом рабочем процессе.
- Роль:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"Service": "transfer.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
- Политика, прикрепленная к роли:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "CopyRead",
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": "arn:aws:s3:::${SourceBucketName}/${ObjectName}"
},
{
"Sid": "CopyWrite",
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": "arn:aws:s3:::${DestinationBucketName}/${ObjectName}"
},
{
"Sid": "CopyList",
"Effect": "Allow",
"Action": "s3:ListBucket",
"Resource": [
"arn:aws:s3:::${SourceBucketName}",
"arn:aws:s3:::${DestinationBucketName}"
]
},
{
"Sid": "Delete",
"Effect": "Allow",
"Action": [
"s3:DeleteObject"
],
"Resource": "arn:aws:s3:::${BucketName}/${ObjectName}"
},
{
"Sid": "Custom",
"Effect": "Allow",
"Action": [
"lambda:InvokeFunction"
],
"Resource": [
"arn:aws:lambda:eu-west-3:502802710160:function:test-function"
]
}
]
}
- Конфигурация рабочего процесса:
[
{
"Type": "CUSTOM",
"CustomStepDetails": {
"Name": "call-test-function",
"Target": "arn:aws:lambda:eu-west-3:502800000000:function:test-function",
"TimeoutSeconds": 60,
"SourceFileLocation": "${original.file}"
}
},
{
"Type": "COPY",
"CopyStepDetails": {
"Name": "copy-file",
"DestinationFileLocation": {
"S3FileLocation": {
"Bucket": "test-bucket",
"Key": "${transfer:userName}/processed"
}
},
"OverwriteExisting": "FALSE",
"SourceFileLocation": "${original.file}"
}
},
{
"Type": "DELETE",
"DeleteStepDetails": {
"Name": "delete-file",
"SourceFileLocation": "${original.file}"
}
}
]