@@ -4,9 +4,10 @@ import (
44 "bufio"
55 "context"
66 "fmt"
7+ "maps"
78 "os"
89 "regexp"
9- "sort "
10+ "slices "
1011 "strings"
1112 "time"
1213
@@ -18,7 +19,7 @@ import (
1819 "github.com/kagent-dev/kmcp/api/v1alpha1"
1920 appsv1 "k8s.io/api/apps/v1"
2021 corev1 "k8s.io/api/core/v1"
21- "k8s.io/apimachinery/pkg/api/errors"
22+ apierrors "k8s.io/apimachinery/pkg/api/errors"
2223 metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2324 "k8s.io/apimachinery/pkg/runtime"
2425 "k8s.io/apimachinery/pkg/types"
@@ -246,7 +247,7 @@ func extractEnvVarsFromManifest(manifest *common.AgentManifest) []string {
246247 for varName := range envVarSet {
247248 envVars = append (envVars , varName )
248249 }
249- sort . Strings (envVars )
250+ slices . Sort (envVars )
250251
251252 return envVars
252253}
@@ -412,7 +413,7 @@ func createEnvFileSecret(ctx context.Context, k8sClient client.Client, namespace
412413 err := k8sClient .Get (ctx , client.ObjectKey {Namespace : namespace , Name : secretName }, existingSecret )
413414
414415 if err != nil {
415- if errors .IsNotFound (err ) {
416+ if apierrors .IsNotFound (err ) {
416417 if err := k8sClient .Create (ctx , secret ); err != nil {
417418 return fmt .Errorf ("failed to create env file secret: %v" , err )
418419 }
@@ -447,7 +448,7 @@ func waitForDeployment(ctx context.Context, k8sClient client.Client, namespace,
447448 for {
448449 select {
449450 case <- timeoutTimer .C :
450- return nil , errors .NewNotFound (appsv1 .Resource ("deployment" ), name )
451+ return nil , apierrors .NewNotFound (appsv1 .Resource ("deployment" ), name )
451452 case <- ticker .C :
452453 err := k8sClient .Get (ctx , types.NamespacedName {
453454 Name : name ,
@@ -461,7 +462,7 @@ func waitForDeployment(ctx context.Context, k8sClient client.Client, namespace,
461462 return deployment , nil
462463 }
463464
464- if ! errors .IsNotFound (err ) {
465+ if ! apierrors .IsNotFound (err ) {
465466 return nil , fmt .Errorf ("error checking for deployment: %v" , err )
466467 }
467468 }
@@ -475,7 +476,7 @@ func restartAgentDeployment(ctx context.Context, k8sClient client.Client, cfg *D
475476
476477 _ , err := waitForDeployment (ctx , k8sClient , namespace , deploymentName , 30 * time .Second , cfg .Config )
477478 if err != nil {
478- if errors .IsNotFound (err ) {
479+ if apierrors .IsNotFound (err ) {
479480 if IsVerbose (cfg .Config ) {
480481 fmt .Printf ("Deployment '%s' not found after timeout, it may still be being created by the controller\n " , deploymentName )
481482 }
@@ -619,7 +620,7 @@ func createOrUpdateSecret(ctx context.Context, k8sClient client.Client, secret *
619620 }, existingSecret )
620621
621622 if err != nil {
622- if errors .IsNotFound (err ) {
623+ if apierrors .IsNotFound (err ) {
623624 // Create new secret
624625 if err := k8sClient .Create (ctx , secret ); err != nil {
625626 return fmt .Errorf ("failed to create secret: %v" , err )
@@ -713,7 +714,7 @@ func createOrUpdateAgent(ctx context.Context, k8sClient client.Client, agent *v1
713714 err := k8sClient .Get (ctx , client.ObjectKey {Namespace : namespace , Name : name }, existingAgent )
714715
715716 if err != nil {
716- if errors .IsNotFound (err ) {
717+ if apierrors .IsNotFound (err ) {
717718 // Agent does not exist, create it
718719 if err := k8sClient .Create (ctx , agent ); err != nil {
719720 return fmt .Errorf ("failed to create agent: %v" , err )
@@ -812,7 +813,7 @@ func createOrUpdateRemoteMCPServer(ctx context.Context, k8sClient client.Client,
812813 err := k8sClient .Get (ctx , client.ObjectKey {Namespace : namespace , Name : name }, existingRemoteMCPServer )
813814
814815 if err != nil {
815- if errors .IsNotFound (err ) {
816+ if apierrors .IsNotFound (err ) {
816817 // Create new RemoteMCPServer
817818 if err := k8sClient .Create (ctx , remoteMCPServer ); err != nil {
818819 return fmt .Errorf ("failed to create RemoteMCPServer: %v" , err )
@@ -900,7 +901,7 @@ func createOrUpdateMCPServer(ctx context.Context, k8sClient client.Client, mcpSe
900901 err := k8sClient .Get (ctx , client.ObjectKey {Namespace : namespace , Name : name }, existingMCPServer )
901902
902903 if err != nil {
903- if errors .IsNotFound (err ) {
904+ if apierrors .IsNotFound (err ) {
904905 // Create new MCPServer
905906 if err := k8sClient .Create (ctx , mcpServerResource ); err != nil {
906907 return fmt .Errorf ("failed to create MCPServer: %v" , err )
@@ -1086,7 +1087,7 @@ func createOrUpdateEnvSecret(ctx context.Context, k8sClient client.Client, names
10861087 err := k8sClient .Get (ctx , client.ObjectKey {Namespace : namespace , Name : secretName }, existingSecret )
10871088
10881089 if err != nil {
1089- if errors .IsNotFound (err ) {
1090+ if apierrors .IsNotFound (err ) {
10901091 // Secret doesn't exist, create it with all data
10911092 secret := & corev1.Secret {
10921093 ObjectMeta : metav1.ObjectMeta {
@@ -1109,9 +1110,7 @@ func createOrUpdateEnvSecret(ctx context.Context, k8sClient client.Client, names
11091110 }
11101111
11111112 // Secret exists, merge the new data with existing data
1112- for key , value := range secretData {
1113- existingSecret .Data [key ] = value
1114- }
1113+ maps .Copy (existingSecret .Data , secretData )
11151114
11161115 if err := k8sClient .Update (ctx , existingSecret ); err != nil {
11171116 return fmt .Errorf ("failed to update existing secret: %v" , err )
0 commit comments