У меня есть конвейер с четырьмя этапами: источник, сборка, развертывание, а затем этап Lambda.На стадии лямбды я запускаю одну функцию для перемещения некоторых файлов в s3.
Функция s3 работает, я вижу, что файлы s3 были перемещены, но стадия лямбда никогда не завершается успешно, она всегда истекает.После некоторых размышлений я думаю, что это потому, что CodePipeline передает неправильный JobId в Lambda, потому что, если я регистрирую входящее событие, я вижу, что значение id отличается от идентификатора, который выполняется на вкладке истории конвейера.
Функция настроена на запуск и putJobSuccessResult()
, и putJobFailureResult()
, и они работают, потому что, если я затем скопирую идентификатор из вкладки истории конвейера и вставлю его в тестовое событие в Lambda и выполнютест, а затем конвейер проходит успешно, а не по тайм-ауту.
Я искал ответы часами, но, похоже, я не могу найти никакого решения, или даже кого-то еще с такой же проблемой.Я довольно новичок в AWS в целом, поэтому, возможно, я что-то упускаю.
Любая помощь будет очень признательна, спасибо.
Обновлено:
Я используюследующие, чтобы получить работу:
var jobId = event["CodePipeline.job"].id;