如何在CodeStar项目中重复使用代码?

时间:2019-02-14 12:13:20

标签: python aws-lambda aws-codebuild aws-codestar

我已经创建了一个CodeStar项目(以Python Webservice模板作为起点),并且我正在使用vscode对其进行编辑。

到目前为止,我已经将生成的项目自定义为具有两个lambda。结构如下:

buildspec.yml
functions/lambda1
functions/lambda2
template-configuration.json
template.yml

它可以使用“ sam local start-api”并通过AWS仪表板进行测试。

但是,除了在每个lambda上复制粘贴“ .py”文件以用作模块外,我没有设法在“ lambda1”和“ lambda2”之间重用代码。尝试编辑requirements.txt指向带有lib的git存储库,但未成功。

另一种尝试是尝试使用“ Lambda Dashboard”添加“ Layer”,最终重写了lambda代码。

话虽如此,对在CodeStar项目中如何重用代码有何建议?

1 个答案:

答案 0 :(得分:0)

要创建层,必须编辑CodeStar项目Cloudformation模板:

除了将相同的文件复制并粘贴到每个lambda之外,重用代码的其他方法是将其推迟到构建中。

具有如下文件夹结构:

your_project---- lambda1 -- lambda1_code.py
                 |
                 |--- lambda2 -- lambda2_code.py
                 |
                 ---- common_modules -- common_module.py

并修改构建脚本:

- cp ./common_modules/common_module.py ./lambda1/
- cp ./common_modules/common_module.py ./lambda2/