Не удалось развернуть AWS CodePipeline

Я пытаюсь настроить конвейер непрерывной интеграции для моей простой лямбда-функции AWS. Признаюсь, я впервые использую конвейер кода AWS. У меня проблемы с настройкой конвейера. Этап развертывания в конвейере не работает.

Я создал CodeBuild

введите здесь описание изображения

Затем я создал приложение в CodeDeploy

введите здесь описание изображения

Затем я создал CodePipeline, выбрав источник как GitHub. Выбран репозиторий и ветка из GitHub. Затем связал конвейер с приложением CodeDeploy и созданным мной ранее CodeBuild.

После сохранения конвейера и построения конвейера я получаю эту ошибку.

введите здесь описание изображения

Когда я проверяю сведения об ошибке, появляется следующее сообщение:

Unable to access the artifact with Amazon S3 object key 'the-goodyard-pipelin/BuildArtif/G12YurC' located in the Amazon S3 artifact bucket 'codepipeline-us-east-1-820116794245'. The provided role does not have sufficient permissions.

По сути, этого Bucket тоже не существует. Разве ведро не создается автоматически? Что пошло не так с моей настройкой? Как я могу это исправить, пожалуйста?

Ковш тоже существует. Это просто ошибка.

В корзине я тоже вижу zip-файл.

введите здесь описание изображения


person Wai Yan Hein    schedule 03.11.2018    source источник
comment
Это связано с тем, что артефакт не создается. См. Этот ответ (stackoverflow.com/a/60983084/4842112) и статью - medium.com/@shanikae/   -  person Shanika Ediriweera    schedule 02.04.2020


Ответы (1)


Что ж, сообщение об ошибке выглядит самоочевидным, роль, которую вы назначили для сборки кода, не имеет достаточного доступа для перехода к s3. Перейдите в Codebuild -> Build projects -> Выберите свой проект -> Щелкните вкладку Build Details. Вы увидите ARN «Роль службы», и если вы нажмете на него, он отправит вас в эту роль IAM (если вы не являетесь администратором этой учетной записи, у вас может быть недостаточно разрешений для просмотра IAM, поскольку это Служба критических разрешений, поэтому проверьте это у администратора.) Проверьте политики для этой роли и проверьте, имеют ли политики действие: s3: GetObject на ресурсе: ваша корзина. Если нет, то вам нужно его добавить. Используйте визуальный редактор, используйте S3 как службу, добавьте Get * как действие и свою корзину s3 к нему.

person Simon Ernesto Cardenas Zarate    schedule 04.11.2018
comment
Я думаю, вы правы насчет того, что у роли службы отсутствуют разрешения, хотя я думаю, что это может быть роль службы CodePipeline, а не CodeBuild. Здесь есть документация о роли службы CodePipeline по умолчанию. docs .aws.amazon.com / codepipeline / latest / userguide / - person TimB; 21.11.2018