|
| 1 | +--- |
| 2 | +title: "terraform-provider-corefunc" |
| 3 | +slug: "terraform-provider-corefunc" |
| 4 | +description: "CLI reference for terraform-provider-corefunc" |
| 5 | +--- |
| 6 | + |
| 7 | +## terraform-provider-corefunc |
| 8 | + |
| 9 | +Utilities that should have been Terraform core functions. |
| 10 | + |
| 11 | +### Synopsis |
| 12 | + |
| 13 | +terraform-provider-corefunc |
| 14 | + |
| 15 | +Utilities that should have been Terraform core functions. |
| 16 | + |
| 17 | +While some of these _can_ be implemented in HCL, some of them begin to push up |
| 18 | +against the limits of Terraform and the HCL2 configuration language. We also |
| 19 | +perform testing using the Terratest <https://terratest.gruntwork.io> framework |
| 20 | +on a regular basis. Exposing these functions as both a Go library as well as a |
| 21 | +Terraform provider enables us to use the same functionality in both our |
| 22 | +Terraform applies as well as while using a testing framework. |
| 23 | + |
| 24 | +Since Terraform doesn't have the concept of user-defined functions, the next |
| 25 | +step to open up the possibilities is to write a custom Terraform Provider which |
| 26 | +has the functions built-in, using Terraform's existing support for inputs and |
| 27 | +outputs. |
| 28 | + |
| 29 | +**This does not add new syntax or constructs to Terraform.** Instead it uses the |
| 30 | +existing concepts around Providers, Resources, Data Sources, Variables, and |
| 31 | +Outputs to expose new custom-built functionality. |
| 32 | + |
| 33 | +The goal of this provider is not to call any APIs, but to provide pre-built |
| 34 | +functions in the form of Data Sources. |
| 35 | + |
| 36 | +```bash |
| 37 | +terraform-provider-corefunc [flags] |
| 38 | +``` |
| 39 | + |
| 40 | +### Options |
| 41 | + |
| 42 | +```text |
| 43 | + -d, --debug Run with support for Go debuggers like delve. https://flwd.dk/3k055Lh |
| 44 | + -h, --help help for terraform-provider-corefunc |
| 45 | +``` |
| 46 | + |
| 47 | +### See also |
| 48 | + |
| 49 | +* [terraform-provider-corefunc json2toml](terraform-provider-corefunc_json2toml.md) - Converts JSON to TOML. |
| 50 | +* [terraform-provider-corefunc toml2json](terraform-provider-corefunc_toml2json.md) - Converts TOML to JSON. |
| 51 | +* [terraform-provider-corefunc version](terraform-provider-corefunc_version.md) - Long-form version information |
0 commit comments