diff --git a/apis/v1alpha1/gameserver_types.go b/apis/v1alpha1/gameserver_types.go index 67c12d4..f91a7ce 100644 --- a/apis/v1alpha1/gameserver_types.go +++ b/apis/v1alpha1/gameserver_types.go @@ -23,16 +23,17 @@ import ( ) const ( - GameServerStateKey = "game.kruise.io/gs-state" - GameServerOpsStateKey = "game.kruise.io/gs-opsState" - GameServerUpdatePriorityKey = "game.kruise.io/gs-update-priority" - GameServerDeletePriorityKey = "game.kruise.io/gs-delete-priority" - GameServerDeletingKey = "game.kruise.io/gs-deleting" - GameServerNetworkType = "game.kruise.io/network-type" - GameServerNetworkConf = "game.kruise.io/network-conf" - GameServerNetworkDisabled = "game.kruise.io/network-disabled" - GameServerNetworkStatus = "game.kruise.io/network-status" - GameServerNetworkTriggerTime = "game.kruise.io/network-trigger-time" + GameServerStateKey = "game.kruise.io/gs-state" + GameServerOpsStateKey = "game.kruise.io/gs-opsState" + GameServerUpdatePriorityKey = "game.kruise.io/gs-update-priority" + GameServerDeletePriorityKey = "game.kruise.io/gs-delete-priority" + GameServerDeletingKey = "game.kruise.io/gs-deleting" + GameServerNetworkType = "game.kruise.io/network-type" + GameServerNetworkConf = "game.kruise.io/network-conf" + GameServerNetworkDisabled = "game.kruise.io/network-disabled" + GameServerNetworkStatus = "game.kruise.io/network-status" + GameServerNetworkTriggerTime = "game.kruise.io/network-trigger-time" + GameServerOpsStateLastChangedTime = "game.kruise.io/opsState-last-changed-time" ) // GameServerSpec defines the desired state of GameServer diff --git a/pkg/controllers/gameserver/gameserver_manager.go b/pkg/controllers/gameserver/gameserver_manager.go index 910c8b1..e87528c 100644 --- a/pkg/controllers/gameserver/gameserver_manager.go +++ b/pkg/controllers/gameserver/gameserver_manager.go @@ -110,6 +110,7 @@ func (manager GameServerManager) SyncGsToPod() error { } if string(gs.Spec.OpsState) != podGsOpsState { newLabels[gameKruiseV1alpha1.GameServerOpsStateKey] = string(gs.Spec.OpsState) + newAnnotations[gameKruiseV1alpha1.GameServerOpsStateLastChangedTime] = time.Now().Format(TimeFormat) if podGsOpsState != "" { eventType := corev1.EventTypeNormal if gs.Spec.OpsState == gameKruiseV1alpha1.Maintaining {