From b7039c7fb9864da406dad2ef91f2fa67ef02af58 Mon Sep 17 00:00:00 2001 From: dave Date: Mon, 6 Feb 2023 13:26:26 -0800 Subject: [PATCH] initial commit - scaffolding --- examples/main.tf | 51 +++++ go.mod | 70 ++++++ go.sum | 343 +++++++++++++++++++++++++++++ internal/provider/dir_resource.go | 176 +++++++++++++++ internal/provider/file_resource.go | 233 ++++++++++++++++++++ internal/provider/provider.go | 81 +++++++ main.go | 48 ++++ 7 files changed, 1002 insertions(+) create mode 100644 examples/main.tf create mode 100644 go.mod create mode 100644 go.sum create mode 100644 internal/provider/dir_resource.go create mode 100644 internal/provider/file_resource.go create mode 100644 internal/provider/provider.go create mode 100644 main.go diff --git a/examples/main.tf b/examples/main.tf new file mode 100644 index 0000000..f597846 --- /dev/null +++ b/examples/main.tf @@ -0,0 +1,51 @@ +terraform { + required_providers { + system = { + version = "~> 0.0.1" + # source = "boilerplate-example.com/boilerplateprovider/boilerplate" + } + } +} + + +provider "system" { + host = "ssh://qux:baz@somehost?param=value¶m2=value2" +} + + +# creates a directory +resource "system_dir" "confdir" { + path = "/srv/myapp" + mode = "0755" + owner = "root" + group = "root" +} + + +# creates a file +resource "system_file" "conffile" { + path = "${system_dir.confdir.path}/config.txt" + mode = "0644" + owner = "root" + group = "root" + content = <