Generate Terraform with Jsonnet
This repository contains Jsonnet functions for generating resources and data sources for the hashicorp/hcp Terraform provider.
Learn more about tf.libsonnet
at docs.tflibsonnet.com.
IMPORTANT
This library is generated using tf-libsonnet/libgenerator. If you find an issue with the generated code, please file an issue in the
libgenerator
repository.If you would like to contribute a change, you may open a Pull Request with a suggested change, but please note that it will not be merged in until the necessary updates have been made to the generator.
Install the package using jsonnet-bundler:
jb install github.com/tf-libsonnet/hashicorp-hcp@main
# Or if you want to install a specific release
# jb install github.com/tf-libsonnet/hashicorp-hcp@v0.0.1
# Or if you want to install bindings for a specific provider major version series
# jb install github.com/tf-libsonnet/hashicorp-hcp/0.x@main
You can then import the package in your Jsonnet code:
// main.tf.json.jsonnet
local hcp = import 'github.com/tf-libsonnet/hashicorp-hcp/main.libsonnet';
hcp.provider.new(src='hashicorp/hcp')
+ hcp.hvn.new(
'example',
hvn_id='main-hvn',
cloud_provider='aws',
region='us-west-2',
cidr_block='172.25.16.0/20',
)
This will generate the following Terraform JSON :
{
"provider": {
"hcp": [
{ }
]
},
"resource": {
"hcp_hvn": {
"example": {
"cidr_block": "172.25.16.0/20",
"cloud_provider": "aws",
"hvn_id": "main-hvn",
"region": "us-west-2"
}
}
},
"terraform": {
"required_providers": {
"hcp": {
"source": "hashicorp/hcp"
}
}
}
}
Refer to the reference docs for a list of supported data sources and resources:
If you have any questions about how to use the tf.libsonnet
libraries, ask in the Organization GitHub
Discussion.
Refer to the CONTRIBUTING.md document for information on how to contribute to tf.libsonnet
.