提交 7dc16a53 编写于 作者: R richardxz

change kubectl pods' namespace from kubesphere to kubesphere-controls, and...

change kubectl pods' namespace from kubesphere to kubesphere-controls, and ensure delete kubectl-rs when user is deleted
上级 f1d5ab3a
......@@ -66,11 +66,11 @@ func preCheck() error {
return err
}
for _, ns := range nsList.Items {
if ns.Name == constants.NameSpace {
if ns.Name == constants.KubeSphereControlNameSpace {
return nil
}
}
namespace := v1.Namespace{ObjectMeta: meta_v1.ObjectMeta{Name: constants.NameSpace}}
namespace := v1.Namespace{ObjectMeta: meta_v1.ObjectMeta{Name: constants.KubeSphereControlNameSpace}}
_, err = k8sClient.CoreV1().Namespaces().Create(&namespace)
return err
}
......
......@@ -26,9 +26,9 @@ type PageableResponse struct {
}
const (
APIVERSION = "v1alpha1"
KIND = "kubesphere"
NameSpace = "kubesphere"
APIVERSION = "v1alpha1"
KIND = "kubesphere"
KubeSphereControlNameSpace = "kubesphere-controls-system"
DataHome = "/etc/kubesphere"
IngressControllerFolder = DataHome + "/ingress-controller"
......
......@@ -34,6 +34,7 @@ import (
"k8s.io/client-go/tools/cache"
"kubesphere.io/kubesphere/pkg/client"
"kubesphere.io/kubesphere/pkg/constants"
"kubesphere.io/kubesphere/pkg/options"
)
......@@ -42,7 +43,7 @@ const (
admin = "admin"
editor = "editor"
viewer = "viewer"
kubectlNamespace = "kubesphere"
kubectlNamespace = constants.KubeSphereControlNameSpace
kubectlConfigKey = "config"
openpitrix_runtime = "openpitrix_runtime"
)
......
......@@ -35,6 +35,7 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"kubesphere.io/kubesphere/pkg/client"
"kubesphere.io/kubesphere/pkg/constants"
"kubesphere.io/kubesphere/pkg/options"
)
......@@ -42,7 +43,6 @@ const (
caPath = "/etc/kubernetes/pki/ca.crt"
keyPath = "/etc/kubernetes/pki/ca.key"
clusterName = "kubernetes"
kubectlNamespace = "kubesphere"
kubectlConfigKey = "config"
)
......@@ -246,7 +246,7 @@ func CreateKubeConfig(user string) error {
data := map[string]string{"config": string(config)}
var configmap = v1.ConfigMap{TypeMeta: metav1.TypeMeta{Kind: "Configmap", APIVersion: "v1"}, ObjectMeta: metav1.ObjectMeta{Name: user}, Data: data}
_, err = k8sClient.CoreV1().ConfigMaps(kubectlNamespace).Create(&configmap)
_, err = k8sClient.CoreV1().ConfigMaps(constants.KubeSphereControlNameSpace).Create(&configmap)
if err != nil {
glog.Errorln(err)
return err
......@@ -257,7 +257,7 @@ func CreateKubeConfig(user string) error {
func GetKubeConfig(user string) (string, error) {
k8sClient := client.NewK8sClient()
configmap, err := k8sClient.CoreV1().ConfigMaps(kubectlNamespace).Get(user, metav1.GetOptions{})
configmap, err := k8sClient.CoreV1().ConfigMaps(constants.KubeSphereControlNameSpace).Get(user, metav1.GetOptions{})
if err != nil {
glog.Errorln(err)
return "", err
......@@ -267,7 +267,7 @@ func GetKubeConfig(user string) (string, error) {
func DelKubeConfig(user string) error {
k8sClient := client.NewK8sClient()
err := k8sClient.CoreV1().ConfigMaps(kubectlNamespace).Delete(user, &metav1.DeleteOptions{})
err := k8sClient.CoreV1().ConfigMaps(constants.KubeSphereControlNameSpace).Delete(user, &metav1.DeleteOptions{})
if err != nil {
glog.Errorln(err)
return err
......
......@@ -31,7 +31,7 @@ import (
"kubesphere.io/kubesphere/pkg/options"
)
const namespace = constants.NameSpace
const namespace = constants.KubeSphereControlNameSpace
type kubectlPodInfo struct {
Namespace string `json:"namespace"`
......@@ -130,6 +130,14 @@ func DelKubectlPod(user string) error {
return err
}
var replicas int32
replicas = 0
deploy.Spec.Replicas = &replicas
_, err = k8sClient.AppsV1beta2().Deployments(namespace).Update(deploy)
if err != nil {
return err
}
err = k8sClient.AppsV1beta2().Deployments(namespace).Delete(user, &meta_v1.DeleteOptions{})
if err != nil {
return err
......@@ -143,6 +151,15 @@ func DelKubectlPod(user string) error {
}
for _, rs := range rsList.Items {
var replicas int32
replicas = 0
rs.Spec.Replicas = &replicas
_, err = k8sClient.AppsV1beta2().ReplicaSets(namespace).Update(&rs)
if err != nil {
glog.Error(err)
return err
}
err = k8sClient.AppsV1beta2().ReplicaSets(namespace).Delete(rs.Name, &meta_v1.DeleteOptions{})
if err != nil {
glog.Error(err)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册