用码创建土地规格
terrastack的Python项目详细描述
Terrastack
这个简单的项目提供了一种通过python语言定义terrastack规范的方法, 进而可以用来输出terraform json规范。
库本身并不试图为每种类型的资源和属性创建抽象 可以在地形中定义。API的目标是尽可能地精简—借助于 使用标准的python对象和kwarg处理。牺牲类型安全以成为特征 与地形兼容。
示例使用:
import terrastack as ts
stack = ts.Stack()
stack.extend(ts.Provider("aws",
region = "eu-west-1",
version = "1.30.0",
))
# extend supports variable number of components
stack.extend(
ts.Resource("aws_instance", "my-instance-1",
ami="some-ami",
),
ts.Resource("aws_instance", "my-instance-2",
ami="some-ami",
),
ts.Output("my_output", "some_value"),
)
print(stack.render_json())
# output:
{
"output": {
"my_output": {
"value": "some_value"
}
},
"provider": [
{
"aws": {
"region": "eu-west-1",
"version": "1.30.0"
}
}
],
"resource": {
"aws_instance": {
"my-instance-1": {
"ami": "some-ami"
},
"my-instance-2": {
"ami": "some-ami"
}
}
}
}