Successful allocations are marked as complete instead of dead
This commit is contained in:
parent
a2775c34d0
commit
94522e7bed
|
@ -262,7 +262,7 @@ func (r *AllocRunner) Alloc() *structs.Allocation {
|
|||
} else if pending {
|
||||
alloc.ClientStatus = structs.AllocClientStatusPending
|
||||
} else if dead {
|
||||
alloc.ClientStatus = structs.AllocClientStatusDead
|
||||
alloc.ClientStatus = structs.AllocClientStatusComplete
|
||||
}
|
||||
|
||||
return alloc
|
||||
|
|
|
@ -51,8 +51,8 @@ func TestAllocRunner_SimpleRun(t *testing.T) {
|
|||
return false, fmt.Errorf("No updates")
|
||||
}
|
||||
last := upd.Allocs[upd.Count-1]
|
||||
if last.ClientStatus != structs.AllocClientStatusDead {
|
||||
return false, fmt.Errorf("got status %v; want %v", last.ClientStatus, structs.AllocClientStatusDead)
|
||||
if last.ClientStatus != structs.AllocClientStatusComplete {
|
||||
return false, fmt.Errorf("got status %v; want %v", last.ClientStatus, structs.AllocClientStatusComplete)
|
||||
}
|
||||
return true, nil
|
||||
}, func(err error) {
|
||||
|
@ -96,8 +96,8 @@ func TestAllocRunner_TerminalUpdate_Destroy(t *testing.T) {
|
|||
|
||||
// Check the status has changed.
|
||||
last := upd.Allocs[upd.Count-1]
|
||||
if last.ClientStatus != structs.AllocClientStatusDead {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusDead)
|
||||
if last.ClientStatus != structs.AllocClientStatusComplete {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusComplete)
|
||||
}
|
||||
|
||||
// Check the state still exists
|
||||
|
@ -125,8 +125,8 @@ func TestAllocRunner_TerminalUpdate_Destroy(t *testing.T) {
|
|||
|
||||
// Check the status has changed.
|
||||
last := upd.Allocs[upd.Count-1]
|
||||
if last.ClientStatus != structs.AllocClientStatusDead {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusDead)
|
||||
if last.ClientStatus != structs.AllocClientStatusComplete {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusComplete)
|
||||
}
|
||||
|
||||
// Check the state was cleaned
|
||||
|
@ -173,8 +173,8 @@ func TestAllocRunner_Destroy(t *testing.T) {
|
|||
|
||||
// Check the status has changed.
|
||||
last := upd.Allocs[upd.Count-1]
|
||||
if last.ClientStatus != structs.AllocClientStatusDead {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusDead)
|
||||
if last.ClientStatus != structs.AllocClientStatusComplete {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusComplete)
|
||||
}
|
||||
|
||||
// Check the state was cleaned
|
||||
|
@ -357,8 +357,8 @@ func TestAllocRunner_SaveRestoreState_TerminalAlloc(t *testing.T) {
|
|||
|
||||
// Check the status has changed.
|
||||
last := upd.Allocs[upd.Count-1]
|
||||
if last.ClientStatus != structs.AllocClientStatusDead {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusDead)
|
||||
if last.ClientStatus != structs.AllocClientStatusComplete {
|
||||
return false, fmt.Errorf("got client status %v; want %v", last.ClientStatus, structs.AllocClientStatusComplete)
|
||||
}
|
||||
|
||||
// Check the state was cleaned
|
||||
|
|
|
@ -407,7 +407,7 @@ func (n *nomadFSM) applyAllocClientUpdate(buf []byte, index uint64) interface{}
|
|||
// Unblock evals for the nodes computed node class if the client has
|
||||
// finished running an allocation.
|
||||
for _, alloc := range req.Alloc {
|
||||
if alloc.ClientStatus == structs.AllocClientStatusDead ||
|
||||
if alloc.ClientStatus == structs.AllocClientStatusComplete ||
|
||||
alloc.ClientStatus == structs.AllocClientStatusFailed {
|
||||
nodeID := alloc.NodeID
|
||||
node, err := n.state.NodeByID(nodeID)
|
||||
|
|
|
@ -651,7 +651,7 @@ func TestFSM_UpdateAllocFromClient_Unblock(t *testing.T) {
|
|||
|
||||
clientAlloc := new(structs.Allocation)
|
||||
*clientAlloc = *alloc
|
||||
clientAlloc.ClientStatus = structs.AllocClientStatusDead
|
||||
clientAlloc.ClientStatus = structs.AllocClientStatusComplete
|
||||
update2 := &structs.Allocation{
|
||||
ID: alloc2.ID,
|
||||
ClientStatus: structs.AllocClientStatusRunning,
|
||||
|
|
|
@ -34,7 +34,7 @@ func TestFilterTerminalAllocs(t *testing.T) {
|
|||
&Allocation{
|
||||
ID: "bam",
|
||||
DesiredStatus: AllocDesiredStatusRun,
|
||||
ClientStatus: AllocClientStatusDead,
|
||||
ClientStatus: AllocClientStatusComplete,
|
||||
},
|
||||
}
|
||||
|
||||
|
|
|
@ -2085,10 +2085,10 @@ const (
|
|||
)
|
||||
|
||||
const (
|
||||
AllocClientStatusPending = "pending"
|
||||
AllocClientStatusRunning = "running"
|
||||
AllocClientStatusDead = "dead"
|
||||
AllocClientStatusFailed = "failed"
|
||||
AllocClientStatusPending = "pending"
|
||||
AllocClientStatusRunning = "running"
|
||||
AllocClientStatusComplete = "complete"
|
||||
AllocClientStatusFailed = "failed"
|
||||
)
|
||||
|
||||
// Allocation is used to allocate the placement of a task group to a node.
|
||||
|
@ -2206,7 +2206,7 @@ func (a *Allocation) TerminalStatus() bool {
|
|||
}
|
||||
|
||||
switch a.ClientStatus {
|
||||
case AllocClientStatusDead, AllocClientStatusFailed:
|
||||
case AllocClientStatusComplete, AllocClientStatusFailed:
|
||||
return true
|
||||
default:
|
||||
return false
|
||||
|
|
|
@ -1097,7 +1097,7 @@ func TestBatchSched_Run_DeadAlloc(t *testing.T) {
|
|||
alloc.JobID = job.ID
|
||||
alloc.NodeID = node.ID
|
||||
alloc.Name = "my-job.web[0]"
|
||||
alloc.ClientStatus = structs.AllocClientStatusDead
|
||||
alloc.ClientStatus = structs.AllocClientStatusComplete
|
||||
noErr(t, h.State.UpsertAllocs(h.NextIndex(), []*structs.Allocation{alloc}))
|
||||
|
||||
// Create a mock evaluation to register the job
|
||||
|
|
Loading…
Reference in New Issue