Je construis un AWS CodePipeline qui dépend de deux référentiels sources. Si l'étape « CodeBuild » est spécifié avec plusieurs artefacts d'entrée, vous obtenez l'erreur: .. declares 2 input artifacts which is more than the maximum count
. La documentation a une exigence stricte pour que CodeBuild n'ait qu'un seul artefact d'entrée.
Les Lambdas, d'autre part, n'ont pas cette limitation. J'ai cherché un moyen pour un Lambda de «fusionner» deux artefacts en un seul que je pourrais ensuite transmettre au CodeBuild. Malheureusement, les informations à ce sujet sont assez limitées.
Quelqu'un a-t-il une Lambda CodePipeline qui fusionnerait deux artefacts en un seul?
Remarque : Documentation sur la façon d'accéder aux artefacts .
la source
J'ai en fait résolu le problème en clonant le référentiel directement dans le codebuild:
Passer le jeton GitHub:
# Exécuter git clone dans l'étape d'installation:
J'ai trouvé que cette solution est plus facile à mettre en œuvre, ne repose pas sur Lambdas et même si elle effectue deux tirages, fonctionne de manière assez fiable.
la source
À partir du 4 septembre 2018, Amazon a pris en charge plusieurs sources d'entrée:
https://aws.amazon.com/about-aws/whats-new/2018/08/aws-codebuild-adds-ability-to-create-build-projects-with-multiple-input-sources-and-output- artefacts /
De la documentation :
la source
Vous pouvez consulter CodeBuild. Le fichier BuildScpec peut être placé dans le projet CodeBuild.
la source