@@ -9,10 +9,14 @@ import (
9
9
"github.com/stretchr/testify/require"
10
10
11
11
"cdr.dev/slog/sloggers/slogtest"
12
+ "github.com/coder/coder/agent"
12
13
"github.com/coder/coder/coderd/coderdtest"
13
14
"github.com/coder/coder/coderd/database"
14
15
"github.com/coder/coder/coderd/schedule"
15
16
"github.com/coder/coder/codersdk"
17
+ "github.com/coder/coder/codersdk/agentsdk"
18
+ "github.com/coder/coder/provisioner/echo"
19
+ "github.com/coder/coder/provisionersdk/proto"
16
20
"github.com/coder/coder/testutil"
17
21
)
18
22
@@ -29,7 +33,6 @@ func TestWorkspaceActivityBump(t *testing.T) {
29
33
}
30
34
31
35
client = coderdtest .New (t , & coderdtest.Options {
32
- AppHostname : proxyTestSubdomainRaw ,
33
36
IncludeProvisionerDaemon : true ,
34
37
// Agent stats trigger the activity bump, so we want to report
35
38
// very frequently in tests.
@@ -47,9 +50,45 @@ func TestWorkspaceActivityBump(t *testing.T) {
47
50
user := coderdtest .CreateFirstUser (t , client )
48
51
49
52
ttlMillis := int64 (ttl / time .Millisecond )
50
- workspace = createWorkspaceWithApps (t , client , user .OrganizationID , "" , 1234 , func (cwr * codersdk.CreateWorkspaceRequest ) {
53
+ agentToken := uuid .NewString ()
54
+ version := coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , & echo.Responses {
55
+ Parse : echo .ParseComplete ,
56
+ ProvisionPlan : echo .ProvisionComplete ,
57
+ ProvisionApply : []* proto.Provision_Response {{
58
+ Type : & proto.Provision_Response_Complete {
59
+ Complete : & proto.Provision_Complete {
60
+ Resources : []* proto.Resource {{
61
+ Name : "example" ,
62
+ Type : "aws_instance" ,
63
+ Agents : []* proto.Agent {{
64
+ Id : uuid .NewString (),
65
+ Name : "agent" ,
66
+ Auth : & proto.Agent_Token {
67
+ Token : agentToken ,
68
+ },
69
+ }},
70
+ }},
71
+ },
72
+ },
73
+ }},
74
+ })
75
+ template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version .ID )
76
+ coderdtest .AwaitTemplateVersionJob (t , client , version .ID )
77
+ workspace = coderdtest .CreateWorkspace (t , client , user .OrganizationID , template .ID , func (cwr * codersdk.CreateWorkspaceRequest ) {
51
78
cwr .TTLMillis = & ttlMillis
52
79
})
80
+ coderdtest .AwaitWorkspaceBuildJob (t , client , workspace .LatestBuild .ID )
81
+
82
+ agentClient := agentsdk .New (client .URL )
83
+ agentClient .SetSessionToken (agentToken )
84
+ agentCloser := agent .New (agent.Options {
85
+ Client : agentClient ,
86
+ Logger : slogtest .Make (t , nil ).Named ("agent" ),
87
+ })
88
+ t .Cleanup (func () {
89
+ _ = agentCloser .Close ()
90
+ })
91
+ coderdtest .AwaitWorkspaceAgents (t , client , workspace .ID )
53
92
54
93
// Sanity-check that deadline is near.
55
94
workspace , err := client .Workspace (ctx , workspace .ID )
0 commit comments