Update service.go

This commit is contained in:
dqzboy 2022-09-25 21:12:43 +08:00 committed by GitHub
parent 0cbfa83182
commit 53b5b51a12
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -31,13 +31,11 @@ type ServiceCreate struct {
//获取service列表支持过滤、排序、分页 //获取service列表支持过滤、排序、分页
func (s *servicev1) GetServices(filterName, namespace string, limit, page int) (servicesResp *ServicesResp, err error) { func (s *servicev1) GetServices(filterName, namespace string, limit, page int) (servicesResp *ServicesResp, err error) {
//获取serviceList类型的service列表
serviceList, err := K8s.ClientSet.CoreV1().Services(namespace).List(context.TODO(), metav1.ListOptions{}) serviceList, err := K8s.ClientSet.CoreV1().Services(namespace).List(context.TODO(), metav1.ListOptions{})
if err != nil { if err != nil {
logger.Error(errors.New("获取Service列表失败, " + err.Error())) logger.Error(errors.New("获取Service列表失败, " + err.Error()))
return nil, errors.New("获取Service列表失败, " + err.Error()) return nil, errors.New("获取Service列表失败, " + err.Error())
} }
//将serviceList中的service列表(Items)放进dataselector对象中进行排序
selectableData := &dataSelector{ selectableData := &dataSelector{
GenericDataList: s.toCells(serviceList.Items), GenericDataList: s.toCells(serviceList.Items),
DataSelect: &DataSelectQuery{ DataSelect: &DataSelectQuery{
@ -73,9 +71,7 @@ func (s *servicev1) GetServicetDetail(serviceName, namespace string) (service *c
return service, nil return service, nil
} }
//创建service,,接收ServiceCreate对象
func (s *servicev1) CreateService(data *ServiceCreate) (err error) { func (s *servicev1) CreateService(data *ServiceCreate) (err error) {
//将data中的数据组装成corev1.Service对象
service := &corev1.Service{ service := &corev1.Service{
//ObjectMeta中定义资源名、命名空间以及标签 //ObjectMeta中定义资源名、命名空间以及标签
ObjectMeta: metav1.ObjectMeta{ ObjectMeta: metav1.ObjectMeta{
@ -83,7 +79,7 @@ func (s *servicev1) CreateService(data *ServiceCreate) (err error) {
Namespace: data.Namespace, Namespace: data.Namespace,
Labels: data.Label, Labels: data.Label,
}, },
//Spec中定义类型端口选择器
Spec: corev1.ServiceSpec{ Spec: corev1.ServiceSpec{
Type: corev1.ServiceType(data.Type), Type: corev1.ServiceType(data.Type),
Ports: []corev1.ServicePort{ Ports: []corev1.ServicePort{
@ -100,7 +96,6 @@ func (s *servicev1) CreateService(data *ServiceCreate) (err error) {
Selector: data.Label, Selector: data.Label,
}, },
} }
//默认ClusterIP,这里是判断NodePort,添加配置
if data.NodePort != 0 && data.Type == "NodePort" { if data.NodePort != 0 && data.Type == "NodePort" {
service.Spec.Ports[0].NodePort = data.NodePort service.Spec.Ports[0].NodePort = data.NodePort
} }