Ich erstelle eine AWS CodePipeline, die von zwei Quellrepositorys abhängt. Wenn der ‚CodeBuild‘ Schritt mit mehreren Eingängen Artefakte angegeben wird, dann erhalten Sie den Fehler: .. declares 2 input artifacts which is more than the maximum count
. Für die Dokumentation ist es strikt erforderlich, dass CodeBuild nur ein einziges Eingabeartefakt enthält.
Lambdas hingegen haben diese Einschränkung nicht. Ich habe nach einer Möglichkeit gesucht, wie ein Lambda zwei Artefakte zu einem einzigen "zusammenführen" kann, das ich dann an CodeBuild weitergeben kann. Leider sind die Informationen zu diesem Thema sehr begrenzt.
Hat jemand eine funktionierende CodePipeline Lambda, die zwei Artefakte zu einem zusammenfügt?
Hinweis : Dokumentation zum Zugriff auf Artefakte .
quelle
Ich habe das Problem tatsächlich gelöst, indem ich das Repository direkt in Codebuild geklont habe:
GitHub-Token übergeben:
# Führe git clone im Installationsschritt aus:
Ich fand, dass diese Lösung einfacher zu implementieren ist, sich nicht auf Lambdas verlässt und obwohl sie zwei Zugvorgänge ausführt, ziemlich zuverlässig funktioniert.
quelle
Seit dem 4. September 2018 unterstützt Amazon mehrere Eingabequellen:
https://aws.amazon.com/about-aws/whats-new/2018/08/aws-codebuild-adds-ability-to-create-build-projects-with-multiple-input-sources-and-output- Artefakte /
Aus der Dokumentation :
quelle
Sie können CodeBuild überprüfen. Die BuildScpec-Datei kann in das CodeBuild-Projekt eingefügt werden.
quelle