From 646f6158d9580ea9a1bae71c53c80097248ec7fa Mon Sep 17 00:00:00 2001 From: Justin Neubert Date: Wed, 3 Dec 2025 17:26:51 +0100 Subject: [PATCH] fix: update Terraform plugin version to 1.1.0-beta.5 and adjust working directory handling --- action-plugins/terraform/.version | 2 +- action-plugins/terraform/main.go | 17 +++++++++++++---- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/action-plugins/terraform/.version b/action-plugins/terraform/.version index 3bec004..fbbb0af 100644 --- a/action-plugins/terraform/.version +++ b/action-plugins/terraform/.version @@ -1 +1 @@ -1.1.0-beta.4 \ No newline at end of file +1.1.0-beta.5 \ No newline at end of file diff --git a/action-plugins/terraform/main.go b/action-plugins/terraform/main.go index da784d5..5bca428 100644 --- a/action-plugins/terraform/main.go +++ b/action-plugins/terraform/main.go @@ -4,6 +4,7 @@ import ( "context" "errors" "net/rpc" + "os" "strconv" "strings" "sync" @@ -57,7 +58,7 @@ func (p *Plugin) ExecuteTask(request plugins.ExecuteTaskRequest) (plugins.Respon tf_version = param.Value } if param.Key == "workdir" { - workdir = param.Value + workdir = request.Workspace + "/" + param.Value } if param.Key == "init" { init, _ = strconv.ParseBool(param.Value) @@ -153,6 +154,14 @@ func (p *Plugin) ExecuteTask(request plugins.ExecuteTaskRequest) (plugins.Respon }, err } + // switch to workdir + err = os.Chdir(workdir) + if err != nil { + return plugins.Response{ + Success: false, + }, err + } + installer := &releases.ExactVersion{ Product: product.Terraform, Version: version.Must(version.NewVersion(tf_version)), @@ -696,7 +705,7 @@ func (p *Plugin) Info(request plugins.InfoRequest) (models.Plugin, error) { var plugin = models.Plugin{ Name: "Terraform", Type: "action", - Version: "1.1.0-beta.4", + Version: "1.1.0-beta.5", Author: "JustNZ", Action: models.Action{ Name: "Terraform", @@ -719,7 +728,7 @@ func (p *Plugin) Info(request plugins.InfoRequest) (models.Plugin, error) { Title: "Working Directory", Type: "text", Category: "General", - Default: request.Workspace + "/", + Default: ".", Required: true, Description: "Working directory where terraform files are located", }, @@ -746,7 +755,7 @@ func (p *Plugin) Info(request plugins.InfoRequest) (models.Plugin, error) { Title: "Plan Output", Type: "text", Category: "Plan", - Default: request.Workspace + "/plan.tfplan", + Default: "./plan.tfplan", Required: false, Description: "Output the terraform plan to a file", DependsOn: models.DependsOn{