(resource model.Resource)
| 558 | } |
| 559 | |
| 560 | func (c *Cloud) appendAddtionalResourcesData(resource model.Resource) model.Resource { |
| 561 | dbItem, err := getContentFromAdditionalResource(c.basicInfo.Lcuuid, c.db.DB) |
| 562 | if err != nil { |
| 563 | log.Errorf("domain (lcuuid: %s) get additional resources failed: %s", c.basicInfo.Lcuuid, err, logger.NewORGPrefix(c.orgID)) |
| 564 | return resource |
| 565 | } |
| 566 | if dbItem == nil { |
| 567 | log.Debugf("domain (lcuuid: %s) has no additional resources to append", c.basicInfo.Lcuuid, logger.NewORGPrefix(c.orgID)) |
| 568 | return resource |
| 569 | } |
| 570 | |
| 571 | content := dbItem.CompressedContent |
| 572 | if len(dbItem.CompressedContent) == 0 { |
| 573 | content = []byte(dbItem.Content) |
| 574 | } |
| 575 | var additionalResource model.AdditionalResource |
| 576 | if err = json.Unmarshal(content, &additionalResource); err != nil { |
| 577 | log.Errorf("domain (lcuuid: %s) json unmarshal content failed: %s", c.basicInfo.Lcuuid, err.Error(), logger.NewORGPrefix(c.orgID)) |
| 578 | return resource |
| 579 | } |
| 580 | |
| 581 | resource.AZs = append(resource.AZs, additionalResource.AZs...) |
| 582 | resource.VPCs = append(resource.VPCs, additionalResource.VPCs...) |
| 583 | resource.Networks = append(resource.Networks, additionalResource.Subnets...) |
| 584 | resource.Subnets = append(resource.Subnets, additionalResource.SubnetCIDRs...) |
| 585 | resource.Hosts = append(resource.Hosts, additionalResource.Hosts...) |
| 586 | resource.VMs = append(resource.VMs, additionalResource.CHosts...) |
| 587 | resource.VInterfaces = append(resource.VInterfaces, additionalResource.VInterfaces...) |
| 588 | resource.IPs = append(resource.IPs, additionalResource.IPs...) |
| 589 | resource = c.appendCloudTags(resource, additionalResource) |
| 590 | resource.LBs = append(resource.LBs, additionalResource.LB...) |
| 591 | resource.LBListeners = append(resource.LBListeners, additionalResource.LBListeners...) |
| 592 | resource.LBTargetServers = append(resource.LBTargetServers, additionalResource.LBTargetServers...) |
| 593 | resource.PeerConnections = append(resource.PeerConnections, additionalResource.PeerConnections...) |
| 594 | return resource |
| 595 | } |
| 596 | |
| 597 | // getContentFromAdditionalResource gets domain_additional_resource by uuid, get the field content if it exists, |
| 598 | // otherwise get the field compressed_content. |
no test coverage detected