@@ -54,47 +54,48 @@ func New() database.Store {
54
54
q := & FakeQuerier {
55
55
mutex : & sync.RWMutex {},
56
56
data : & data {
57
- apiKeys : make ([]database.APIKey , 0 ),
58
- auditLogs : make ([]database.AuditLog , 0 ),
59
- customRoles : make ([]database.CustomRole , 0 ),
60
- dbcryptKeys : make ([]database.DBCryptKey , 0 ),
61
- externalAuthLinks : make ([]database.ExternalAuthLink , 0 ),
62
- files : make ([]database.File , 0 ),
63
- gitSSHKey : make ([]database.GitSSHKey , 0 ),
64
- groups : make ([]database.Group , 0 ),
65
- groupMembers : make ([]database.GroupMemberTable , 0 ),
66
- licenses : make ([]database.License , 0 ),
67
- locks : map [int64 ]struct {}{},
68
- notificationMessages : make ([]database.NotificationMessage , 0 ),
69
- notificationPreferences : make ([]database.NotificationPreference , 0 ),
70
- organizationMembers : make ([]database.OrganizationMember , 0 ),
71
- organizations : make ([]database.Organization , 0 ),
72
- inboxNotifications : make ([]database.InboxNotification , 0 ),
73
- parameterSchemas : make ([]database.ParameterSchema , 0 ),
74
- presets : make ([]database.TemplateVersionPreset , 0 ),
75
- presetParameters : make ([]database.TemplateVersionPresetParameter , 0 ),
76
- provisionerDaemons : make ([]database.ProvisionerDaemon , 0 ),
77
- provisionerJobs : make ([]database.ProvisionerJob , 0 ),
78
- provisionerJobLogs : make ([]database.ProvisionerJobLog , 0 ),
79
- provisionerKeys : make ([]database.ProvisionerKey , 0 ),
80
- runtimeConfig : map [string ]string {},
81
- telemetryItems : make ([]database.TelemetryItem , 0 ),
82
- templateVersions : make ([]database.TemplateVersionTable , 0 ),
83
- templates : make ([]database.TemplateTable , 0 ),
84
- users : make ([]database.User , 0 ),
85
- userConfigs : make ([]database.UserConfig , 0 ),
86
- userStatusChanges : make ([]database.UserStatusChange , 0 ),
87
- workspaceAgents : make ([]database.WorkspaceAgent , 0 ),
88
- workspaceResources : make ([]database.WorkspaceResource , 0 ),
89
- workspaceModules : make ([]database.WorkspaceModule , 0 ),
90
- workspaceResourceMetadata : make ([]database.WorkspaceResourceMetadatum , 0 ),
91
- workspaceAgentStats : make ([]database.WorkspaceAgentStat , 0 ),
92
- workspaceAgentLogs : make ([]database.WorkspaceAgentLog , 0 ),
93
- workspaceBuilds : make ([]database.WorkspaceBuild , 0 ),
94
- workspaceApps : make ([]database.WorkspaceApp , 0 ),
95
- workspaceAppAuditSessions : make ([]database.WorkspaceAppAuditSession , 0 ),
96
- workspaces : make ([]database.WorkspaceTable , 0 ),
97
- workspaceProxies : make ([]database.WorkspaceProxy , 0 ),
57
+ apiKeys : make ([]database.APIKey , 0 ),
58
+ auditLogs : make ([]database.AuditLog , 0 ),
59
+ customRoles : make ([]database.CustomRole , 0 ),
60
+ dbcryptKeys : make ([]database.DBCryptKey , 0 ),
61
+ externalAuthLinks : make ([]database.ExternalAuthLink , 0 ),
62
+ files : make ([]database.File , 0 ),
63
+ gitSSHKey : make ([]database.GitSSHKey , 0 ),
64
+ groups : make ([]database.Group , 0 ),
65
+ groupMembers : make ([]database.GroupMemberTable , 0 ),
66
+ licenses : make ([]database.License , 0 ),
67
+ locks : map [int64 ]struct {}{},
68
+ notificationMessages : make ([]database.NotificationMessage , 0 ),
69
+ notificationPreferences : make ([]database.NotificationPreference , 0 ),
70
+ organizationMembers : make ([]database.OrganizationMember , 0 ),
71
+ organizations : make ([]database.Organization , 0 ),
72
+ inboxNotifications : make ([]database.InboxNotification , 0 ),
73
+ parameterSchemas : make ([]database.ParameterSchema , 0 ),
74
+ presets : make ([]database.TemplateVersionPreset , 0 ),
75
+ presetParameters : make ([]database.TemplateVersionPresetParameter , 0 ),
76
+ provisionerDaemons : make ([]database.ProvisionerDaemon , 0 ),
77
+ provisionerJobs : make ([]database.ProvisionerJob , 0 ),
78
+ provisionerJobLogs : make ([]database.ProvisionerJobLog , 0 ),
79
+ provisionerKeys : make ([]database.ProvisionerKey , 0 ),
80
+ runtimeConfig : map [string ]string {},
81
+ telemetryItems : make ([]database.TelemetryItem , 0 ),
82
+ templateVersions : make ([]database.TemplateVersionTable , 0 ),
83
+ templateVersionTerraformValues : make ([]database.TemplateVersionTerraformValue , 0 ),
84
+ templates : make ([]database.TemplateTable , 0 ),
85
+ users : make ([]database.User , 0 ),
86
+ userConfigs : make ([]database.UserConfig , 0 ),
87
+ userStatusChanges : make ([]database.UserStatusChange , 0 ),
88
+ workspaceAgents : make ([]database.WorkspaceAgent , 0 ),
89
+ workspaceResources : make ([]database.WorkspaceResource , 0 ),
90
+ workspaceModules : make ([]database.WorkspaceModule , 0 ),
91
+ workspaceResourceMetadata : make ([]database.WorkspaceResourceMetadatum , 0 ),
92
+ workspaceAgentStats : make ([]database.WorkspaceAgentStat , 0 ),
93
+ workspaceAgentLogs : make ([]database.WorkspaceAgentLog , 0 ),
94
+ workspaceBuilds : make ([]database.WorkspaceBuild , 0 ),
95
+ workspaceApps : make ([]database.WorkspaceApp , 0 ),
96
+ workspaceAppAuditSessions : make ([]database.WorkspaceAppAuditSession , 0 ),
97
+ workspaces : make ([]database.WorkspaceTable , 0 ),
98
+ workspaceProxies : make ([]database.WorkspaceProxy , 0 ),
98
99
},
99
100
}
100
101
// Always start with a default org. Matching migration 198.
@@ -222,6 +223,7 @@ type data struct {
222
223
replicas []database.Replica
223
224
templateVersions []database.TemplateVersionTable
224
225
templateVersionParameters []database.TemplateVersionParameter
226
+ templateVersionTerraformValues []database.TemplateVersionTerraformValue
225
227
templateVersionVariables []database.TemplateVersionVariable
226
228
templateVersionWorkspaceTags []database.TemplateVersionWorkspaceTag
227
229
templates []database.TemplateTable
@@ -8828,6 +8830,37 @@ func (q *FakeQuerier) InsertTemplateVersionParameter(_ context.Context, arg data
8828
8830
return param , nil
8829
8831
}
8830
8832
8833
+ func (q * FakeQuerier ) InsertTemplateVersionTerraformValuesByJobID (_ context.Context , arg database.InsertTemplateVersionTerraformValuesByJobIDParams ) error {
8834
+ err := validateDatabaseType (arg )
8835
+ if err != nil {
8836
+ return err
8837
+ }
8838
+
8839
+ q .mutex .Lock ()
8840
+ defer q .mutex .Unlock ()
8841
+
8842
+ // Find the template version by the job_id
8843
+ templateVersion , ok := slice .Find (q .templateVersions , func (v database.TemplateVersionTable ) bool {
8844
+ return v .JobID == arg .JobID
8845
+ })
8846
+ if ! ok {
8847
+ return sql .ErrNoRows
8848
+ }
8849
+
8850
+ if ! json .Valid (arg .CachedPlan ) {
8851
+ return xerrors .Errorf ("cached plan must be valid json, received %q" , string (arg .CachedPlan ))
8852
+ }
8853
+
8854
+ // Insert the new row
8855
+ row := database.TemplateVersionTerraformValue {
8856
+ TemplateVersionID : templateVersion .ID ,
8857
+ CachedPlan : arg .CachedPlan ,
8858
+ UpdatedAt : arg .UpdatedAt ,
8859
+ }
8860
+ q .templateVersionTerraformValues = append (q .templateVersionTerraformValues , row )
8861
+ return nil
8862
+ }
8863
+
8831
8864
func (q * FakeQuerier ) InsertTemplateVersionVariable (_ context.Context , arg database.InsertTemplateVersionVariableParams ) (database.TemplateVersionVariable , error ) {
8832
8865
if err := validateDatabaseType (arg ); err != nil {
8833
8866
return database.TemplateVersionVariable {}, err
0 commit comments