首页 > 解决方案 > 如何将多个 CodeCommit 源存储库添加到 CdkPipline

问题描述

我正在尝试创建具有多个源 CodeCommit 存储库的 CdkPipeline。我按照cdkworkshop的说明成功创建了一个具有单个 CodeCommit 存储库的自变异管道,但无法弄清楚如何在源阶段添加更多包(CodeCommit 存储库)。

我确实看到了来自https://docs.aws.amazon.com/cdk/api/latest/docs/aws-codepipeline-actions-readme.html#build--test的示例,但这不提供 CDK 的自我变异能力。

这个例子https://docs.aws.amazon.com/cdk/latest/guide/codepipeline_example.html#codepipeline_example_stack似乎更有希望,但它看起来太手动了。

任何帮助,将不胜感激。

标签: aws-cdkaws-codepipelineaws-codecommit

解决方案


响应迟到,但这是 AWS文档中的解决方案

如果您在初始步骤中使用 ShellStep,请使用以下additional_inputs属性:


additional_inputs (Optional[Mapping[str, IFileSetProducer]]) – 要放入其他目录的附加文件集。指定从目录名称到文件集的映射。在脚本执行期间,文件集将在指定的目录中可用。目录名称可能是相对的。例如,您可以使用以下配置将主输入和附加输入并排放置:: const script = new pipelines.ShellStep('MainScript', { commands: ['npm ci','npm run build' ,'npx cdk synth'],输入:pipelines.CodePipelineSource.gitHub('org/source1', 'main'), additionalInputs: { '../siblingdir': pipelines.CodePipelineSource.gitHub('org/source2', '主要的'), } }); 默认值: - 无额外输入


在上面的示例中,它向您展示了如何添加额外的 GitHub 存储库作为输入,并将其映射到../siblingdirShellStep 中的文件。

这适用于某些类型的步骤( CodeBuildStep 的示例),但建议查看文档以确认。


推荐阅读