我通过 AWS Codepipeline 和 Code Build 设置了 CICD,以 Bitbucket 作为源,并将我的项目部署到 ECS Fargate 集群。运行良好。
现在我在 bitbucket 中有两个存储库。一是前端,二是后端。现在我很好奇如何仅使用一个 AWS Codepipeline 为两个项目设置 CICD。如何与两个不同的存储库建立连接?它将如何运作?可以吗? 有什么解决办法吗?我的目的是使用一个 Codepipeline 部署项目的前端和后端。它如何与两个存储库一起使用?
git clone
,因为您可以在容器中运行任何命令。之后,将第一个和第二个存储库代码作为工件存储在 S3 中。
const source = CodePipelineSource.gitHub('bharath-t/cdk-project', 'main');
const python_source = CodePipelineSource.gitHub('bharath-t/python-project', 'main');
const prebuild = new ShellStep('Prebuild', {
input: python_source,
primaryOutputDirectory: './src',
commands: ['pip install flake8 pytest build', 'flake8 --exit-zero', 'pytest'],
});
// create pipeline, copy prebuild output into siblingdir within artifacts bucket
const pipeline = new CodePipeline(this, 'TestPipeline', {
pipelineName: 'TestPipeline',
synth: new ShellStep('Synth', {
input: source,
additionalInputs: {
'../siblingdir': prebuild,
},
commands: ['npm ci', 'npm run build', 'npx cdk synth', 'ls -a ../siblingdir'],
})
});