@@ -31,11 +31,6 @@ func (k KubeConfig) Delete(context string) error {
31
31
// regional Kubernetes cluster
32
32
func (k KubeConfig ) AddRegionalCluster (project string , cluster string , region string , context string ) error {
33
33
kubeconfig := path .Join (k .dir , context )
34
- envs := []string {
35
- "CLOUDSDK_CONTAINER_USE_V1_API_CLIENT=false" ,
36
- "CLOUDSDK_CONTAINER_USE_V1_API=false" ,
37
- fmt .Sprintf ("KUBECONFIG=%s" , kubeconfig ),
38
- }
39
34
args := []string {
40
35
"beta" ,
41
36
"container" ,
@@ -45,8 +40,12 @@ func (k KubeConfig) AddRegionalCluster(project string, cluster string, region st
45
40
fmt .Sprintf ("--region=%s" , region ),
46
41
fmt .Sprintf ("--project=%s" , project ),
47
42
}
48
- _ , err := k .commander .Execute ("gcloud" , args , envs )
49
- if err != nil {
43
+ envs := []string {
44
+ "CLOUDSDK_CONTAINER_USE_V1_API_CLIENT=false" ,
45
+ "CLOUDSDK_CONTAINER_USE_V1_API=false" ,
46
+ fmt .Sprintf ("KUBECONFIG=%s" , kubeconfig ),
47
+ }
48
+ if _ , err := k .commander .Execute ("gcloud" , args , envs ); err != nil {
50
49
return err
51
50
}
52
51
@@ -57,9 +56,6 @@ func (k KubeConfig) AddRegionalCluster(project string, cluster string, region st
57
56
// zonal Kubernetes cluster
58
57
func (k KubeConfig ) AddZonalCluster (project string , cluster string , zone string , context string ) error {
59
58
kubeconfig := path .Join (k .dir , context )
60
- envs := []string {
61
- fmt .Sprintf ("KUBECONFIG=%s" , kubeconfig ),
62
- }
63
59
args := []string {
64
60
"container" ,
65
61
"clusters" ,
@@ -68,8 +64,29 @@ func (k KubeConfig) AddZonalCluster(project string, cluster string, zone string,
68
64
fmt .Sprintf ("--zone=%s" , zone ),
69
65
fmt .Sprintf ("--project=%s" , project ),
70
66
}
71
- _ , err := k .commander .Execute ("gcloud" , args , envs )
72
- if err != nil {
67
+ envs := []string {
68
+ fmt .Sprintf ("KUBECONFIG=%s" , kubeconfig ),
69
+ }
70
+ if _ , err := k .commander .Execute ("gcloud" , args , envs ); err != nil {
71
+ return err
72
+ }
73
+
74
+ return nil
75
+ }
76
+
77
+ // RenameContext renames a Kubernetes context
78
+ func (k KubeConfig ) RenameContext (oldCtx string , newCtx string ) error {
79
+ kubeconfig := path .Join (k .dir , newCtx )
80
+ args := []string {
81
+ "config" ,
82
+ "rename-context" ,
83
+ oldCtx ,
84
+ newCtx ,
85
+ }
86
+ envs := []string {
87
+ fmt .Sprintf ("KUBECONFIG=%s" , kubeconfig ),
88
+ }
89
+ if _ , err := k .commander .Execute ("kubectl" , args , envs ); err != nil {
73
90
return err
74
91
}
75
92
0 commit comments