Как повторно использовать код в проекте CodeStar?

Я создал проект CodeStar (шаблон Python Webservice в качестве отправной точки), и я использую vscode для его редактирования.

Пока что я настроил сгенерированный проект так, чтобы в нем было две лямбды. Структура выглядит следующим образом:

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

Он работает с использованием "sam local start-api" и тестированием с использованием панели инструментов AWS.

Однако мне не удалось повторно использовать код между "lambda1" и "lambda2", кроме копирования и вставки файлов ".py" в каждую лямбду, которая будет использоваться в качестве модулей. Попытался редактировать файл require.txt, чтобы он указывал на git-репозиторий с lib, но безуспешно.

Другая попытка состояла в том, чтобы попытаться добавить "Слой", используя "Лямбда-панель", которая в итоге переписала лямбда-код.

С учетом всего сказанного, есть ли какие-либо предложения о том, как повторно использовать код в проекте CodeStar?

0 ответов

Для создания слоев необходимо отредактировать шаблон Cloudformation проекта CodeStar:

Другие способы повторного использования кода, кроме копирования и вставки одних и тех же файлов в каждую лямбду, - это отложить это до сборки.

Имея структуру папок, такую ​​как:

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/ 
Другие вопросы по тегам