Skip to content

Commit 8f72614

Browse files
committed
feat: add session token data source
1 parent bfa0c5a commit 8f72614

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

provider/workspace.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@ func workspaceDataSource() *schema.Resource {
5151
}
5252
rd.Set("name", name)
5353

54+
sessionToken := os.Getenv("CODER_SESSION_TOKEN")
55+
_ = rd.Set("coder_session_token", sessionToken)
56+
5457
id := os.Getenv("CODER_WORKSPACE_ID")
5558
if id == "" {
5659
id = uuid.NewString()
@@ -131,6 +134,11 @@ func workspaceDataSource() *schema.Resource {
131134
Computed: true,
132135
Description: "Name of the workspace.",
133136
},
137+
"coder_session_token": {
138+
Type: schema.TypeString,
139+
Computed: true,
140+
Description: "Session token for interfacing with a Coder deployment. It is regenerated everytime a workspace is started.",
141+
},
134142
},
135143
}
136144
}

provider/workspace_test.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,18 @@ package provider_test
33
import (
44
"testing"
55

6-
"github.com/coder/terraform-provider-coder/provider"
76
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/resource"
87
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
98
"github.com/hashicorp/terraform-plugin-sdk/v2/terraform"
109
"github.com/stretchr/testify/require"
10+
11+
"github.com/coder/terraform-provider-coder/provider"
1112
)
1213

1314
func TestWorkspace(t *testing.T) {
1415
t.Setenv("CODER_WORKSPACE_OWNER", "owner123")
1516
t.Setenv("CODER_WORKSPACE_OWNER_EMAIL", "owner123@example.com")
17+
t.Setenv("CODER_SESSION_TOKEN", "abc123")
1618

1719
resource.Test(t, resource.TestCase{
1820
Providers: map[string]*schema.Provider{
@@ -39,6 +41,7 @@ func TestWorkspace(t *testing.T) {
3941
require.Equal(t, "8080", attribs["access_port"])
4042
require.Equal(t, "owner123", attribs["owner"])
4143
require.Equal(t, "owner123@example.com", attribs["owner_email"])
44+
require.Equal(t, "abc123", attribs["coder_session_token"])
4245
return nil
4346
},
4447
}},

0 commit comments

Comments
 (0)