@@ -18,13 +18,16 @@ func New() database.Store {
18
18
organizationMembers :make ([]database.OrganizationMember ,0 ),
19
19
users :make ([]database.User ,0 ),
20
20
21
- project :make ([]database.Project ,0 ),
22
- projectHistory :make ([]database.ProjectHistory ,0 ),
23
- projectParameter :make ([]database.ProjectParameter ,0 ),
24
- workspace :make ([]database.Workspace ,0 ),
25
- workspaceResource :make ([]database.WorkspaceResource ,0 ),
26
- workspaceHistory :make ([]database.WorkspaceHistory ,0 ),
27
- workspaceAgent :make ([]database.WorkspaceAgent ,0 ),
21
+ parameterValue :make ([]database.ParameterValue ,0 ),
22
+ project :make ([]database.Project ,0 ),
23
+ projectHistory :make ([]database.ProjectHistory ,0 ),
24
+ projectParameter :make ([]database.ProjectParameter ,0 ),
25
+ provisionerDaemons :make ([]database.ProvisionerDaemon ,0 ),
26
+ provisionerJobs :make ([]database.ProvisionerJob ,0 ),
27
+ workspace :make ([]database.Workspace ,0 ),
28
+ workspaceResource :make ([]database.WorkspaceResource ,0 ),
29
+ workspaceHistory :make ([]database.WorkspaceHistory ,0 ),
30
+ workspaceAgent :make ([]database.WorkspaceAgent ,0 ),
28
31
}
29
32
}
30
33
@@ -37,20 +40,48 @@ type fakeQuerier struct {
37
40
users []database.User
38
41
39
42
// New tables
40
- project []database.Project
41
- projectHistory []database.ProjectHistory
42
- projectParameter []database.ProjectParameter
43
- workspace []database.Workspace
44
- workspaceResource []database.WorkspaceResource
45
- workspaceHistory []database.WorkspaceHistory
46
- workspaceAgent []database.WorkspaceAgent
43
+ parameterValue []database.ParameterValue
44
+ project []database.Project
45
+ projectHistory []database.ProjectHistory
46
+ projectParameter []database.ProjectParameter
47
+ provisionerDaemons []database.ProvisionerDaemon
48
+ provisionerJobs []database.ProvisionerJob
49
+ workspace []database.Workspace
50
+ workspaceResource []database.WorkspaceResource
51
+ workspaceHistory []database.WorkspaceHistory
52
+ workspaceAgent []database.WorkspaceAgent
47
53
}
48
54
49
55
// InTx doesn't rollback data properly for in-memory yet.
50
56
func (q * fakeQuerier )InTx (fn func (database.Store )error )error {
51
57
return fn (q )
52
58
}
53
59
60
+ func (q * fakeQuerier )AcquireProvisionerJob (_ context.Context ,arg database.AcquireProvisionerJobParams ) (database.ProvisionerJob ,error ) {
61
+ for index ,provisionerJob := range q .provisionerJobs {
62
+ if provisionerJob .StartedAt .Valid {
63
+ continue
64
+ }
65
+ found := false
66
+ for _ ,provisionerType := range arg .Types {
67
+ if provisionerJob .Provisioner != provisionerType {
68
+ continue
69
+ }
70
+ found = true
71
+ break
72
+ }
73
+ if ! found {
74
+ continue
75
+ }
76
+ provisionerJob .StartedAt = arg .StartedAt
77
+ provisionerJob .UpdatedAt = arg .StartedAt .Time
78
+ provisionerJob .WorkerID = arg .WorkerID
79
+ q .provisionerJobs [index ]= provisionerJob
80
+ return provisionerJob ,nil
81
+ }
82
+ return database.ProvisionerJob {},sql .ErrNoRows
83
+ }
84
+
54
85
func (q * fakeQuerier )GetAPIKeyByID (_ context.Context ,id string ) (database.APIKey ,error ) {
55
86
for _ ,apiKey := range q .apiKeys {
56
87
if apiKey .ID == id {
@@ -97,6 +128,15 @@ func (q *fakeQuerier) GetWorkspaceAgentsByResourceIDs(_ context.Context, ids []u
97
128
return agents ,nil
98
129
}
99
130
131
+ func (q * fakeQuerier )GetWorkspaceByID (_ context.Context ,id uuid.UUID ) (database.Workspace ,error ) {
132
+ for _ ,workspace := range q .workspace {
133
+ if workspace .ID .String ()== id .String () {
134
+ return workspace ,nil
135
+ }
136
+ }
137
+ return database.Workspace {},sql .ErrNoRows
138
+ }
139
+
100
140
func (q * fakeQuerier )GetWorkspaceByUserIDAndName (_ context.Context ,arg database.GetWorkspaceByUserIDAndNameParams ) (database.Workspace ,error ) {
101
141
for _ ,workspace := range q .workspace {
102
142
if workspace .OwnerID != arg .OwnerID {
@@ -123,6 +163,15 @@ func (q *fakeQuerier) GetWorkspaceResourcesByHistoryID(_ context.Context, worksp
123
163
return resources ,nil
124
164
}
125
165
166
+ func (q * fakeQuerier )GetWorkspaceHistoryByID (_ context.Context ,id uuid.UUID ) (database.WorkspaceHistory ,error ) {
167
+ for _ ,history := range q .workspaceHistory {
168
+ if history .ID .String ()== id .String () {
169
+ return history ,nil
170
+ }
171
+ }
172
+ return database.WorkspaceHistory {},sql .ErrNoRows
173
+ }
174
+
126
175
func (q * fakeQuerier )GetWorkspaceHistoryByWorkspaceIDWithoutAfter (_ context.Context ,workspaceID uuid.UUID ) (database.WorkspaceHistory ,error ) {
127
176
for _ ,workspaceHistory := range q .workspaceHistory {
128
177
if workspaceHistory .WorkspaceID .String ()!= workspaceID .String () {
@@ -179,6 +228,15 @@ func (q *fakeQuerier) GetWorkspacesByUserID(_ context.Context, ownerID string) (
179
228
return workspaces ,nil
180
229
}
181
230
231
+ func (q * fakeQuerier )GetOrganizationByID (_ context.Context ,id string ) (database.Organization ,error ) {
232
+ for _ ,organization := range q .organizations {
233
+ if organization .ID == id {
234
+ return organization ,nil
235
+ }
236
+ }
237
+ return database.Organization {},sql .ErrNoRows
238
+ }
239
+
182
240
func (q * fakeQuerier )GetOrganizationByName (_ context.Context ,name string ) (database.Organization ,error ) {
183
241
for _ ,organization := range q .organizations {
184
242
if organization .Name == name {
@@ -207,6 +265,23 @@ func (q *fakeQuerier) GetOrganizationsByUserID(_ context.Context, userID string)
207
265
return organizations ,nil
208
266
}
209
267
268
+ func (q * fakeQuerier )GetParameterValuesByScope (_ context.Context ,arg database.GetParameterValuesByScopeParams ) ([]database.ParameterValue ,error ) {
269
+ parameterValues := make ([]database.ParameterValue ,0 )
270
+ for _ ,parameterValue := range q .parameterValue {
271
+ if parameterValue .Scope != arg .Scope {
272
+ continue
273
+ }
274
+ if parameterValue .ScopeID != arg .ScopeID {
275
+ continue
276
+ }
277
+ parameterValues = append (parameterValues ,parameterValue )
278
+ }
279
+ if len (parameterValues )== 0 {
280
+ return nil ,sql .ErrNoRows
281
+ }
282
+ return parameterValues ,nil
283
+ }
284
+
210
285
func (q * fakeQuerier )GetProjectByID (_ context.Context ,id uuid.UUID ) (database.Project ,error ) {
211
286
for _ ,project := range q .project {
212
287
if project .ID .String ()== id .String () {
@@ -253,6 +328,20 @@ func (q *fakeQuerier) GetProjectHistoryByID(_ context.Context, projectHistoryID
253
328
return database.ProjectHistory {},sql .ErrNoRows
254
329
}
255
330
331
+ func (q * fakeQuerier )GetProjectParametersByHistoryID (_ context.Context ,projectHistoryID uuid.UUID ) ([]database.ProjectParameter ,error ) {
332
+ parameters := make ([]database.ProjectParameter ,0 )
333
+ for _ ,projectParameter := range q .projectParameter {
334
+ if projectParameter .ProjectHistoryID .String ()!= projectHistoryID .String () {
335
+ continue
336
+ }
337
+ parameters = append (parameters ,projectParameter )
338
+ }
339
+ if len (parameters )== 0 {
340
+ return nil ,sql .ErrNoRows
341
+ }
342
+ return parameters ,nil
343
+ }
344
+
256
345
func (q * fakeQuerier )GetProjectsByOrganizationIDs (_ context.Context ,ids []string ) ([]database.Project ,error ) {
257
346
projects := make ([]database.Project ,0 )
258
347
for _ ,project := range q .project {
@@ -282,6 +371,26 @@ func (q *fakeQuerier) GetOrganizationMemberByUserID(_ context.Context, arg datab
282
371
return database.OrganizationMember {},sql .ErrNoRows
283
372
}
284
373
374
+ func (q * fakeQuerier )GetProvisionerDaemonByID (_ context.Context ,id uuid.UUID ) (database.ProvisionerDaemon ,error ) {
375
+ for _ ,provisionerDaemon := range q .provisionerDaemons {
376
+ if provisionerDaemon .ID .String ()!= id .String () {
377
+ continue
378
+ }
379
+ return provisionerDaemon ,nil
380
+ }
381
+ return database.ProvisionerDaemon {},sql .ErrNoRows
382
+ }
383
+
384
+ func (q * fakeQuerier )GetProvisionerJobByID (_ context.Context ,id uuid.UUID ) (database.ProvisionerJob ,error ) {
385
+ for _ ,provisionerJob := range q .provisionerJobs {
386
+ if provisionerJob .ID .String ()!= id .String () {
387
+ continue
388
+ }
389
+ return provisionerJob ,nil
390
+ }
391
+ return database.ProvisionerJob {},sql .ErrNoRows
392
+ }
393
+
285
394
func (q * fakeQuerier )InsertAPIKey (_ context.Context ,arg database.InsertAPIKeyParams ) (database.APIKey ,error ) {
286
395
//nolint:gosimple
287
396
key := database.APIKey {
@@ -329,6 +438,24 @@ func (q *fakeQuerier) InsertOrganizationMember(_ context.Context, arg database.I
329
438
return organizationMember ,nil
330
439
}
331
440
441
+ func (q * fakeQuerier )InsertParameterValue (_ context.Context ,arg database.InsertParameterValueParams ) (database.ParameterValue ,error ) {
442
+ //nolint:gosimple
443
+ parameterValue := database.ParameterValue {
444
+ ID :arg .ID ,
445
+ Name :arg .Name ,
446
+ CreatedAt :arg .CreatedAt ,
447
+ UpdatedAt :arg .UpdatedAt ,
448
+ Scope :arg .Scope ,
449
+ ScopeID :arg .ScopeID ,
450
+ SourceScheme :arg .SourceScheme ,
451
+ SourceValue :arg .SourceValue ,
452
+ DestinationScheme :arg .DestinationScheme ,
453
+ DestinationValue :arg .DestinationValue ,
454
+ }
455
+ q .parameterValue = append (q .parameterValue ,parameterValue )
456
+ return parameterValue ,nil
457
+ }
458
+
332
459
func (q * fakeQuerier )InsertProject (_ context.Context ,arg database.InsertProjectParams ) (database.Project ,error ) {
333
460
project := database.Project {
334
461
ID :arg .ID ,
@@ -367,9 +494,11 @@ func (q *fakeQuerier) InsertProjectParameter(_ context.Context, arg database.Ins
367
494
ProjectHistoryID :arg .ProjectHistoryID ,
368
495
Name :arg .Name ,
369
496
Description :arg .Description ,
370
- DefaultSource :arg .DefaultSource ,
497
+ DefaultSourceScheme :arg .DefaultSourceScheme ,
498
+ DefaultSourceValue :arg .DefaultSourceValue ,
371
499
AllowOverrideSource :arg .AllowOverrideSource ,
372
- DefaultDestination :arg .DefaultDestination ,
500
+ DefaultDestinationScheme :arg .DefaultDestinationScheme ,
501
+ DefaultDestinationValue :arg .DefaultDestinationValue ,
373
502
AllowOverrideDestination :arg .AllowOverrideDestination ,
374
503
DefaultRefresh :arg .DefaultRefresh ,
375
504
RedisplayValue :arg .RedisplayValue ,
@@ -382,6 +511,32 @@ func (q *fakeQuerier) InsertProjectParameter(_ context.Context, arg database.Ins
382
511
return param ,nil
383
512
}
384
513
514
+ func (q * fakeQuerier )InsertProvisionerDaemon (_ context.Context ,arg database.InsertProvisionerDaemonParams ) (database.ProvisionerDaemon ,error ) {
515
+ daemon := database.ProvisionerDaemon {
516
+ ID :arg .ID ,
517
+ CreatedAt :arg .CreatedAt ,
518
+ Name :arg .Name ,
519
+ Provisioners :arg .Provisioners ,
520
+ }
521
+ q .provisionerDaemons = append (q .provisionerDaemons ,daemon )
522
+ return daemon ,nil
523
+ }
524
+
525
+ func (q * fakeQuerier )InsertProvisionerJob (_ context.Context ,arg database.InsertProvisionerJobParams ) (database.ProvisionerJob ,error ) {
526
+ job := database.ProvisionerJob {
527
+ ID :arg .ID ,
528
+ CreatedAt :arg .CreatedAt ,
529
+ UpdatedAt :arg .UpdatedAt ,
530
+ InitiatorID :arg .InitiatorID ,
531
+ Provisioner :arg .Provisioner ,
532
+ ProjectID :arg .ProjectID ,
533
+ Type :arg .Type ,
534
+ Input :arg .Input ,
535
+ }
536
+ q .provisionerJobs = append (q .provisionerJobs ,job )
537
+ return job ,nil
538
+ }
539
+
385
540
func (q * fakeQuerier )InsertUser (_ context.Context ,arg database.InsertUserParams ) (database.User ,error ) {
386
541
user := database.User {
387
542
ID :arg .ID ,
@@ -470,6 +625,34 @@ func (q *fakeQuerier) UpdateAPIKeyByID(_ context.Context, arg database.UpdateAPI
470
625
return sql .ErrNoRows
471
626
}
472
627
628
+ func (q * fakeQuerier )UpdateProvisionerDaemonByID (_ context.Context ,arg database.UpdateProvisionerDaemonByIDParams )error {
629
+ for index ,daemon := range q .provisionerDaemons {
630
+ if arg .ID .String ()!= daemon .ID .String () {
631
+ continue
632
+ }
633
+ daemon .UpdatedAt = arg .UpdatedAt
634
+ daemon .Provisioners = arg .Provisioners
635
+ q .provisionerDaemons [index ]= daemon
636
+ return nil
637
+ }
638
+ return sql .ErrNoRows
639
+ }
640
+
641
+ func (q * fakeQuerier )UpdateProvisionerJobByID (_ context.Context ,arg database.UpdateProvisionerJobByIDParams )error {
642
+ for index ,job := range q .provisionerJobs {
643
+ if arg .ID .String ()!= job .ID .String () {
644
+ continue
645
+ }
646
+ job .CompletedAt = arg .CompletedAt
647
+ job .CancelledAt = arg .CancelledAt
648
+ job .UpdatedAt = arg .UpdatedAt
649
+ job .Error = arg .Error
650
+ q .provisionerJobs [index ]= job
651
+ return nil
652
+ }
653
+ return sql .ErrNoRows
654
+ }
655
+
473
656
func (q * fakeQuerier )UpdateWorkspaceHistoryByID (_ context.Context ,arg database.UpdateWorkspaceHistoryByIDParams )error {
474
657
for index ,workspaceHistory := range q .workspaceHistory {
475
658
if workspaceHistory .ID .String ()!= arg .ID .String () {