一个简单的DynamoDB的CDK-JSON种子器

aws-cdk-dynamodb-seeder的Python项目详细描述


aws cdk dynamodb播种机Mentioned in Awesome CDK

buildcodecovdependencies Statusnpm

npm versionNuGet versionPyPI versionMaven Central

一个简单的cdb-dynamer-JSON

为什么是这个包裹

很高兴你这么问!在

使用AWS CDK实现基础设施部署的自动化是将开发和操作集成到一个过程和一个代码库中的一种惊人的方式。在

但是,构建预先填充了数据的开发或测试环境可能会很棘手,尤其是在使用Amazon DynamoDB时。在

如何使用它

使用您最喜欢的软件包管理器安装:

yarn add aws-cdk-dynamodb-seeder

TypeScript用法示例

^{pr2}$

有关更深入的示例,请参见:elegantdevelopment/aws-cdk-dynamodb-seeder-examples。在

导入种子数据

传递到setup(“要放入的项”)或teardown(“要删除的键”)的数据应该是对象的array(即{}到{a12}映射的表示)。在

  • setup元素应使用params.Itemfrom{a13}的格式
  • teardown元素应该使用params.Keyfrom{a14}的格式

版本控制

我们将尝试将此包的主要和次要版本与AWS CDK对齐,但始终检查我们的发行说明以确保兼容性。在

我们目前支持GitHub package.json dependency version (prod)

内部构件

在幕后,我们使用AwsCustomResource来表示相关表的种子状态。自定义资源的事件处理程序调用Function来执行安装和/或拆卸操作。在

部署堆栈

在部署时,我们在本地编写种子数据的副本,并使用BucketDeployment将其写入S3Bucket。在

然后,我们创建处理程序函数和自定义资源来字段种子请求(当堆栈部署时,onCreate事件将立即触发,从bucket读取数据并使用AWS.DynamoDB.DocumentClient为表设定种子)。在

更新堆栈

在堆栈更新中,当refreshOnUpdatetrue时,触发onUpdate处理程序。在

这将对每个拆卸“键”运行AWS.DynamoDB.DocumentClient.delete(),然后对每个设置“项”运行AWS.DynamoDB.DocumentClient.put()。在

销毁堆栈

当堆栈被销毁时,将调用事件处理程序的onDelete函数,前提是设置了teardown。在

这只需在销毁^{的资源之前对每个teardown“Key”运行AWS.DynamoDB.DocumentClient.delete()。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java游戏!框架伪造应用程序它实际上做什么?   java如何在JavaFx中显示表视图中的即时更改?   对象类的equals()方法的java重载   xpages介绍如何部署java。IBM Notes中的策略更改   java如何访问侦听器中的另一个视图?   java getDefaultDisplay()的替代方法是什么   java opencv匹配模板   java Android Firebase写入数据时的常量超时   在Java中,如何将包含大量空格的数字字符串转换为一系列Int变量。   带有GUI的swing Java模拟无法运行模拟   java NoSuchElementException在特定的Web端上使用无头铬和硒   java对文件进行迭代,即使文件在目录中也会出现“未找到文件”异常。你能告诉我为什么吗?谢谢   递归Java 8,匿名递归嵌套方法   java为什么我看到枚举常量的字段值会被序列化/反序列化?在哪种情况下,枚举中哪些内容没有序列化?   java在运行sonar scanner和Spotbugs规则时出错,用于单片项目?   java如何检查硬件键盘是否可用?(黑莓)   tile游戏动作侦听器循环中的java错误   sockets Java线程池与高请求场景中的新线程   java如何使用Hibernate注释在联接表上创建索引?