@@ -15,6 +15,7 @@ import (
15
15
16
16
"github.com/coder/coder/v2/cli/clitest"
17
17
"github.com/coder/coder/v2/coderd/coderdtest"
18
+ "github.com/coder/coder/v2/coderd/rbac"
18
19
"github.com/coder/coder/v2/provisioner/echo"
19
20
"github.com/coder/coder/v2/provisionersdk/proto"
20
21
"github.com/coder/coder/v2/pty/ptytest"
@@ -56,7 +57,8 @@ func TestTemplatePull_Stdout(t *testing.T) {
56
57
client := coderdtest .New (t , & coderdtest.Options {
57
58
IncludeProvisionerDaemon : true ,
58
59
})
59
- user := coderdtest .CreateFirstUser (t , client )
60
+ admin := coderdtest .CreateFirstUser (t , client )
61
+ templateAdmin , _ := coderdtest .CreateAnotherUser (t , client , admin .OrganizationID , rbac .RoleTemplateAdmin ())
60
62
61
63
// Create an initial template bundle.
62
64
source1 := genTemplateVersionSource ()
@@ -67,18 +69,18 @@ func TestTemplatePull_Stdout(t *testing.T) {
67
69
expected , err := echo .Tar (source2 )
68
70
require .NoError (t , err )
69
71
70
- version1 := coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , source1 )
72
+ version1 := coderdtest .CreateTemplateVersion (t , client , admin .OrganizationID , source1 )
71
73
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , version1 .ID )
72
74
73
- template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version1 .ID )
75
+ template := coderdtest .CreateTemplate (t , client , admin .OrganizationID , version1 .ID )
74
76
75
77
// Update the template version so that we can assert that templates
76
78
// are being sorted correctly.
77
- updatedVersion := coderdtest .UpdateTemplateVersion (t , client , user .OrganizationID , source2 , template .ID )
79
+ updatedVersion := coderdtest .UpdateTemplateVersion (t , client , admin .OrganizationID , source2 , template .ID )
78
80
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , updatedVersion .ID )
79
81
80
82
inv , root := clitest .New (t , "templates" , "pull" , "--tar" , template .Name )
81
- clitest .SetupConfig (t , client , root )
83
+ clitest .SetupConfig (t , templateAdmin , root )
82
84
83
85
var buf bytes.Buffer
84
86
inv .Stdout = & buf
@@ -97,7 +99,8 @@ func TestTemplatePull_ToDir(t *testing.T) {
97
99
client := coderdtest .New (t , & coderdtest.Options {
98
100
IncludeProvisionerDaemon : true ,
99
101
})
100
- user := coderdtest .CreateFirstUser (t , client )
102
+ admin := coderdtest .CreateFirstUser (t , client )
103
+ templateAdmin , _ := coderdtest .CreateAnotherUser (t , client , admin .OrganizationID , rbac .RoleTemplateAdmin ())
101
104
102
105
// Create an initial template bundle.
103
106
source1 := genTemplateVersionSource ()
@@ -108,14 +111,14 @@ func TestTemplatePull_ToDir(t *testing.T) {
108
111
expected , err := echo .Tar (source2 )
109
112
require .NoError (t , err )
110
113
111
- version1 := coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , source1 )
114
+ version1 := coderdtest .CreateTemplateVersion (t , client , admin .OrganizationID , source1 )
112
115
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , version1 .ID )
113
116
114
- template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version1 .ID )
117
+ template := coderdtest .CreateTemplate (t , client , admin .OrganizationID , version1 .ID )
115
118
116
119
// Update the template version so that we can assert that templates
117
120
// are being sorted correctly.
118
- updatedVersion := coderdtest .UpdateTemplateVersion (t , client , user .OrganizationID , source2 , template .ID )
121
+ updatedVersion := coderdtest .UpdateTemplateVersion (t , client , admin .OrganizationID , source2 , template .ID )
119
122
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , updatedVersion .ID )
120
123
121
124
dir := t .TempDir ()
@@ -128,7 +131,7 @@ func TestTemplatePull_ToDir(t *testing.T) {
128
131
require .NoError (t , err )
129
132
130
133
inv , root := clitest .New (t , "templates" , "pull" , template .Name , actualDest )
131
- clitest .SetupConfig (t , client , root )
134
+ clitest .SetupConfig (t , templateAdmin , root )
132
135
133
136
ptytest .New (t ).Attach (inv )
134
137
@@ -147,7 +150,8 @@ func TestTemplatePull_ToImplicit(t *testing.T) {
147
150
client := coderdtest .New (t , & coderdtest.Options {
148
151
IncludeProvisionerDaemon : true ,
149
152
})
150
- user := coderdtest .CreateFirstUser (t , client )
153
+ admin := coderdtest .CreateFirstUser (t , client )
154
+ templateAdmin , _ := coderdtest .CreateAnotherUser (t , client , admin .OrganizationID , rbac .RoleTemplateAdmin ())
151
155
152
156
// Create an initial template bundle.
153
157
source1 := genTemplateVersionSource ()
@@ -158,14 +162,14 @@ func TestTemplatePull_ToImplicit(t *testing.T) {
158
162
expected , err := echo .Tar (source2 )
159
163
require .NoError (t , err )
160
164
161
- version1 := coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , source1 )
165
+ version1 := coderdtest .CreateTemplateVersion (t , client , admin .OrganizationID , source1 )
162
166
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , version1 .ID )
163
167
164
- template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version1 .ID )
168
+ template := coderdtest .CreateTemplate (t , client , admin .OrganizationID , version1 .ID )
165
169
166
170
// Update the template version so that we can assert that templates
167
171
// are being sorted correctly.
168
- updatedVersion := coderdtest .UpdateTemplateVersion (t , client , user .OrganizationID , source2 , template .ID )
172
+ updatedVersion := coderdtest .UpdateTemplateVersion (t , client , admin .OrganizationID , source2 , template .ID )
169
173
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , updatedVersion .ID )
170
174
171
175
// create a tempdir and change the working directory to it for the duration of the test (cannot run in parallel)
@@ -188,7 +192,7 @@ func TestTemplatePull_ToImplicit(t *testing.T) {
188
192
require .NoError (t , err )
189
193
190
194
inv , root := clitest .New (t , "templates" , "pull" , template .Name )
191
- clitest .SetupConfig (t , client , root )
195
+ clitest .SetupConfig (t , templateAdmin , root )
192
196
193
197
ptytest .New (t ).Attach (inv )
194
198
@@ -208,7 +212,8 @@ func TestTemplatePull_FolderConflict(t *testing.T) {
208
212
client := coderdtest .New (t , & coderdtest.Options {
209
213
IncludeProvisionerDaemon : true ,
210
214
})
211
- user := coderdtest .CreateFirstUser (t , client )
215
+ admin := coderdtest .CreateFirstUser (t , client )
216
+ templateAdmin , _ := coderdtest .CreateAnotherUser (t , client , admin .OrganizationID , rbac .RoleTemplateAdmin ())
212
217
213
218
// Create an initial template bundle.
214
219
source1 := genTemplateVersionSource ()
@@ -219,14 +224,14 @@ func TestTemplatePull_FolderConflict(t *testing.T) {
219
224
expected , err := echo .Tar (source2 )
220
225
require .NoError (t , err )
221
226
222
- version1 := coderdtest .CreateTemplateVersion (t , client , user .OrganizationID , source1 )
227
+ version1 := coderdtest .CreateTemplateVersion (t , client , admin .OrganizationID , source1 )
223
228
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , version1 .ID )
224
229
225
- template := coderdtest .CreateTemplate (t , client , user .OrganizationID , version1 .ID )
230
+ template := coderdtest .CreateTemplate (t , client , admin .OrganizationID , version1 .ID )
226
231
227
232
// Update the template version so that we can assert that templates
228
233
// are being sorted correctly.
229
- updatedVersion := coderdtest .UpdateTemplateVersion (t , client , user .OrganizationID , source2 , template .ID )
234
+ updatedVersion := coderdtest .UpdateTemplateVersion (t , client , admin .OrganizationID , source2 , template .ID )
230
235
_ = coderdtest .AwaitTemplateVersionJobCompleted (t , client , updatedVersion .ID )
231
236
232
237
dir := t .TempDir ()
@@ -249,7 +254,7 @@ func TestTemplatePull_FolderConflict(t *testing.T) {
249
254
require .NoError (t , err )
250
255
251
256
inv , root := clitest .New (t , "templates" , "pull" , template .Name , conflictDest )
252
- clitest .SetupConfig (t , client , root )
257
+ clitest .SetupConfig (t , templateAdmin , root )
253
258
254
259
pty := ptytest .New (t ).Attach (inv )
255
260
0 commit comments