Skip to content

Commit

Permalink
Merge pull request #10861 from hashicorp/f-gh-10860
Browse files Browse the repository at this point in the history
api: Added `NewSystemJob` job creation helper function.
  • Loading branch information
jrasell authored Jul 7, 2021
2 parents 712ad49 + 01a551f commit aa8940f
Show file tree
Hide file tree
Showing 4 changed files with 32 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .changelog/10861.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
```release-note:improvement
api: Added `NewSystemJob` helper function to create base system job object.
```
7 changes: 7 additions & 0 deletions api/jobs.go
Original file line number Diff line number Diff line change
Expand Up @@ -1035,6 +1035,13 @@ func NewBatchJob(id, name, region string, pri int) *Job {
return newJob(id, name, region, JobTypeBatch, pri)
}

// NewSystemJob creates and returns a new system-style job for processes
// designed to run on all clients, using the provided name and ID along with
// the relative job priority.
func NewSystemJob(id, name, region string, pri int) *Job {
return newJob(id, name, region, JobTypeSystem, pri)
}

// newJob is used to create a new Job struct.
func newJob(id, name, region, typ string, pri int) *Job {
return &Job{
Expand Down
15 changes: 15 additions & 0 deletions api/jobs_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1861,6 +1861,21 @@ func TestJobs_NewServiceJob(t *testing.T) {
}
}

func TestJobs_NewSystemJob(t *testing.T) {
t.Parallel()
job := NewSystemJob("job1", "myjob", "global", 5)
expect := &Job{
Region: stringToPtr("global"),
ID: stringToPtr("job1"),
Name: stringToPtr("myjob"),
Type: stringToPtr(JobTypeSystem),
Priority: intToPtr(5),
}
if !reflect.DeepEqual(job, expect) {
t.Fatalf("expect: %#v, got: %#v", expect, job)
}
}

func TestJobs_SetMeta(t *testing.T) {
t.Parallel()
job := &Job{Meta: nil}
Expand Down
7 changes: 7 additions & 0 deletions vendor/github.com/hashicorp/nomad/api/jobs.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit aa8940f

Please sign in to comment.