MCPcopy Index your code
hub / github.com/coder/coder / convertProvisionerJob

Function convertProvisionerJob

coderd/provisionerjobs.go:378–417  ·  view source on GitHub ↗
(pj database.GetProvisionerJobsByIDsWithQueuePositionRow)

Source from the content-addressed store, hash-verified

376}
377
378func convertProvisionerJob(pj database.GetProvisionerJobsByIDsWithQueuePositionRow) codersdk.ProvisionerJob {
379 provisionerJob := pj.ProvisionerJob
380 job := codersdk.ProvisionerJob{
381 ID: provisionerJob.ID,
382 OrganizationID: provisionerJob.OrganizationID,
383 InitiatorID: provisionerJob.InitiatorID,
384 CreatedAt: provisionerJob.CreatedAt,
385 Type: codersdk.ProvisionerJobType(provisionerJob.Type),
386 Error: provisionerJob.Error.String,
387 ErrorCode: codersdk.JobErrorCode(provisionerJob.ErrorCode.String),
388 FileID: provisionerJob.FileID,
389 Tags: provisionerJob.Tags,
390 QueuePosition: int(pj.QueuePosition),
391 QueueSize: int(pj.QueueSize),
392 LogsOverflowed: provisionerJob.LogsOverflowed,
393 }
394 // Applying values optional to the struct.
395 if provisionerJob.StartedAt.Valid {
396 job.StartedAt = &provisionerJob.StartedAt.Time
397 }
398 if provisionerJob.CompletedAt.Valid {
399 job.CompletedAt = &provisionerJob.CompletedAt.Time
400 }
401 if provisionerJob.CanceledAt.Valid {
402 job.CanceledAt = &provisionerJob.CanceledAt.Time
403 }
404 if provisionerJob.WorkerID.Valid {
405 job.WorkerID = &provisionerJob.WorkerID.UUID
406 }
407 job.Status = codersdk.ProvisionerJobStatus(pj.ProvisionerJob.JobStatus)
408
409 // Only unmarshal input if it exists, this should only be zero in testing.
410 if len(provisionerJob.Input) > 0 {
411 if err := json.Unmarshal(provisionerJob.Input, &job.Input); err != nil {
412 job.Input.Error = xerrors.Errorf("decode input %s: %w", provisionerJob.Input, err).Error()
413 }
414 }
415
416 return job
417}
418
419func convertProvisionerJobWithQueuePosition(pj database.GetProvisionerJobsByOrganizationAndStatusWithQueuePositionAndProvisionerRow) codersdk.ProvisionerJob {
420 job := convertProvisionerJob(database.GetProvisionerJobsByIDsWithQueuePositionRow{

Calls 6

ProvisionerJobTypeTypeAlias · 0.92
JobErrorCodeTypeAlias · 0.92
ProvisionerJobStatusTypeAlias · 0.92
UnmarshalMethod · 0.45
ErrorMethod · 0.45
ErrorfMethod · 0.45

Tested by 1