Developers want to use the familiar IaC tools to perform deployments; resources can be defined in the same way as terraform arguments using dacrane.yaml.
IaC tools should be interchangeable, but Terraform is supported first.
Acceptance Criteria
Convert the code in Dacrane.yaml to HCL and implement a plugin to execute Terraform apply. After applying, the state is retrieved from state.json.
When deleting, Terraform destroy is executed.
An example of a terraform resource conversion is shown below.
@ka-sasaki-sti Please implement a function to convert YAML to HCL.
We will implement this as a provider after #18 , so you only need to write a simple conversion code first.
User Story
Developers want to use the familiar IaC tools to perform deployments; resources can be defined in the same way as terraform arguments using dacrane.yaml. IaC tools should be interchangeable, but Terraform is supported first.
Acceptance Criteria
Convert the code in Dacrane.yaml to HCL and implement a plugin to execute Terraform apply. After applying, the state is retrieved from state.json. When deleting, Terraform destroy is executed.
An example of a terraform resource conversion is shown below.
An example of a terraform data conversion is shown below.
The following directories are at the provider's disposal, and the terraform provider will generate tf files in the following directories.
.dacrane/instances/[instance_name]/custom_states/[local_module_name]/
Reference
https://pkg.go.dev/github.com/hashicorp/hcl/v2/gohcl