in spinnaker/terminator.go [108:138]
func killJSONPayload(ins chaosmonkey.Instance, otherID string, spinnakerUser string) []byte {
var desc string
if otherID != "" {
desc = fmt.Sprintf("Chaos Monkey terminate instance: %s %s (%s, %s, %s)", ins.ID(), otherID, ins.AccountName(), ins.RegionName(), ins.ASGName())
} else {
desc = fmt.Sprintf("Chaos Monkey terminate instance: %s (%s, %s, %s)", ins.ID(), ins.AccountName(), ins.RegionName(), ins.ASGName())
}
p := killPayload{
Application: ins.AppName(),
Description: desc,
Job: []kpJob{
{
User: spinnakerUser,
Type: terminateType,
Credentials: ins.AccountName(),
Region: ins.RegionName(),
ServerGroupName: ins.ASGName(),
InstanceIDs: []string{ins.ID()},
CloudProvider: ins.CloudProvider(),
},
},
}
result, err := json.Marshal(p)
if err != nil {
log.Fatalf("chronos.jsonPayload could not marshal data into json: %v", err)
}
return result
}