Я строю AWS CodePipeline, которая зависит от двух исходных репозиториев. Если шаг «CodeBuild» задается множеством входных артефактов, то вы получите сообщение об ошибке: .. declares 2 input artifacts which is more than the maximum count
. Документация имеет строгое требование, чтобы CodeBuild имел только один входной артефакт.
Лямбды, с другой стороны, не имеют этого ограничения. Я искал способ, которым Lambda могла бы «объединить» два артефакта в один, который я мог бы затем передать CodeBuild. К сожалению, информация на эту тему довольно ограничена.
У кого-нибудь есть работающая CodePipeline Lambda, которая объединит два Артефакта в один?
Примечание : документация о том, как получить доступ к артефактам .
источник
На самом деле я решил проблему, клонировав репозиторий непосредственно в codebuild:
Передайте токен GitHub:
# Выполните git clone на этапе установки:
Я обнаружил, что это решение проще в реализации, не зависит от Lambdas и, хотя выполняет две операции, работает довольно надежно.
источник
С 4 сентября 2018 года Amazon добавила поддержку нескольких источников ввода:
https://aws.amazon.com/about-aws/whats-new/2018/08/aws-codebuild-adds-ability-to-create-build-projects-with-multiple-input-sources-and-output- артефакты /
Из документации :
источник
Вы можете просмотреть CodeBuild. Файл BuildScpec можно поместить в проект CodeBuild.
источник