forked from nudtpc/pcm-kubernetes
fix Coroutines refer to the problem of circular variables
This commit is contained in:
parent
49a59a4d05
commit
0c209f4355
|
@ -34,6 +34,7 @@ func (l *GetAppDetailLogic) GetAppDetail(in *kubernetes.AppDetailReq) (*kubernet
|
||||||
wg.Add(len(pkg.KClients))
|
wg.Add(len(pkg.KClients))
|
||||||
//查询指定集群下指定命名空间下和名字的deployment详情
|
//查询指定集群下指定命名空间下和名字的deployment详情
|
||||||
for k := range pkg.KClients {
|
for k := range pkg.KClients {
|
||||||
|
cli := k
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
//转换赋值
|
//转换赋值
|
||||||
|
@ -47,17 +48,17 @@ func (l *GetAppDetailLogic) GetAppDetail(in *kubernetes.AppDetailReq) (*kubernet
|
||||||
kSecret kubernetes.Secret
|
kSecret kubernetes.Secret
|
||||||
)
|
)
|
||||||
appDetail := kubernetes.AppDetail{
|
appDetail := kubernetes.AppDetail{
|
||||||
ClusterName: k,
|
ClusterName: cli,
|
||||||
}
|
}
|
||||||
//获取指定命名空间下的deployment
|
//获取指定命名空间下的deployment
|
||||||
deployment, err := pkg.KClients[k].ClientSet.AppsV1().Deployments(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
deployment, err := pkg.KClients[cli].ClientSet.AppsV1().Deployments(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(deployment, &kDeployment)
|
tool.Convert(deployment, &kDeployment)
|
||||||
appDetail.Deployment = &kDeployment
|
appDetail.Deployment = &kDeployment
|
||||||
}
|
}
|
||||||
|
|
||||||
//查询指定集群下指定命名空间下和名字的statefulSets详情
|
//查询指定集群下指定命名空间下和名字的statefulSets详情
|
||||||
statefulSets, err := pkg.KClients[k].ClientSet.AppsV1().StatefulSets(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
statefulSets, err := pkg.KClients[cli].ClientSet.AppsV1().StatefulSets(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(statefulSets, &kStatefulSets)
|
tool.Convert(statefulSets, &kStatefulSets)
|
||||||
appDetail.StatefulSet = &kStatefulSets
|
appDetail.StatefulSet = &kStatefulSets
|
||||||
|
@ -66,31 +67,31 @@ func (l *GetAppDetailLogic) GetAppDetail(in *kubernetes.AppDetailReq) (*kubernet
|
||||||
// 查询 Ingress 资源
|
// 查询 Ingress 资源
|
||||||
labelSelector := fmt.Sprintf("cloud.sealos.io/app-deploy-manager=%s", in.Name)
|
labelSelector := fmt.Sprintf("cloud.sealos.io/app-deploy-manager=%s", in.Name)
|
||||||
// 执行查询操作,获取匹配标签的 Ingress 资源列表
|
// 执行查询操作,获取匹配标签的 Ingress 资源列表
|
||||||
ingresses, err := pkg.KClients[k].ClientSet.NetworkingV1().Ingresses(in.Namespace).List(l.ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
ingresses, err := pkg.KClients[cli].ClientSet.NetworkingV1().Ingresses(in.Namespace).List(l.ctx, metav1.ListOptions{LabelSelector: labelSelector})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(ingresses, &kIngresses)
|
tool.Convert(ingresses, &kIngresses)
|
||||||
appDetail.IngressList = &kIngresses
|
appDetail.IngressList = &kIngresses
|
||||||
}
|
}
|
||||||
|
|
||||||
//查询 Service 资源
|
//查询 Service 资源
|
||||||
service, err := pkg.KClients[k].ClientSet.CoreV1().Services(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
service, err := pkg.KClients[cli].ClientSet.CoreV1().Services(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(service, &kService)
|
tool.Convert(service, &kService)
|
||||||
appDetail.Service = &kService
|
appDetail.Service = &kService
|
||||||
}
|
}
|
||||||
//查询configmap
|
//查询configmap
|
||||||
configmap, err := pkg.KClients[k].ClientSet.CoreV1().ConfigMaps(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
configmap, err := pkg.KClients[cli].ClientSet.CoreV1().ConfigMaps(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(configmap, &kConfigMap)
|
tool.Convert(configmap, &kConfigMap)
|
||||||
appDetail.ConfigMap = &kConfigMap
|
appDetail.ConfigMap = &kConfigMap
|
||||||
}
|
}
|
||||||
//查询hpa
|
//查询hpa
|
||||||
hpa, err := pkg.KClients[k].ClientSet.AutoscalingV1().HorizontalPodAutoscalers(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
hpa, err := pkg.KClients[cli].ClientSet.AutoscalingV1().HorizontalPodAutoscalers(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(hpa, &kHpa)
|
tool.Convert(hpa, &kHpa)
|
||||||
appDetail.HorizontalPodAutoscaler = &kHpa
|
appDetail.HorizontalPodAutoscaler = &kHpa
|
||||||
}
|
}
|
||||||
secret, err := pkg.KClients[k].ClientSet.CoreV1().Secrets(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
secret, err := pkg.KClients[cli].ClientSet.CoreV1().Secrets(in.Namespace).Get(l.ctx, in.Name, metav1.GetOptions{})
|
||||||
if err == nil {
|
if err == nil {
|
||||||
tool.Convert(secret, &kSecret)
|
tool.Convert(secret, &kSecret)
|
||||||
appDetail.Secret = &kSecret
|
appDetail.Secret = &kSecret
|
||||||
|
|
|
@ -35,6 +35,7 @@ func (l *GetAppPodsByAppNameLogic) GetAppPodsByAppName(in *kubernetes.AppDetailR
|
||||||
wg.Add(len(pkg.KClients))
|
wg.Add(len(pkg.KClients))
|
||||||
//查询指定集群下指定命名空间下和名字的deployment详情
|
//查询指定集群下指定命名空间下和名字的deployment详情
|
||||||
for k, _ := range pkg.KClients {
|
for k, _ := range pkg.KClients {
|
||||||
|
cli := k
|
||||||
go func() {
|
go func() {
|
||||||
defer wg.Done()
|
defer wg.Done()
|
||||||
appDetail := kubernetes.PodDetail{}
|
appDetail := kubernetes.PodDetail{}
|
||||||
|
@ -42,12 +43,12 @@ func (l *GetAppPodsByAppNameLogic) GetAppPodsByAppName(in *kubernetes.AppDetailR
|
||||||
appSelector := fmt.Sprintf("app=%s", in.Name)
|
appSelector := fmt.Sprintf("app=%s", in.Name)
|
||||||
var KPodList []*kubernetes.Pod
|
var KPodList []*kubernetes.Pod
|
||||||
//查询pods
|
//查询pods
|
||||||
pods, err := pkg.KClients[k].ClientSet.CoreV1().Pods(in.Namespace).List(context.Background(), metav1.ListOptions{LabelSelector: appSelector})
|
pods, err := pkg.KClients[cli].ClientSet.CoreV1().Pods(in.Namespace).List(context.Background(), metav1.ListOptions{LabelSelector: appSelector})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logx.Error(err.Error())
|
logx.Error(err.Error())
|
||||||
}
|
}
|
||||||
//查询指定集群下指定命名空间下和名字的statefulSets详情
|
//查询指定集群下指定命名空间下和名字的statefulSets详情
|
||||||
statefulSets, _ := pkg.KClients[k].ClientSet.AppsV1().StatefulSets(in.Namespace).Get(context.Background(), in.Name, metav1.GetOptions{})
|
statefulSets, _ := pkg.KClients[cli].ClientSet.AppsV1().StatefulSets(in.Namespace).Get(context.Background(), in.Name, metav1.GetOptions{})
|
||||||
//计算存储卷大小
|
//计算存储卷大小
|
||||||
if statefulSets.Spec.VolumeClaimTemplates != nil {
|
if statefulSets.Spec.VolumeClaimTemplates != nil {
|
||||||
//存储卷大小求和
|
//存储卷大小求和
|
||||||
|
@ -60,7 +61,7 @@ func (l *GetAppPodsByAppNameLogic) GetAppPodsByAppName(in *kubernetes.AppDetailR
|
||||||
if len(pods.Items) > 0 {
|
if len(pods.Items) > 0 {
|
||||||
tool.Convert(pods.Items, &KPodList)
|
tool.Convert(pods.Items, &KPodList)
|
||||||
appDetail.PodList = KPodList
|
appDetail.PodList = KPodList
|
||||||
appDetail.ClusterName = k
|
appDetail.ClusterName = cli
|
||||||
details = append(details, &appDetail)
|
details = append(details, &appDetail)
|
||||||
}
|
}
|
||||||
}()
|
}()
|
||||||
|
|
Loading…
Reference in New Issue