diff --git a/.gitignore b/.gitignore index f69c67e1c8..5e46ee4518 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ *.o *.a *.so +*.exe # Folders .idea diff --git a/pkg/microservice/aslan/core/environment/service/environment.go b/pkg/microservice/aslan/core/environment/service/environment.go index 262ea4c194..2e464cbd5b 100644 --- a/pkg/microservice/aslan/core/environment/service/environment.go +++ b/pkg/microservice/aslan/core/environment/service/environment.go @@ -1960,15 +1960,16 @@ func DeleteProduct(username, envName, productName, requestID string, isDelete bo notify.SendMessage(username, title, content, requestID, log) } }() + + err = commonrepo.NewProductColl().Delete(envName, productName) + if err != nil { + log.Errorf("Product.Delete error: %v", err) + } if productInfo.Production { - err = commonrepo.NewProductColl().Delete(envName, productName) - if err != nil { - log.Errorf("Product.Delete error: %v", err) - } return } - if isDelete { + if isDelete { svcNames := make([]string, 0) for svcName := range productInfo.GetServiceMap() { svcNames = append(svcNames, svcName) @@ -2000,10 +2001,6 @@ func DeleteProduct(username, envName, productName, requestID string, isDelete bo return } } - err = commonrepo.NewProductColl().Delete(envName, productName) - if err != nil { - log.Errorf("Product.Delete error: %v", err) - } }() } diff --git a/pkg/microservice/aslan/core/environment/service/share_env.go b/pkg/microservice/aslan/core/environment/service/share_env.go index 3912d38e4c..032d15e3d4 100644 --- a/pkg/microservice/aslan/core/environment/service/share_env.go +++ b/pkg/microservice/aslan/core/environment/service/share_env.go @@ -1354,8 +1354,8 @@ func CheckServicesDeployedInSubEnvs(ctx context.Context, productName, envName st } type GetPortalServiceResponse struct { - DefaultGatewayIP string `json:"default_gateway_ip"` - Servers []SetupPortalServiceRequest `json:"servers"` + DefaultGatewayAddress string `json:"default_gateway_address"` + Servers []SetupPortalServiceRequest `json:"servers"` } func GetPortalService(ctx context.Context, productName, envName, serviceName string) (GetPortalServiceResponse, error) { @@ -1397,7 +1397,7 @@ func GetPortalService(ctx context.Context, productName, envName, serviceName str return resp, e.ErrGetPortalService.AddDesc("istio default gateway's lb doesn't have ip address") } for _, ing := range gatewaySvc.Status.LoadBalancer.Ingress { - resp.DefaultGatewayIP = ing.IP + resp.DefaultGatewayAddress = ing.IP } gwObj, err := istioClient.NetworkingV1alpha3().Gateways(ns).Get(ctx, gatewayName, metav1.GetOptions{}) diff --git a/pkg/microservice/aslan/server/rest/doc/docs.go b/pkg/microservice/aslan/server/rest/doc/docs.go index fe6c08fb30..7f5d23ed19 100644 --- a/pkg/microservice/aslan/server/rest/doc/docs.go +++ b/pkg/microservice/aslan/server/rest/doc/docs.go @@ -4842,6 +4842,13 @@ const docTemplate = `{ "registry_id": { "type": "string" }, + "related_envs": { + "description": "New Since v2.1.0", + "type": "array", + "items": { + "$ref": "#/definitions/service.SharedNSEnvs" + } + }, "render": { "$ref": "#/definitions/models.RenderInfo" }, @@ -5700,6 +5707,12 @@ const docTemplate = `{ } ] }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/models.ServiceResource" + } + }, "revision": { "type": "integer" }, @@ -6159,6 +6172,23 @@ const docTemplate = `{ "value": {} } }, + "models.ServiceResource": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "name": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, "models.WebHookType": { "type": "string", "enum": [ @@ -6903,7 +6933,7 @@ const docTemplate = `{ "service.GetPortalServiceResponse": { "type": "object", "properties": { - "default_gateway_ip": { + "default_gateway_address": { "type": "string" }, "servers": { @@ -7511,6 +7541,12 @@ const docTemplate = `{ } ] }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/models.ServiceResource" + } + }, "revision": { "type": "integer" }, @@ -7790,6 +7826,20 @@ const docTemplate = `{ } } }, + "service.SharedNSEnvs": { + "type": "object", + "properties": { + "env_name": { + "type": "string" + }, + "production": { + "type": "boolean" + }, + "project_name": { + "type": "string" + } + } + }, "service.SvcDiffResult": { "type": "object", "properties": { diff --git a/pkg/microservice/aslan/server/rest/doc/swagger.json b/pkg/microservice/aslan/server/rest/doc/swagger.json index 96feda1d76..767a557897 100644 --- a/pkg/microservice/aslan/server/rest/doc/swagger.json +++ b/pkg/microservice/aslan/server/rest/doc/swagger.json @@ -4833,6 +4833,13 @@ "registry_id": { "type": "string" }, + "related_envs": { + "description": "New Since v2.1.0", + "type": "array", + "items": { + "$ref": "#/definitions/service.SharedNSEnvs" + } + }, "render": { "$ref": "#/definitions/models.RenderInfo" }, @@ -5691,6 +5698,12 @@ } ] }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/models.ServiceResource" + } + }, "revision": { "type": "integer" }, @@ -6150,6 +6163,23 @@ "value": {} } }, + "models.ServiceResource": { + "type": "object", + "properties": { + "group": { + "type": "string" + }, + "kind": { + "type": "string" + }, + "name": { + "type": "string" + }, + "version": { + "type": "string" + } + } + }, "models.WebHookType": { "type": "string", "enum": [ @@ -6894,7 +6924,7 @@ "service.GetPortalServiceResponse": { "type": "object", "properties": { - "default_gateway_ip": { + "default_gateway_address": { "type": "string" }, "servers": { @@ -7502,6 +7532,12 @@ } ] }, + "resources": { + "type": "array", + "items": { + "$ref": "#/definitions/models.ServiceResource" + } + }, "revision": { "type": "integer" }, @@ -7781,6 +7817,20 @@ } } }, + "service.SharedNSEnvs": { + "type": "object", + "properties": { + "env_name": { + "type": "string" + }, + "production": { + "type": "boolean" + }, + "project_name": { + "type": "string" + } + } + }, "service.SvcDiffResult": { "type": "object", "properties": { diff --git a/pkg/microservice/aslan/server/rest/doc/swagger.yaml b/pkg/microservice/aslan/server/rest/doc/swagger.yaml index 8fed7e7e63..61c907d373 100644 --- a/pkg/microservice/aslan/server/rest/doc/swagger.yaml +++ b/pkg/microservice/aslan/server/rest/doc/swagger.yaml @@ -106,6 +106,11 @@ definitions: type: integer registry_id: type: string + related_envs: + description: New Since v2.1.0 + items: + $ref: '#/definitions/service.SharedNSEnvs' + type: array render: $ref: '#/definitions/models.RenderInfo' services: @@ -673,6 +678,10 @@ definitions: allOf: - $ref: '#/definitions/template.ServiceRender' description: New since 1.9.0 used to replace service renders in render_set + resources: + items: + $ref: '#/definitions/models.ServiceResource' + type: array revision: type: integer service_name: @@ -992,6 +1001,17 @@ definitions: $ref: '#/definitions/models.ParameterSettingType' value: {} type: object + models.ServiceResource: + properties: + group: + type: string + kind: + type: string + name: + type: string + version: + type: string + type: object models.WebHookType: enum: - feishu @@ -1502,7 +1522,7 @@ definitions: type: object service.GetPortalServiceResponse: properties: - default_gateway_ip: + default_gateway_address: type: string servers: items: @@ -1897,6 +1917,10 @@ definitions: allOf: - $ref: '#/definitions/template.ServiceRender' description: New since 1.9.0 used to replace service renders in render_set + resources: + items: + $ref: '#/definitions/models.ServiceResource' + type: array revision: type: integer service_name: @@ -2082,6 +2106,15 @@ definitions: port_protocol: type: string type: object + service.SharedNSEnvs: + properties: + env_name: + type: string + production: + type: boolean + project_name: + type: string + type: object service.SvcDiffResult: properties: chart_name: