1
0
mirror of https://github.com/rancher/types.git synced 2025-09-01 05:09:10 +00:00

API Updates

This commit is contained in:
Darren Shepherd
2017-12-04 16:42:18 -07:00
parent 6106f4926c
commit 68600ed35d
17 changed files with 629 additions and 590 deletions

View File

@@ -3,6 +3,8 @@ package status
import (
"strings"
"time"
"github.com/rancher/norman/types/convert"
"github.com/rancher/norman/types/values"
)
@@ -37,6 +39,11 @@ var conditionMappings = []conditionMapping{
Transition: true,
State: "activating",
},
{
Name: "Updating",
Transition: true,
FalseIsGood: true,
},
{
Name: "Progressing",
Transition: true,
@@ -93,10 +100,28 @@ var conditionMappings = []conditionMapping{
}
func Set(data map[string]interface{}) {
val, ok := values.GetValue(data, "status", "conditions")
val, ok := values.GetValue(data, "metadata", "removed")
if ok && val != "" && val != nil {
data["state"] = "removing"
data["transitioning"] = "yes"
finalizers, ok := values.GetStringSlice(data, "metadata", "finalizers")
if ok && len(finalizers) > 0 {
data["transitioningMessage"] = "Waiting on " + finalizers[0]
if i, err := convert.ToTimestamp(val); err == nil {
if time.Unix(i/1000, 0).Add(5 * time.Minute).Before(time.Now()) {
data["transitioning"] = "error"
}
}
}
return
}
val, ok = values.GetValue(data, "status", "conditions")
if !ok || val == nil {
// TODO: remove
data["state"] = "active"
data["state"] = "initializing"
data["transitioning"] = "yes"
return
}