@@ -165,26 +165,16 @@ func (server *provisionerdServer) AcquireJob(ctx context.Context, _ *proto.Empty
165
165
return xerrors .Errorf ("request job was invalidated: %s" , errorMessage )
166
166
}
167
167
168
- project , err := server .Database .GetProjectByID (ctx , job .ProjectID )
169
- if err != nil {
170
- return nil , failJob (fmt .Sprintf ("get project: %s" , err ))
171
- }
172
- organization , err := server .Database .GetOrganizationByID (ctx , project .OrganizationID )
173
- if err != nil {
174
- return nil , failJob (fmt .Sprintf ("get organization: %s" , err ))
175
- }
176
168
user , err := server .Database .GetUserByID (ctx , job .InitiatorID )
177
169
if err != nil {
178
170
return nil , failJob (fmt .Sprintf ("get user: %s" , err ))
179
171
}
180
172
181
173
protoJob := & proto.AcquiredJob {
182
- JobId : job .ID .String (),
183
- CreatedAt : job .CreatedAt .UnixMilli (),
184
- Provisioner : string (job .Provisioner ),
185
- OrganizationName : organization .Name ,
186
- ProjectName : project .Name ,
187
- UserName : user .Username ,
174
+ JobId : job .ID .String (),
175
+ CreatedAt : job .CreatedAt .UnixMilli (),
176
+ Provisioner : string (job .Provisioner ),
177
+ UserName : user .Username ,
188
178
}
189
179
var projectVersion database.ProjectVersion
190
180
switch job .Type {
@@ -206,6 +196,14 @@ func (server *provisionerdServer) AcquireJob(ctx context.Context, _ *proto.Empty
206
196
if err != nil {
207
197
return nil , failJob (fmt .Sprintf ("get project version: %s" , err ))
208
198
}
199
+ project , err := server .Database .GetProjectByID (ctx , projectVersion .ProjectID )
200
+ if err != nil {
201
+ return nil , failJob (fmt .Sprintf ("get project: %s" , err ))
202
+ }
203
+ organization , err := server .Database .GetOrganizationByID (ctx , project .OrganizationID )
204
+ if err != nil {
205
+ return nil , failJob (fmt .Sprintf ("get organization: %s" , err ))
206
+ }
209
207
210
208
// Compute parameters for the workspace to consume.
211
209
parameters , err := projectparameter .Compute (ctx , server .Database , projectparameter.Scope {
@@ -246,8 +244,8 @@ func (server *provisionerdServer) AcquireJob(ctx context.Context, _ *proto.Empty
246
244
247
245
protoJob .Type = & proto.AcquiredJob_ProjectImport_ {
248
246
ProjectImport : & proto.AcquiredJob_ProjectImport {
249
- ProjectVersionId : projectVersion . ID . String (),
250
- ProjectVersionName : projectVersion . Name ,
247
+ // This will be replaced once the project import has been refactored.
248
+ ProjectName : "placeholder" ,
251
249
},
252
250
}
253
251
}
@@ -289,85 +287,36 @@ func (server *provisionerdServer) UpdateJob(stream proto.DRPCProvisionerDaemon_U
289
287
if err != nil {
290
288
return xerrors .Errorf ("update job: %w" , err )
291
289
}
292
- switch job .Type {
293
- case database .ProvisionerJobTypeProjectImport :
294
- if len (update .ProjectImportLogs ) == 0 {
295
- continue
296
- }
297
- var input projectImportJob
298
- err = json .Unmarshal (job .Input , & input )
299
- if err != nil {
300
- return xerrors .Errorf ("unmarshal job input %q: %s" , job .Input , err )
301
- }
302
- insertParams := database.InsertProjectVersionLogsParams {
303
- ProjectVersionID : input .ProjectVersionID ,
304
- }
305
- for _ , log := range update .ProjectImportLogs {
306
- logLevel , err := convertLogLevel (log .Level )
307
- if err != nil {
308
- return xerrors .Errorf ("convert log level: %w" , err )
309
- }
310
- logSource , err := convertLogSource (log .Source )
311
- if err != nil {
312
- return xerrors .Errorf ("convert log source: %w" , err )
313
- }
314
- insertParams .ID = append (insertParams .ID , uuid .New ())
315
- insertParams .CreatedAt = append (insertParams .CreatedAt , time .UnixMilli (log .CreatedAt ))
316
- insertParams .Level = append (insertParams .Level , logLevel )
317
- insertParams .Source = append (insertParams .Source , logSource )
318
- insertParams .Output = append (insertParams .Output , log .Output )
319
- }
320
- logs , err := server .Database .InsertProjectVersionLogs (stream .Context (), insertParams )
321
- if err != nil {
322
- return xerrors .Errorf ("insert project logs: %w" , err )
323
- }
324
- data , err := json .Marshal (logs )
325
- if err != nil {
326
- return xerrors .Errorf ("marshal project log: %w" , err )
327
- }
328
- err = server .Pubsub .Publish (projectVersionLogsChannel (input .ProjectVersionID ), data )
329
- if err != nil {
330
- return xerrors .Errorf ("publish history log: %w" , err )
331
- }
332
- case database .ProvisionerJobTypeWorkspaceProvision :
333
- if len (update .WorkspaceProvisionLogs ) == 0 {
334
- continue
335
- }
336
- var input workspaceProvisionJob
337
- err = json .Unmarshal (job .Input , & input )
338
- if err != nil {
339
- return xerrors .Errorf ("unmarshal job input %q: %s" , job .Input , err )
340
- }
341
- insertParams := database.InsertWorkspaceHistoryLogsParams {
342
- WorkspaceHistoryID : input .WorkspaceHistoryID ,
343
- }
344
- for _ , log := range update .WorkspaceProvisionLogs {
345
- logLevel , err := convertLogLevel (log .Level )
346
- if err != nil {
347
- return xerrors .Errorf ("convert log level: %w" , err )
348
- }
349
- logSource , err := convertLogSource (log .Source )
350
- if err != nil {
351
- return xerrors .Errorf ("convert log source: %w" , err )
352
- }
353
- insertParams .ID = append (insertParams .ID , uuid .New ())
354
- insertParams .CreatedAt = append (insertParams .CreatedAt , time .UnixMilli (log .CreatedAt ))
355
- insertParams .Level = append (insertParams .Level , logLevel )
356
- insertParams .Source = append (insertParams .Source , logSource )
357
- insertParams .Output = append (insertParams .Output , log .Output )
358
- }
359
- logs , err := server .Database .InsertWorkspaceHistoryLogs (stream .Context (), insertParams )
360
- if err != nil {
361
- return xerrors .Errorf ("insert workspace logs: %w" , err )
362
- }
363
- data , err := json .Marshal (logs )
290
+ insertParams := database.InsertProvisionerJobLogsParams {
291
+ JobID : parsedID ,
292
+ }
293
+ for _ , log := range update .Logs {
294
+ logLevel , err := convertLogLevel (log .Level )
364
295
if err != nil {
365
- return xerrors .Errorf ("marshal project log: %w" , err )
296
+ return xerrors .Errorf ("convert log level : %w" , err )
366
297
}
367
- err = server . Pubsub . Publish ( workspaceHistoryLogsChannel ( input . WorkspaceHistoryID ), data )
298
+ logSource , err := convertLogSource ( log . Source )
368
299
if err != nil {
369
- return xerrors .Errorf ("publish history log: %w" , err )
300
+ return xerrors .Errorf ("convert log source : %w" , err )
370
301
}
302
+ insertParams .ID = append (insertParams .ID , uuid .New ())
303
+ insertParams .CreatedAt = append (insertParams .CreatedAt , time .UnixMilli (log .CreatedAt ))
304
+ insertParams .Level = append (insertParams .Level , logLevel )
305
+ insertParams .Source = append (insertParams .Source , logSource )
306
+ insertParams .Output = append (insertParams .Output , log .Output )
307
+ }
308
+ logs , err := server .Database .InsertProvisionerJobLogs (stream .Context (), insertParams )
309
+ if err != nil {
310
+ server .Logger .Error (stream .Context (), "insert provisioner job logs" , slog .Error (err ))
311
+ return xerrors .Errorf ("insert job logs: %w" , err )
312
+ }
313
+ data , err := json .Marshal (logs )
314
+ if err != nil {
315
+ return xerrors .Errorf ("marshal job log: %w" , err )
316
+ }
317
+ err = server .Pubsub .Publish (provisionerJobLogsChannel (parsedID ), data )
318
+ if err != nil {
319
+ return xerrors .Errorf ("publish job log: %w" , err )
371
320
}
372
321
}
373
322
}
0 commit comments