Локальная разработка с помощью aws-cdk

Можно ли развернуть в локальный стек с помощью aws-cdk? Подумал о переходе с бессерверного на cdk, но не смог найти другой вариант локального тестирования, кроме aws SAM ..


person VinceVega    schedule 24.10.2019    source источник
comment
Не совсем понятно, что вы имеете в виду, говоря о переходе с бессерверного на CDK. CDK предназначен для разработки стека, по сути, поверх CFN. Вы можете разрабатывать бессерверные стеки в CDK (например, развертывать Lambda и т. Д.).   -  person Marakai    schedule 25.10.2019
comment
@Marakai Вероятно, означает фреймворк.   -  person Miles Elam    schedule 21.01.2020
comment
@MilesElam Да, я вижу, OP принял данный ответ, так что тогда это стало ясно.   -  person Marakai    schedule 22.01.2020
comment
Зачем переключаться? Мы часто рекомендуем использовать Serverless Framework и AWS CDK вместе. Сильной стороной Serverless является работа с Lambda и API Gateway. Итак, хороший шаблон здесь - использовать CDK для остальной части вашей инфраструктуры и Serverless для ваших функций Lambda. –– Мы создали инструмент для этого - Serverless Stack Toolkit (SST), который позволяет комбинировать CDK и Serverless Framework - github.com/serverless-stack/serverless-stack –– Таким образом, вы можете выполнить sls deploy --stage dev и sst deploy --stage dev.   -  person Frank    schedule 04.09.2020


Ответы (2)


Я работаю над теми же проблемами прямо сейчас. Я получаю синтезированный шаблон CloudFormation из CDK и загружаю его в свой LocalStack CloudFormation:

$ cdk synth my-stack > my-stack.template.json
$ awslocal cloudformation create-stack --stack-name my-stack --template-body file://./my-stack.template.json

У меня это работает с очень простыми стеками, которые не требуют артефактов / ресурсов. Я все еще работаю над переносом того, что CDK делает внутренне с активами на основе корзины S3, в качестве параметров CloudFormation (например, лямбда-функций и т. Д.).

Надеюсь, это немного поможет вам. Я считаю, что это первая часть решения, учитывая то, что CDK может сделать сегодня.

person Adam Bellas    schedule 22.11.2019
comment
Я огляделся, и это был лучший вариант, который я смог найти. Инструменты AWS позволяют вам постоянно делать все в AWS. Теперь я мог найти способ дать ему другой URL. Итак, вы экспортируете шаблон и заставляете его запускать локальный стек. Я упаковал запуск awslocal в образ докера, чтобы другим разработчикам не обязательно было устанавливать awslocal. - person sbzoom; 27.01.2020

Я хотел бы указать вам на пакет aws-cdk-local. Это позволяет вам развернуть CDK IaC в вашем локальном стеке. См. ссылку aws-cdk-local

person confusedpunter    schedule 10.07.2021