diff --git a/.github/workflows/demo.yml b/.github/workflows/demo.yml new file mode 100644 index 0000000..0e755c3 --- /dev/null +++ b/.github/workflows/demo.yml @@ -0,0 +1,25 @@ +name: Pipeform Demo +on: + workflow_dispatch: + pull_request: +jobs: + Demo: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Setup Go 1.23 + uses: actions/setup-go@v5 + with: + go-version: '1.23' + - name: Install pipeform + run: CGO_ENABLED=0 go install + - uses: hashicorp/setup-terraform@v3 + with: + terraform_version: "1.10.3" + - run: | + cd example + terraform init + terraform apply -json -auto-approve | $HOME/go/bin/pipeform --plain-ui + + + diff --git a/.gitignore b/.gitignore index 69dcb52..a097e33 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ -# Added by goreleaser init: +.terraform* +terraform.tfstate* dist/ diff --git a/example/main.tf b/example/main.tf new file mode 100644 index 0000000..9d1959e --- /dev/null +++ b/example/main.tf @@ -0,0 +1,31 @@ +terraform { + required_providers { + null = { + source = "hashicorp/null" + version = "3.2.3" + } + } +} + +resource "null_resource" "cluster" { + count = 30 + triggers = { + foo = "bar" + } + + provisioner "local-exec" { + command = "sleep ${count.index % 5 + 1}" + } +} + +output "output_string" { + value = null_resource.cluster[0].id +} + +output "output_bool" { + value = true +} + +output "output_num" { + value = 123 +}