MCPcopy Create free account
hub / github.com/OpenAtomFoundation/SmartIDE / getDevContainerPod_DeploymentDefinition

Function getDevContainerPod_DeploymentDefinition

cli/cmd/start/k8s.go:871–912  ·  view source on GitHub ↗
(kubernetes k8s.KubernetesUtil, smartideK8sConfig config.SmartIdeK8SConfig)

Source from the content-addressed store, hash-verified

869}
870
871func getDevContainerPod_DeploymentDefinition(kubernetes k8s.KubernetesUtil, smartideK8sConfig config.SmartIdeK8SConfig) (
872 podInstance *coreV1.Pod, serviceName string, err error) {
873 devContainerName := smartideK8sConfig.Workspace.DevContainer.ServiceName
874 isContain := false
875 for _, deployment := range smartideK8sConfig.Workspace.Deployments {
876 for _, container := range deployment.Spec.Template.Spec.Containers {
877 if container.Name == devContainerName {
878
879 selector := ""
880 index := 0
881 for key, value := range deployment.Spec.Selector.MatchLabels {
882 if index == 0 {
883 selector += fmt.Sprintf("%v=%v", key, value)
884 }
885 index++
886 }
887
888 podInstance, err = kubernetes.GetPodInstanceBySelector(selector)
889 if err != nil {
890 return podInstance, "", err
891 }
892
893 for _, service := range smartideK8sConfig.Workspace.Services {
894 for key, value := range deployment.Spec.Selector.MatchLabels {
895 if _, ok := service.Spec.Selector[key]; ok && service.Spec.Selector[key] == value {
896 serviceName = service.Name
897 break
898 }
899 }
900 }
901 isContain = true
902 break
903
904 }
905 }
906
907 if isContain {
908 break
909 }
910 }
911 return
912}
913
914func GetDevContainerPod(kubernetes k8s.KubernetesUtil, smartideK8sConfig config.SmartIdeK8SConfig) (
915 podInstance *coreV1.Pod, serviceName string, err error) {

Callers 1

GetDevContainerPodFunction · 0.85

Calls 1

Tested by

no test coverage detected