Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit0f35ab5

Browse files
feat: addenabled computed field tocoder_ai_task
As discussed, we want to enable a way for consumers to know if theirtemplate is being provisioned as a task or not. We know that`CODER_TASK_ID` is set by the provisioner, it is being provisioned asa task, and not as a usual workspace. We use this knowledge to seta computed field `enabled` to reflect this.
1 parentbc840fd commit0f35ab5

File tree

2 files changed

+66
-6
lines changed

2 files changed

+66
-6
lines changed

‎provider/ai_task.go‎

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,16 @@ func aiTaskResource() *schema.Resource {
3434

3535
ifidStr:=os.Getenv("CODER_TASK_ID");idStr!="" {
3636
resourceData.SetId(idStr)
37+
resourceData.Set("enabled",true)
3738
}else {
3839
resourceData.SetId(uuid.NewString())
39-
40-
diags=append(diags, diag.Diagnostic{
41-
Severity:diag.Warning,
42-
Summary:"`CODER_TASK_ID` should be set. If you are seeing this message, the version of the Coder Terraform provider you are using is likely too new for your current Coder version.",
43-
})
40+
resourceData.Set("enabled",false)
4441
}
4542

4643
ifprompt:=os.Getenv("CODER_TASK_PROMPT");prompt!="" {
4744
resourceData.Set("prompt",prompt)
4845
}else {
49-
resourceData.Set("prompt","default")
46+
resourceData.Set("prompt","")
5047
}
5148

5249
var (
@@ -112,6 +109,11 @@ func aiTaskResource() *schema.Resource {
112109
ValidateFunc:validation.IsUUID,
113110
ConflictsWith: []string{"sidebar_app"},
114111
},
112+
"enabled": {
113+
Type:schema.TypeBool,
114+
Description:"The field is true if the template is being provisioned as a task.",
115+
Computed:true,
116+
},
115117
},
116118
}
117119
}

‎provider/ai_task_test.go‎

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,62 @@ import (
99
"github.com/stretchr/testify/require"
1010
)
1111

12+
funcTestAITask_Enabled(t*testing.T) {
13+
t.Run("EnabledWhenTask",func(t*testing.T) {
14+
t.Setenv("CODER_TASK_ID","7d8d4c2e-fb57-44f9-a183-22509819c2e7")
15+
16+
resource.Test(t, resource.TestCase{
17+
ProviderFactories:coderFactory(),
18+
IsUnitTest:true,
19+
Steps: []resource.TestStep{{
20+
Config:`
21+
provider "coder" {
22+
}
23+
resource "coder_ai_task" "test" {
24+
app_id = "9a3ff7b4-4b3f-48c6-8d3a-a8118ac921fc"
25+
}
26+
`,
27+
Check:func(state*terraform.State)error {
28+
require.Len(t,state.Modules,1)
29+
resource:=state.Modules[0].Resources["coder_ai_task.test"]
30+
require.NotNil(t,resource)
31+
32+
require.Equal(t,"true",resource.Primary.Attributes["enabled"])
33+
34+
returnnil
35+
},
36+
}},
37+
})
38+
})
39+
40+
t.Run("DisabledWhenWorkspace",func(t*testing.T) {
41+
t.Setenv("CODER_TASK_ID","")
42+
43+
resource.Test(t, resource.TestCase{
44+
ProviderFactories:coderFactory(),
45+
IsUnitTest:true,
46+
Steps: []resource.TestStep{{
47+
Config:`
48+
provider "coder" {
49+
}
50+
resource "coder_ai_task" "test" {
51+
app_id = "9a3ff7b4-4b3f-48c6-8d3a-a8118ac921fc"
52+
}
53+
`,
54+
Check:func(state*terraform.State)error {
55+
require.Len(t,state.Modules,1)
56+
resource:=state.Modules[0].Resources["coder_ai_task.test"]
57+
require.NotNil(t,resource)
58+
59+
require.Equal(t,"false",resource.Primary.Attributes["enabled"])
60+
61+
returnnil
62+
},
63+
}},
64+
})
65+
})
66+
}
67+
1268
funcTestAITask(t*testing.T) {
1369
t.Setenv("CODER_TASK_ID","7d8d4c2e-fb57-44f9-a183-22509819c2e7")
1470
t.Setenv("CODER_TASK_PROMPT","some task prompt")
@@ -35,6 +91,7 @@ func TestAITask(t *testing.T) {
3591
"id",
3692
"prompt",
3793
"app_id",
94+
"enabled",
3895
} {
3996
value:=resource.Primary.Attributes[key]
4097
require.NotNil(t,value)
@@ -97,6 +154,7 @@ func TestAITask(t *testing.T) {
97154
"id",
98155
"prompt",
99156
"app_id",
157+
"enabled",
100158
} {
101159
value:=resource.Primary.Attributes[key]
102160
require.NotNil(t,value)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp