我正在考虑使用 Amazon 云服务(EC2、S3 等)进行托管。我一直在查看可以指定用于配置各种实例的 JSON 元数据,其复杂性让我感到担忧。是否有 dsl 会生成有效的 JSON 元数据,更重要的是验证条目?
最佳答案
不幸的是,我最近在搜索后画了一个空白。我正在使用 Amazon Web Services CloudFormation(您说的是 JSON 元数据吗?)。
CloudFormation JSON 文件有几个问题:
所以我一直在使用 Java API 在 Scala 中使用直接的 API 调用。其实真的很不错。
Java API 具有以
with
开头的“setter”风格,它返回 this
,因此可以链接它们。在 Scala 中,您可以使用这些来充当穷人的 DSL。所以你可以做这样的事情val updateRequest = new UpdateAutoScalingGroupRequest()
.withAutoScalingGroupName(group.getAutoScalingGroupName)
.withAvailabilityZones(subnetAZsOfOurVPC)
.withVPCZoneIdentifier(subnetNamesOfOurVPC)
as.updateAutoScalingGroup(updateRequest)
使用 Java API 在 Scala 中可以轻松完成其他事情。例如,在 map 中按 VPC 将所有子网分组,只需执行
val subnetsByVPC = ec2.describeSubnets(new DescribeSubnetsRequest).getSubnets.groupBy(_.getVpcId)
关于dsl - AWS EC2 有 dsl 吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8920053/