merge retry mechanism change from gorealis v1 to gorealis v2 (#21)
This commit is contained in:
parent
8db625730f
commit
d2fd7b9ba9
10 changed files with 449 additions and 206 deletions
|
@ -477,13 +477,15 @@ func TestRealisClient_CreateService(t *testing.T) {
|
|||
var ok bool
|
||||
var mErr error
|
||||
|
||||
if ok, mErr = r.MonitorJobUpdate(*result.GetKey(), 5*time.Second, 4*time.Minute); !ok || mErr != nil {
|
||||
// Update may already be in a terminal state so don't check for error
|
||||
err := r.AbortJobUpdate(*result.GetKey(), "Monitor timed out.")
|
||||
if result != nil {
|
||||
if ok, mErr = r.MonitorJobUpdate(*result.GetKey(), 5*time.Second, 4*time.Minute); !ok || mErr != nil {
|
||||
// Update may already be in a terminal state so don't check for error
|
||||
err := r.AbortJobUpdate(*result.GetKey(), "Monitor timed out.")
|
||||
|
||||
err = r.KillJob(job.JobKey())
|
||||
err = r.KillJob(job.JobKey())
|
||||
|
||||
assert.NoError(t, err)
|
||||
assert.NoError(t, err)
|
||||
}
|
||||
}
|
||||
|
||||
assert.True(t, ok)
|
||||
|
@ -1445,3 +1447,59 @@ func TestRealisClient_FitTasks(t *testing.T) {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestRealisClient_JobExists(t *testing.T) {
|
||||
role := "vagrant"
|
||||
env := "prod"
|
||||
name := "test_job_exists"
|
||||
// Create a good single job
|
||||
job := realis.NewJob().
|
||||
Environment(env).
|
||||
Role(role).
|
||||
Name(name).
|
||||
ThermosExecutor(thermosExec).
|
||||
CPU(.25).
|
||||
RAM(4).
|
||||
Disk(10).
|
||||
InstanceCount(3).
|
||||
IsService(true).
|
||||
Production(false).
|
||||
Tier("preemptible").
|
||||
Priority(0)
|
||||
|
||||
// Check if job exists before creating
|
||||
exists, err := r.JobExists(job.JobKey())
|
||||
assert.NoError(t, err)
|
||||
assert.False(t, exists)
|
||||
|
||||
err = r.CreateJob(job)
|
||||
assert.NoError(t, err)
|
||||
|
||||
exists, err = r.JobExists(job.JobKey())
|
||||
assert.NoError(t, err)
|
||||
assert.True(t, exists)
|
||||
|
||||
// Create a single bad job
|
||||
badJob := realis.NewJob().
|
||||
Environment("prod").
|
||||
Role("vagrant").
|
||||
Name("executordoesntexist").
|
||||
ExecutorName("idontexist").
|
||||
ExecutorData("").
|
||||
CPU(.25).
|
||||
RAM(4).
|
||||
Disk(10).
|
||||
InstanceCount(1)
|
||||
|
||||
// Check if job exists before creating
|
||||
exists, err = r.JobExists(badJob.JobKey())
|
||||
assert.NoError(t, err)
|
||||
assert.False(t, exists)
|
||||
|
||||
err = r.CreateJob(badJob)
|
||||
assert.Error(t, err)
|
||||
|
||||
exists, err = r.JobExists(badJob.JobKey())
|
||||
assert.NoError(t, err)
|
||||
assert.False(t, exists)
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue