MCPcopy Create free account
hub / github.com/cloudbase/garm / sqlWorkflowJobToParamsJob

Function sqlWorkflowJobToParamsJob

database/sql/jobs.go:36–75  ·  view source on GitHub ↗
(job WorkflowJob)

Source from the content-addressed store, hash-verified

34var _ common.JobsStore = &sqlDatabase{}
35
36func sqlWorkflowJobToParamsJob(job WorkflowJob) (params.Job, error) {
37 labels := []string{}
38 if job.Labels != nil {
39 if err := json.Unmarshal(job.Labels, &labels); err != nil {
40 return params.Job{}, fmt.Errorf("error unmarshaling labels: %w", err)
41 }
42 }
43
44 jobParam := params.Job{
45 ID: job.ID,
46 WorkflowJobID: job.WorkflowJobID,
47 ScaleSetJobID: job.ScaleSetJobID,
48 RunID: job.RunID,
49 Action: job.Action,
50 Status: job.Status,
51 Name: job.Name,
52 Conclusion: job.Conclusion,
53 StartedAt: job.StartedAt,
54 CompletedAt: job.CompletedAt,
55 GithubRunnerID: job.GithubRunnerID,
56 RunnerGroupID: job.RunnerGroupID,
57 RunnerGroupName: job.RunnerGroupName,
58 RepositoryName: job.RepositoryName,
59 RepositoryOwner: job.RepositoryOwner,
60 RepoID: job.RepoID,
61 OrgID: job.OrgID,
62 EnterpriseID: job.EnterpriseID,
63 Labels: labels,
64 CreatedAt: job.CreatedAt,
65 UpdatedAt: job.UpdatedAt,
66 LockedBy: job.LockedBy,
67 WorkflowRunURL: job.WorkflowRunURL,
68 }
69
70 if job.InstanceID != nil {
71 jobParam.RunnerName = job.Instance.Name
72 }
73
74 return jobParam, nil
75}
76
77func (s *sqlDatabase) paramsJobToWorkflowJob(ctx context.Context, conn *gorm.DB, job params.Job) (WorkflowJob, error) {
78 asJSON, err := json.Marshal(job.Labels)

Callers 11

DeleteJobMethod · 0.85
LockJobMethod · 0.85
BreakLockJobIsQueuedMethod · 0.85
UnlockJobMethod · 0.85
CreateOrUpdateJobMethod · 0.85
ListJobsByStatusMethod · 0.85
ListAllJobsMethod · 0.85
GetJobByIDMethod · 0.85
sqlToParamsInstanceMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected