service

package
v0.7.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 22, 2022 License: Apache-2.0 Imports: 22 Imported by: 4

README

API 호출기준 CRUD 에 따른 명명규칙

  1. 조회(목록) : GetXXXList
  2. 조회(항목) : GetXXXData
  3. 등록 : RegXXX
  4. 삭제 : DelXXX

CommonHandler

NameSpaceHandler

  • GetNameSpaceList
  • RegNameSpace
  • CreateDefaultNameSpace : Namespace가 없는경우 기본으로 1개의 namespace를 자동으로 생성
  • DelNameSpace

CloudConnectionHandler ResourceHandler McisHandler


handler의 return 값중 두번째 인자는 model.WebStatus 로 한다. WebStatus.Status 는 code를, Message에는 message를 error가 났을 때 Status = 500, Message에는 error의 값을

정상적으로 호출했으나 해당 내용이 Error일 때는 최종 수신단(UI)에서 StatusCode에 따라 결정한다.


TODO

  1. TB : lookup, search 등 method 호출 테스트 필요(UI등 에서 어떻게 사용될 지)
  2. TB : lifecycle 변경의 경우 TB API명세에 없는데 호출 됨.
  3. TB : lifecycle 호출하는 handlerMethod 명 변경해야하나?? Get, Reg, Del 외에...

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DragonFlyURL = os.Getenv("DRAGONFLY_URL")
View Source
var LadyBugURL = os.Getenv("LADYBUG_URL")
View Source
var SpiderURL = os.Getenv("SPIDER_URL")
View Source
var TumbleBugURL = os.Getenv("TUMBLE_URL")

Functions

func AddVmToNLBTargetGroup added in v0.6.1

func AddVmToNLBTargetGroup(nameSpaceID string, mcisID string, nlbID string, nlbTargetGroupReq *tbmcis.TbNLBAddRemoveVMReq) (*tbmcis.TbNLBInfo, model.WebStatus)

NLB의 TargetGroup에 VM 추가

func AsyncAttachDetachDataDiskToVM added in v0.6.1

func AsyncAttachDetachDataDiskToVM(nameSpaceID string, mcisID string, vmID string, optionParam string, attachDetachDataDiskReq *tbmcir.TbAttachDetachDataDiskReq, c echo.Context)

AsyncAttachDetachDataDiskToVM

func AsyncDelDataDisk added in v0.6.1

func AsyncDelDataDisk(nameSpaceID string, dataDiskID string, c echo.Context)

func AsyncRegDataDisk added in v0.6.1

func AsyncRegDataDisk(nameSpaceID string, dataDiskReqInfo *webtool.DataDiskCreateReq, c echo.Context)

Async로 Disk 생성 : 항목 안에 attached Vm 정보가 있으면 생성 후 attach까지 한다.

func AsyncRegVm added in v0.4.0

func AsyncRegVm(nameSpaceID string, mcisID string, vmInfo *tbmcis.TbVmReq, c echo.Context)

VM 등록

func AsyncRegVmSnapshot added in v0.6.1

func AsyncRegVmSnapshot(nameSpaceID string, mcisID string, vmID string, vmSnapshotReq *mcis.TbVmSnapshotReq, c echo.Context)

func AttachDetachDataDiskToVM added in v0.6.1

func AttachDetachDataDiskToVM(nameSpaceID string, mcisID string, vmID string, optionParam string, attachDetachDataDiskReq *tbmcir.TbAttachDetachDataDiskReq) (*tbmcis.TbVmInfo, model.WebStatus)

VM 에 DataDisk를 Attach 또는 Detach ( commane로 구분 )

func CallLoginInfo added in v0.4.0

func CallLoginInfo(c echo.Context) model.LoginInfo

해당 유저가 유효한지만 체크. : store에 저장되어 있으면 OK. TODO : token이 유효하면 시간연장, 유효하지 않으면 refresh token이 유효하면 시간연장, 둘다 expired되었으면 login으로

func ClearWebsocketMessage added in v0.4.5

func ClearWebsocketMessage(expireHour int, c echo.Context)

일정 시간이 지난 data는 제거. : 0이면 기본값(24), 0보다 크면 음수로 바꾸어 계산.

func CommandMcis added in v0.4.0

func CommandMcis(nameSpaceID string, mcisID string, mcisCommandInfo *tbmcis.McisCmdReq) (tbmcis.RestPostCmdMcisResponseWrapper, model.WebStatus)

MCIS에 명령 내리기

func CommandVmOfMcis added in v0.4.0

func CommandVmOfMcis(nameSpaceID string, mcisID string, vmID string, mcisCommandInfo *tbmcis.McisCmdReq) (tbmcis.RestPostCmdMcisVmResponse, model.WebStatus)

특정 VM에 명령내리기

func CreateDefaultNamespace added in v0.4.0

func CreateDefaultNamespace() (*tbcommon.TbNsInfo, model.WebStatus)

저장된 namespace가 없을 때 최초 1개 생성하고 해당 namespace 정보를 return : 검증 필요(TODO : 이미 namespace가 있어서 확인 못함)

func DataDiskGet added in v0.6.1

func DataDiskGet(nameSpaceID string, dataDiskID string) (*tbmcir.TbDataDiskInfo, model.WebStatus)

DataDisk 상세 조회

func DataDiskPut added in v0.6.1

func DataDiskPut(nameSpaceID string, dataDiskID string, dataDiskUpsizeReq *tbmcir.TbDataDiskUpsizeReq) (*tbmcir.TbDataDiskInfo, model.WebStatus)

func DelAllDataDisk added in v0.6.1

func DelAllDataDisk(nameSpaceID string) (model.WebStatus, model.WebStatus)

Namespace내 모든 DataDisk 삭제

func DelAllMcis added in v0.4.0

func DelAllMcis(nameSpaceID string, optionParam string) (tbcommon.TbSimpleMsg, model.WebStatus)

Delete All MCISs

func DelAllMcisPolicy added in v0.4.0

func DelAllMcisPolicy(nameSpaceID string) (tbcommon.TbSimpleMsg, model.WebStatus)

func DelAllMyImage added in v0.6.1

func DelAllMyImage(nameSpaceID string) (model.WebStatus, model.WebStatus)

Namespace내 모든 MyImage 삭제

func DelAllNameSpace added in v0.4.5

func DelAllNameSpace() (tbcommon.TbSimpleMsg, model.WebStatus)

NameSpace 삭제

func DelAllNlb added in v0.6.1

func DelAllNlb(nameSpaceID string, mcisID string) (io.ReadCloser, model.WebStatus)

특정 Namespace의 MCIS 내 모든 NLB 제거

func DelAllSecurityGroup added in v0.4.0

func DelAllSecurityGroup(nameSpaceID string) (model.WebStatus, model.WebStatus)

해당 Namespace의 모든 SecurityGroup 삭제

func DelAllSshKey added in v0.4.5

func DelAllSshKey(nameSpaceID string) (tbcommon.TbSimpleMsg, model.WebStatus)

전체 sshKey 삭제

func DelAllTbConfig added in v0.4.5

func DelAllTbConfig() (tbcommon.TbSimpleMsg, model.WebStatus)

func DelAllVMSpec added in v0.4.0

func DelAllVMSpec(nameSpaceID string) (model.WebStatus, model.WebStatus)

해당 namespace의 모든 VMSpec 삭제 : TODO : 로그인 유저의 동일 namespace일 때만 삭제가능하도록

func DelAllVirtualMachineImage added in v0.4.0

func DelAllVirtualMachineImage(nameSpaceID string) (model.WebStatus, model.WebStatus)

해당 namespace의 모든 VirtualMachineImage 삭제

func DelAllVpc added in v0.4.5

func DelAllVpc(nameSpaceID string) (tbcommon.TbSimpleMsg, model.WebStatus)

전체 vpc 삭제

func DelCloudConnectionConfig added in v0.4.0

func DelCloudConnectionConfig(configName string) (io.ReadCloser, model.WebStatus)

CloudConnectionConfigInfo 삭제

func DelCluster added in v0.4.0

func DelCluster(nameSpaceID string, clusterName string) (*ladybug.StatusInfo, model.WebStatus)

Cluster 삭제

func DelClusterByAsync added in v0.4.5

func DelClusterByAsync(nameSpaceID string, clusterName string, c echo.Context)

Cluster 삭제 비동기 처리

func DelConfig added in v0.4.0

func DelConfig(configID string) (io.ReadCloser, model.WebStatus)

Driver 삭제

func DelCredential added in v0.4.0

func DelCredential(credentialName string) (model.WebStatus, model.WebStatus)

Credential 삭제

func DelDataDisk added in v0.6.1

func DelDataDisk(nameSpaceID string, dataDiskID string) (model.WebStatus, model.WebStatus)

DataDisk 삭제

func DelDefaultResources added in v0.5.1

func DelDefaultResources(nameSpaceID string) (*tbcommon.TbIdList, model.WebStatus)

func DelDriver added in v0.4.0

func DelDriver(driverName string) (io.ReadCloser, model.WebStatus)

Driver 삭제

func DelFirewallRules added in v0.5.1

func DelFirewallRules(nameSpaceID string, securityGroupID string, firewallRuleReq *tbmcir.TbFirewallRulesWrapper) (*tbmcir.TbSecurityGroupInfo, model.WebStatus)

func DelMcis added in v0.4.0

func DelMcis(nameSpaceID string, mcisID string, optionParam string) (io.ReadCloser, model.WebStatus)

MCIS 삭제. TODO : 해당 namespace의 MCIS만 삭제 가능... 창 두개에서 1개는 MCIS삭제, 1개는 namespace 변경이 있을 수 있으므로 UI에서 namespace도 넘겨서 비교할 것. optionParam은 없거나 force, terminate 가 있음.

func DelMcisPolicy added in v0.4.0

func DelMcisPolicy(nameSpaceID string, mcisID string) (io.ReadCloser, model.WebStatus)

func DelMonitoringAlert added in v0.4.0

func DelMonitoringAlert(taskName string) (io.ReadCloser, model.WebStatus)

알람 제거 Delete Monitoring Alert

func DelMonitoringAlertEventHandler added in v0.4.0

func DelMonitoringAlertEventHandler(eventHandlerType string, eventName string) (io.ReadCloser, model.WebStatus)

알람 제거 Delete monitoring alert event-handler

func DelMyImage added in v0.6.1

func DelMyImage(nameSpaceID string, myImageID string) (model.WebStatus, model.WebStatus)

MyImage 삭제

func DelNameSpace added in v0.4.0

func DelNameSpace(nameSpaceID string) (tbcommon.TbSimpleMsg, model.WebStatus)

NameSpace 삭제

func DelNlb added in v0.6.1

func DelNlb(nameSpaceID string, mcisID string, nlbID string, optionParam string) (io.ReadCloser, model.WebStatus)

DelNlb : nlbId 에 해당하는 nlb 제거

func DelNode added in v0.4.0

func DelNode(nameSpaceID string, clusterName string, node string) (*ladybug.StatusInfo, model.WebStatus)

Node 삭제

func DelObject added in v0.4.5

func DelObject(optionParam string) (tbcommon.TbSimpleMsg, model.WebStatus)

func DelObjects added in v0.4.5

func DelObjects(optionParam string) (tbcommon.TbSimpleMsg, model.WebStatus)

func DelPmksCluster added in v0.6.1

func DelPmksCluster(cluster string, clusterReqInfo spider.ClusterReqInfo) (*spider.SpClusterInfo, model.WebStatus)

PMKS Cluster 삭제

func DelPmksClusterByAsync added in v0.6.1

func DelPmksClusterByAsync(cluster string, clusterReqInfo *spider.ClusterReqInfo, c echo.Context)

Cluster 삭제 비동기 처리

func DelPmksNodeGroup added in v0.6.1

func DelPmksNodeGroup(clusterID string, nodeGroupID string, nodeGroupReqInfo *spider.NodeGroupReqInfo) (bool, model.WebStatus)

NodeGroup 삭제

func DelRegion added in v0.4.0

func DelRegion(regionName string) (io.ReadCloser, model.WebStatus)

Region 삭제

func DelSecurityGroup added in v0.4.0

func DelSecurityGroup(nameSpaceID string, securityGroupID string) (model.WebStatus, model.WebStatus)

SecurityGroup 삭제

func DelSshKey added in v0.4.0

func DelSshKey(nameSpaceID string, sshKeyID string) (model.WebStatus, model.WebStatus)

sshKey 삭제

func DelTbConfig added in v0.4.5

func DelTbConfig(configID string) (tbcommon.TbConfigInfo, model.WebStatus)

func DelVM added in v0.4.0

func DelVM(nameSpaceID string, mcisID string, vmID string) (io.ReadCloser, model.WebStatus)

func DelVMSpec added in v0.4.0

func DelVMSpec(nameSpaceID string, vmSpecID string) (model.WebStatus, model.WebStatus)

VMSpec 삭제

func DelVirtualMachineImage added in v0.4.0

func DelVirtualMachineImage(nameSpaceID string, virtualMachineImageID string) (model.WebStatus, model.WebStatus)

해당 namespace의 특정 VirtualMachineImage 삭제

func DelVpc added in v0.4.0

func DelVpc(nameSpaceID string, vNetID string) (model.WebStatus, model.WebStatus)

vpc 삭제

func DiskLookup added in v0.6.1

func DiskLookup(provider string, connectionName string) ([]webtool.LookupDiskInfo, error)

Disk 정보 조회 Provider, connection 에서 사용가능한 DiskType 조회 현재 : spider의 cloudos_meta.yaml 값 사용

func FetchVirtualMachineImageList added in v0.4.0

func FetchVirtualMachineImageList(nameSpaceID string) ([]tbcommon.TbSimpleMsg, model.WebStatus)

csp에 등록된 정보조회.

func FetchVmSpecInfoList added in v0.4.0

func FetchVmSpecInfoList(nameSpaceID string) (*tbcommon.TbSimpleMsg, model.WebStatus)

Fetch는 결과만 return

func FetchVmSpecInfoListByAsync added in v0.4.5

func FetchVmSpecInfoListByAsync(nameSpaceID string, c echo.Context)

오래걸리므로 비동기로 처리

func FilterVmSpecInfoList added in v0.4.0

func FilterVmSpecInfoList(nameSpaceID string, vmSpecRegInfo *tbmcir.TbSpecInfo) ([]tbmcir.TbSpecInfo, model.WebStatus)

spec들을 filterling

func FilterVmSpecInfoListByRange added in v0.4.0

func FilterVmSpecInfoListByRange(nameSpaceID string, vmSpecRangeMinMax *tbmcir.FilterSpecsByRangeRequest) ([]tbmcir.TbSpecInfo, model.WebStatus)

resourcesGroup.POST("/vmspec/filterspecsbyrange", controller.FilterVmSpecListByRange)

func GetAPIDocument added in v0.4.5

func GetAPIDocument(optionParam string) (tbcommon.TbSimpleMsg, model.WebStatus)

func GetAllTbConfig added in v0.4.5

func GetAvailableDataDiskListForVM added in v0.6.1

func GetAvailableDataDiskListForVM(nameSpaceID string, mcisID string, vmID string) ([]mcir.TbDataDiskInfo, model.WebStatus)

VM에서 Attach 가능한 DataDisk 목록 : Get available dataDisks for a VM

func GetBenchmarkAllMcisList added in v0.4.0

func GetBenchmarkAllMcisList(nameSpaceID string, mcisID string, hostIp string) ([]tbmcis.BenchmarkInfo, model.WebStatus)

List all MCISs

func GetBenchmarkMcisData added in v0.4.0

func GetBenchmarkMcisData(nameSpaceID string, mcisID string, hostIp string, optionParam string) ([]tbmcis.BenchmarkInfo, model.WebStatus)

벤치마크?? MCIS 조회. 근데 왜 결과는 resultarray지? TODO : 여러개 return되면 method이름을 xxxData -> xxxList 로 바꿀 것

func GetCheckResourceExistence added in v0.4.5

func GetCheckResourceExistence(nameSpaceID string, resourceType string, resourceId string) (tbcommon.TbSimpleMsg, model.WebStatus)

func GetCloudConnectionConfigData added in v0.4.0

func GetCloudConnectionConfigData(configName string) (spider.CloudConnectionConfigInfo, model.WebStatus)

Connection 상세

func GetCloudConnectionConfigList added in v0.4.0

func GetCloudConnectionConfigList() ([]spider.CloudConnectionConfigInfo, model.WebStatus)

현재 설정된 connection 목록 GetConnectionConfigListData -> GetCloudConnectionConfigList로 변경

func GetCloudConnectionCountMap added in v0.4.0

func GetCloudConnectionCountMap(cloudConnectionConfigInfoList []spider.CloudConnectionConfigInfo) (map[string]int, int)

provider 별 connection count, connection 있는 provider 수

func GetCloudOSList added in v0.4.0

func GetCloudOSList() ([]string, model.WebStatus)

Cloud Provider 목록

func GetClusterData added in v0.4.0

func GetClusterData(nameSpaceID string, cluster string) (*ladybug.ClusterInfo, model.WebStatus)

특정 Cluster 조회

func GetClusterList added in v0.4.0

func GetClusterList(nameSpaceID string) ([]ladybug.ClusterInfo, model.WebStatus)

Cluster 목록 조회

func GetClusterListByID added in v0.4.5

func GetClusterListByID(nameSpaceID string) ([]string, model.WebStatus)

func GetConfigData added in v0.4.0

func GetConfigData(configID string) (*spider.ConfigInfo, model.WebStatus)

Config 상세조회

func GetConfigList added in v0.4.0

func GetConfigList() ([]spider.ConfigInfo, model.WebStatus)

/////////// Config 현재 설정된 Config 목록 TODO :Spider에서 /config 가 없는 것 같은데.... 나중에 확인해서 안쓰면 제거할 것

func GetCredentialData added in v0.4.0

func GetCredentialData(credentialName string) (*spider.CredentialInfo, model.WebStatus)

Credential 상세조회

func GetCredentialList

func GetCredentialList() ([]spider.CredentialInfo, model.WebStatus)

현재 설정된 credential 목록 : 목록에서는 key의 value는 ...으로 표시

func GetDataDiskList added in v0.6.1

func GetDataDiskList(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbDataDiskInfo, model.WebStatus)

DataDisk 목록 조회

func GetDataDiskListByID added in v0.6.1

func GetDataDiskListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

func GetDataDiskListByOption added in v0.6.1

func GetDataDiskListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbDataDiskInfo, model.WebStatus)

List 조회시 optionParam 추가

func GetDriverData added in v0.4.0

func GetDriverData(driverlName string) (*spider.DriverInfo, model.WebStatus)

Driver 상세조회

func GetDriverList added in v0.4.0

func GetDriverList() ([]spider.DriverInfo, model.WebStatus)

현재 설정된 Driver 목록

func GetHealth added in v0.4.5

func GetHealth() (tbcommon.TbSimpleMsg, model.WebStatus)

func GetHealthy added in v0.4.0

func GetHealthy() model.WebStatus

Health Check

func GetInspectResourceList added in v0.4.0

func GetInspectResourceList(inspectResource *tbcommon.RestInspectResourcesRequest) (*tbmcis.InspectResource, model.WebStatus)

자신의 provider에 등록된 resource 조회

func GetInspectResourcesOverview added in v0.5.1

func GetInspectResourcesOverview() (*tbmcis.InspectResourceAllResult, model.WebStatus)

CSP와 Tumblebug에 등록된 모든 리소스 비교 전체이므로 별도의 parameter 없음.

func GetLoadCommonResource added in v0.4.5

func GetLoadCommonResource() (tbcommon.TbSimpleMsg, model.WebStatus)

func GetMcisData added in v0.4.0

func GetMcisData(nameSpaceID string, mcisID string) (*tbmcis.TbMcisInfo, model.WebStatus)

특정 MCIS 조회 action : status, suspend, resume, reboot, terminate, refine option : id, - [CONTROL] : common.SimpleMsg [DEFAULT] : mcis.TbMcisInfo [ID] : common.IdList [STATUS] : mcis.McisStatusInfo : status는 swagger에 정의되어 있지 않음. slack에 물어봐야 하나

func GetMcisDataByID added in v0.4.5

func GetMcisDataByID(nameSpaceID string, mcisID string) (*tbcommon.TbIdList, model.WebStatus)

func GetMcisDataByStatus added in v0.4.5

func GetMcisDataByStatus(nameSpaceID string, mcisID string, optionParam string) (tbmcis.McisStatusInfo, model.WebStatus)

func GetMcisDynamicCheckList added in v0.5.1

// Checkavaiable ConnectionConfig list for creating MCIS Dynamically

사용 가능한 connectionConfig 목록 조회 : 동적생성에서 사용
해당 spec들을 사용할 수 있는 conection 정보 목록
ex) "commonSpec": ["aws-ap-northeast-2-t2-small","gcp-us-west1-g1-small"]
	-> spec : "aws-ap-northeast-2-t2-small", connectionName : "conn-abc", region : "ap-northeast-2" ...

func GetMcisList added in v0.4.0

func GetMcisList(nameSpaceID string, optionParam string) ([]tbmcis.TbMcisInfo, model.WebStatus)

MCIS 목록 조회 : option (id, simple, status) 추가할 것.

func GetMcisListByID added in v0.4.5

func GetMcisListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

func GetMcisListByOption added in v0.4.5

func GetMcisListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcis.TbMcisInfo, model.WebStatus)

func GetMcisOnDemandMonitoringMetricInfo added in v0.4.0

func GetMcisOnDemandMonitoringMetricInfo(agentIp string, metricName string, vmMonitoring *dragonfly.VmMonitoring) (*dragonfly.McisMonitoringOnDemandInfo, model.WebStatus)

멀티 클라우드 인프라 VM 온디맨드 모니터링 정보 조회 Get MCIS on-demand monitoring metric info

func GetMcisPolicyInfoData added in v0.4.0

func GetMcisPolicyInfoData(nameSpaceID string, mcisID string) (*tbmcis.RestGetAllMcisPolicyResponse, model.WebStatus)

Get McisPolish Data

func GetMcisPolicyList added in v0.4.0

func GetMcisPolicyList(nameSpaceID string) ([]tbmcis.RestGetAllMcisPolicyResponse, model.WebStatus)

List all MCIS Policys

func GetMcisRecommendVmSpecList added in v0.5.1

func GetMcisRecommendVmSpecList(mcisDeploymentPlan *tbmcis.DeploymentPlan) ([]tbmcir.TbSpecInfo, model.WebStatus)

Recommend MCIS plan (filter and priority) 실제로는 추천 image 목록 async 로 만들 지

func GetMcisStatusCountMap added in v0.4.0

func GetMcisStatusCountMap(mcisInfo tbmcis.TbMcisInfo) map[string]int

MCIS 목록에서 mcis 상태별 count map반환

func GetMcksStatusCountMap added in v0.4.0

func GetMcksStatusCountMap(clusterList []ladybug.ClusterInfo) map[string]int

MCKS의 상태값 숫자로 표시

func GetMonitoringAlertData added in v0.4.0

func GetMonitoringAlertData(taskName string) (dragonfly.VmMonitoringAlertInfo, model.WebStatus)

알람 조회 monitoring alert

func GetMonitoringAlertEventHandlerData added in v0.4.0

func GetMonitoringAlertEventHandlerData(eventHandlerType string, eventName string) (dragonfly.VmMonitoringAlertInfo, model.WebStatus)

알람 이벤트 핸들러 조회 Get monitoring alert event-handler type : 이벤트 핸들러 유형 ( "slack" | "smtp" ) name : slackHandler(EventHandlerName)

func GetMonitoringAlertEventHandlerList added in v0.4.0

func GetMonitoringAlertEventHandlerList() ([]dragonfly.VmMonitoringAlertEventHandlerInfo, model.WebStatus)

알람 이벤트 핸들러 목록 조회 List monitoring alert event handler

func GetMonitoringAlertList added in v0.4.0

func GetMonitoringAlertList() ([]dragonfly.VmMonitoringAlertInfo, model.WebStatus)

알람 목록 조회 List monitoring alert

func GetMonitoringAlertLogList added in v0.4.0

func GetMonitoringAlertLogList(taskName string, logLevel string) ([]dragonfly.VmMonitoringAlertLog, model.WebStatus)

알람 로그 정보 목록 조회 List monitoring alert event

func GetMonitoringConfig added in v0.4.0

func GetMonitoringConfig() (*dragonfly.MonitoringConfig, model.WebStatus)

모니터링 정책 조회 Get monitoring config

func GetMyImageList added in v0.6.1

func GetMyImageList(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbCustomImageInfo, model.WebStatus)

MyImage 목록 조회

func GetMyImageListByID added in v0.6.1

func GetMyImageListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

func GetMyImageListByOption added in v0.6.1

func GetMyImageListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbCustomImageInfo, model.WebStatus)

List 조회시 optionParam 추가

func GetNameSpaceData added in v0.4.0

func GetNameSpaceData(nameSpaceID string) (tbcommon.TbNsInfo, model.WebStatus)

Get namespace

func GetNameSpaceList added in v0.4.0

func GetNameSpaceList() ([]tbcommon.TbNsInfo, model.WebStatus)

사용자의 namespace 목록 조회

func GetNameSpaceListByOption added in v0.4.5

func GetNameSpaceListByOption(optionParam string) ([]tbcommon.TbNsInfo, model.WebStatus)

Namespace 조회 시 Option에 해당하는 값만 조회. GetNameSpaceList와 TB 호출은 동일하나 option 사용으로 받아오는 param이 다름. controller에서 분기

func GetNameSpaceListByOptionID added in v0.4.5

func GetNameSpaceListByOptionID(optionParam string) ([]string, model.WebStatus)

Namespace 조회 시 Option에 해당하는 값만 조회. GetNameSpaceList와 TB 호출은 동일하나 option 사용으로 받아오는 param이 다름

func GetNameSpaceToString added in v0.4.0

func GetNameSpaceToString(c echo.Context) string

func GetNlbData added in v0.6.1

func GetNlbData(nameSpaceID string, mcisID string, nlbID string) (tbmcis.TbNLBInfo, model.WebStatus)

특정 NLB 조회

func GetNlbHealth added in v0.6.1

func GetNlbHealth(nameSpaceID string, mcisID string, nlbID string) (tbmcis.TbNLBInfo, model.WebStatus)

특정 NLB의 Health

func GetNlbIdListByMcisID added in v0.6.1

func GetNlbIdListByMcisID(nameSpaceID string, mcisID string) ([]string, model.WebStatus)

NLB ID만 목록으로 제공

func GetNlbListByOption added in v0.6.1

func GetNlbListByOption(nameSpaceID string, mcisID string, optionParam string) ([]tbmcis.TbNLBInfo, model.WebStatus)

NLB 목록을 조회 조건에 따라 검색

func GetNodeData added in v0.4.0

func GetNodeData(nameSpaceID string, clusterName string, node string) (*ladybug.NodeInfo, model.WebStatus)

특정 Cluster 조회

func GetNodeList added in v0.4.0

func GetNodeList(nameSpaceID string, clusterName string) (ladybug.NodeList, model.WebStatus)

Node 목록 조회

func GetObject added in v0.4.5

func GetObject(optionParam string) (tbcommon.TbSimpleMsg, model.WebStatus)

func GetObjectList added in v0.4.5

func GetObjectList(optionParam string) (tbcommon.TbSimpleMsg, model.WebStatus)

func GetPmksClusterData added in v0.6.1

func GetPmksClusterData(cluster string, clusterReqInfo spider.ClusterReqInfo) (*spider.SpClusterInfo, model.WebStatus)

특정 Cluster 조회

func GetPmksClusterList added in v0.6.1

func GetPmksClusterList(clusterReqInfo spider.ClusterReqInfo) ([]spider.SpClusterInfo, model.WebStatus)

Cluster 목록 조회

func GetPmksNamespaceClusterList added in v0.6.1

func GetPmksNamespaceClusterList(clusterReqInfo spider.ClusterReqInfo) ([]spider.SpClusterInfo, model.WebStatus)

해당 namespace의 모든 pmks 목록 조회

func GetRegionData added in v0.4.0

func GetRegionData(regionName string) (*tbcommon.TbRegion, model.WebStatus)

func GetRegionList

func GetRegionList() ([]spider.RegionInfo, model.WebStatus)

현재 설정된 region 목록

func GetSecurityGroupData added in v0.4.0

func GetSecurityGroupData(nameSpaceID string, securityGroupID string) (*tbmcir.TbSecurityGroupInfo, model.WebStatus)

SecurityGroup 상세 조회

func GetSecurityGroupList added in v0.4.0

func GetSecurityGroupList(nameSpaceID string) ([]tbmcir.TbSecurityGroupInfo, model.WebStatus)

해당 namespace의 SecurityGroup 목록 조회

func GetSecurityGroupListByOption added in v0.4.5

func GetSecurityGroupListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbSecurityGroupInfo, model.WebStatus)

SecurityGroupList 조회 시 Option에 해당하는 값만 조회. GetSecurityGroupList와 TB 호출은 동일하나 option 사용으로 받아오는 param이 다름

func GetSecurityGroupListByOptionID added in v0.4.5

func GetSecurityGroupListByOptionID(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

ID만 조회

func GetSimpleNodeCountMap added in v0.4.0

func GetSimpleNodeCountMap(cluster ladybug.ClusterInfo) ([]ladybug.NodeSimpleInfo, map[string]int)

Node의 간단정보(credential 제외) + kind별 node 갯수 return

func GetSimpleVmWithStatusCountMap added in v0.4.0

func GetSimpleVmWithStatusCountMap(mcisInfo tbmcis.TbMcisInfo) ([]webtool.VmSimpleInfo, map[string]int)

MCIS의 vm별 statun와 vm 상태별 count key는 vmID + vmName, value는 vmStatus

func GetSshKeyData added in v0.4.0

func GetSshKeyData(nameSpaceID string, sshKeyID string) (*tbmcir.TbSshKeyInfo, model.WebStatus)

sshKey 상세 조회

func GetSshKeyInfoList added in v0.4.0

func GetSshKeyInfoList(nameSpaceID string) ([]tbmcir.TbSshKeyInfo, model.WebStatus)

SSHKey 목록 조회 : /ns/{nsId}/resources/sshKey

func GetSshKeyInfoListByID added in v0.4.5

func GetSshKeyInfoListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

func GetSshKeyInfoListByOption added in v0.4.5

func GetSshKeyInfoListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbSshKeyInfo, model.WebStatus)

func GetStoredCloudConnectionConfigList added in v0.4.0

func GetStoredCloudConnectionConfigList(c echo.Context) ([]spider.CloudConnectionConfigInfo, model.WebStatus)

GetCloudConnectionConfigList

func GetStoredCloudOSList added in v0.4.0

func GetStoredCloudOSList(c echo.Context) ([]string, model.WebStatus)

GetCloudOSList

func GetStoredCredentialList added in v0.4.0

func GetStoredCredentialList(c echo.Context) ([]spider.CredentialInfo, model.WebStatus)

GetCredentialList

func GetStoredDriverList added in v0.4.0

func GetStoredDriverList(c echo.Context) ([]spider.DriverInfo, model.WebStatus)

GetDriverList

func GetStoredNameSpaceList added in v0.4.0

func GetStoredNameSpaceList(c echo.Context) ([]tbcommon.TbNsInfo, model.WebStatus)

로그인할 때, NameSpace 저장(Create, Delete, Update) 외에는 이 funtion 사용 없으면 tb 조회

func GetStoredRegionList added in v0.4.0

func GetStoredRegionList(c echo.Context) ([]spider.RegionInfo, model.WebStatus)

GetRegionList

func GetTbConfig added in v0.4.5

func GetTbConfig(configID string) (tbcommon.TbConfigInfo, model.WebStatus)

func GetVMofMcisData added in v0.4.0

func GetVMofMcisData(nameSpaceID string, mcisID string, vmID string) (*tbmcis.TbVmInfo, model.WebStatus)

MCIS의 특정 VM 조회 action : status, suspend, resume, reboot, terminate

func GetVirtualMachineImageData added in v0.4.0

func GetVirtualMachineImageData(nameSpaceID string, virtualMachineImageID string) (*tbmcir.TbImageInfo, model.WebStatus)

VirtualMachineImage 상세 조회

func GetVirtualMachineImageInfoList added in v0.4.0

func GetVirtualMachineImageInfoList(nameSpaceID string) ([]tbmcir.TbImageInfo, model.WebStatus)

VirtualMachineImage 목록 조회

func GetVirtualMachineImageInfoListByID added in v0.4.5

func GetVirtualMachineImageInfoListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

VirtualMachineImage 목록에서 Option으로 ID 목록만 가져오는 function

func GetVirtualMachineImageInfoListByOption added in v0.4.5

func GetVirtualMachineImageInfoListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbImageInfo, model.WebStatus)

func GetVmConnectionCountByMcis added in v0.4.0

func GetVmConnectionCountByMcis(mcisInfo tbmcis.TbMcisInfo) map[string]int

해당 MCIS의 VM 연결 수

func GetVmConnectionCountMap added in v0.4.0

func GetVmConnectionCountMap(mcisInfo tbmcis.TbMcisInfo) map[string]int

MCIS별 connection count

func GetVmData added in v0.4.0

func GetVmData(nameSpaceID string, mcisID string, vmID string) (*tbmcis.TbVmInfo, model.WebStatus)

특정 VM 조회

func GetVmMonitoring added in v0.4.0

func GetVmMonitoring(vmMonitoring *dragonfly.VmMonitoring) (map[string]interface{}, model.WebStatus)

VM monitoring Get vm monitoring info 멀티 클라우드 인프라 VM 모니터링 정보 조회

func GetVmMonitoringInfoData added in v0.4.0

func GetVmMonitoringInfoData(nameSpaceID string, mcisID string, metric string) (*tbmcis.MonResultSimpleResponse, model.WebStatus)

Get Monitoring Data

func GetVmOnDemandMonitoringMetricInfo added in v0.4.0

func GetVmOnDemandMonitoringMetricInfo(agentIp string, metricName string, vmMonitoring *dragonfly.VmMonitoring) (*dragonfly.VmMonitoringOnDemandInfo, model.WebStatus)

멀티 클라우드 인프라 VM 온디맨드 모니터링 정보 조회 Get vm on-demand monitoring metric info

func GetVmSpecInfoData added in v0.4.0

func GetVmSpecInfoData(nameSpaceID string, vmSpecID string) (*tbmcir.TbSpecInfo, model.WebStatus)

VMSpec 상세 조회

func GetVmSpecInfoList added in v0.4.0

func GetVmSpecInfoList(nameSpaceID string) ([]tbmcir.TbSpecInfo, model.WebStatus)

VMSpec 목록 조회

func GetVmSpecInfoListByID added in v0.4.5

func GetVmSpecInfoListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

func GetVmSpecInfoListByOption added in v0.4.5

func GetVmSpecInfoListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbSpecInfo, model.WebStatus)

func GetVnetList added in v0.4.0

func GetVnetList(nameSpaceID string) ([]tbmcir.TbVNetInfo, model.WebStatus)

해당 namespace의 vpc 목록 조회 func GetVnetList(nameSpaceID string) (io.ReadCloser, error) {

func GetVnetListByID added in v0.4.5

func GetVnetListByID(nameSpaceID string, filterKeyParam string, filterValParam string) ([]string, model.WebStatus)

ID목록만 조회

func GetVnetListByOption added in v0.4.5

func GetVnetListByOption(nameSpaceID string, optionParam string, filterKeyParam string, filterValParam string) ([]tbmcir.TbVNetInfo, model.WebStatus)

List 조회시 optionParam 추가

func GetVpcData added in v0.4.0

func GetVpcData(nameSpaceID string, vNetID string) (*tbmcir.TbVNetInfo, model.WebStatus)

vpc 상세 조회-> ResourceHandler로 이동

func GetWebsocketMessageByProcessTime added in v0.4.5

func GetWebsocketMessageByProcessTime(beginTime int64, c echo.Context) []modelsocket.WebSocketMessage

특정 시점 이후의 data만 추출 func GetWebsocketMessageByProcessTime(beginTime time.Time, c echo.Context) map[int64]modelsocket.WebSocketMessage {

func GetWebsocketMessageBySend added in v0.4.5

func GetWebsocketMessageBySend(send bool, c echo.Context) []modelsocket.WebSocketMessage

전송 상태에 따른 값 목록 조회. sendMessage==false 이면 전송 전 data목록만 :: 시간을 param으로 하므로 필요 없을 것. deprecated. func GetWebsocketMessageBySend(send bool, c echo.Context) map[int64]modelsocket.WebSocketMessage {

func GetWebsocketMessageByTaskKey added in v0.4.5

func GetWebsocketMessageByTaskKey(taskType string, taskKey string, c echo.Context) map[int64]modelsocket.WebSocketMessage

TaskKey에 해당하는 값 조회 : 요청, 완료 값이 return

func InstallAgentToVm added in v0.4.0

func InstallAgentToVm(nameSpaceID string, vmMonitoringInstallReg *dragonfly.VmMonitoringInstallReg) (*dragonfly.VmMonitoringInstallReg, model.WebStatus)

Install agent to vm 모니터링 에이전트 설치 : 위에 RegMonitoringAgentInVm 와 뭐가 다른거지?

func InstallBenchmarkAgentToMcis added in v0.4.0

func InstallBenchmarkAgentToMcis(nameSpaceID string, mcisID string, mcisCommandInfo *tbmcis.McisCmdReq) (*tbmcis.RestPostCmdMcisResponseWrapper, model.WebStatus)

Install the benchmark agent to specified MCIS

func LoadDefaultResources added in v0.5.1

func LoadDefaultResources(nameSpaceID string, optionParam string, connectionName string) (model.WebStatus, model.WebStatus)

func LookupVirtualMachineImageData added in v0.4.0

func LookupVirtualMachineImageData(restLookupImageRequest *tbmcir.RestLookupImageRequest) (*tbmcir.SpiderImageInfo, model.WebStatus)

특정 provider의 특정 image정보 조회

func LookupVirtualMachineImageList added in v0.4.0

func LookupVirtualMachineImageList(connectionName string) (tbmcir.SpiderImageInfos, model.WebStatus)

VM Image 조회

func LookupVmSpecInfoData added in v0.4.0

func LookupVmSpecInfoData(restLookupSpecRequest *tbmcir.RestLookupSpecRequest) (*tbmcir.SpiderSpecInfo, model.WebStatus)

func LookupVmSpecInfoList added in v0.4.0

func LookupVmSpecInfoList(connectionName *tbcommon.TbConnectionName) (tbmcir.SpiderSpecInfos, model.WebStatus)

func MakeNameSpace added in v0.4.0

func MakeNameSpace(name string) string

func McisLifeCycle added in v0.4.0

func McisLifeCycle(mcisLifeCycle *webtool.McisLifeCycle, queryParams []string) (*webtool.McisLifeCycle, model.WebStatus)

MCIS의 Status변경 LifeCycle 의 경우 요청에 대한 응답이 바로 오므로 asyncMethod를 따로 만들지 않음. 응답시간이 오래걸리는 경우 syncXXX 를 만들고 echo 를 같이 넘겨 결과 처리하도록 해야 함.

func McisLifeCycleByAsync added in v0.4.5

func McisLifeCycleByAsync(mcisLifeCycle *webtool.McisLifeCycle, queryParams []string, c echo.Context)

func McisSubGroupList added in v0.6.1

func McisSubGroupList(nameSpaceID string, mcisID string) (*tbcommon.TbIdList, model.WebStatus)

Mcis에 SubGroup 목록 조회

func McisVmLifeCycle added in v0.4.0

func McisVmLifeCycle(vmLifeCycle *webtool.VmLifeCycle) (*webtool.VmLifeCycle, model.WebStatus)

MCIS의 VM Status변경 : 요청에 대한 응답이 바로 오므로 async 만들지 않음

func McisVmLifeCycleByAsync added in v0.4.5

func McisVmLifeCycleByAsync(vmLifeCycle *webtool.VmLifeCycle, c echo.Context)

func MyImageGet added in v0.6.1

func MyImageGet(nameSpaceID string, myImageID string) (*tbmcir.TbCustomImageInfo, model.WebStatus)

MyImage 상세 조회

func PutMonigoringConfig added in v0.4.0

func PutMonigoringConfig(monitoringConfigReg *dragonfly.MonitoringConfigReg) (*dragonfly.MonitoringConfig, model.WebStatus)

모니터링 정책 설정

func PutMonitoringAlert added in v0.4.0

func PutMonitoringAlert(taskName string, vmMonitoringAlertInfo *dragonfly.VmMonitoringAlertInfo) (*dragonfly.VmMonitoringAlertInfo, model.WebStatus)

알람 수정 Update Monitoring Alert

func PutMonitoringAlertEventHandlerSlack added in v0.4.0

func PutMonitoringAlertEventHandlerSlack(eventHandlerType string, eventName string, vmMonitoringAlertEventHandlerSlackInfo *dragonfly.EventHandlerOptionSlack) (*dragonfly.VmMonitoringAlertEventHandlerSlackInfo, model.WebStatus)

알람 이벤트 핸들러 수정( handlerType=slack)

func PutMonitoringAlertEventHandlerSmtp added in v0.4.0

func PutMonitoringAlertEventHandlerSmtp(eventHandlerType string, eventName string, vmMonitoringAlertEventHandlerInfo *dragonfly.EventHandlerOptionSmtp) (*dragonfly.VmMonitoringAlertEventHandlerSmtpInfo, model.WebStatus)

알람 이벤트 핸들러 수정( handlerType=smtp)

func RegAdaptiveNetwork added in v0.5.1

func RegAdaptiveNetwork(nameSpaceID string, mcisID string, networkReq *tbmcis.NetworkReq) (*tbmcis.AgentInstallContentWrapper, model.WebStatus)

Configure Cloud Adaptive Network (cb-network agent) to MCIS

func RegBenchmarkAgentInVm added in v0.4.0

func RegBenchmarkAgentInVm(nameSpaceID string, mcisID string, vmMonitoringAgentReg *tbmcis.McisCmdReq) (*tbmcis.AgentInstallContentWrapper, model.WebStatus)

VM 에 모니터링 Agent 설치 /ns/{nsId}/monitoring/install/mcis/{mcisId}

func RegCloudConnectionConfig added in v0.4.0

func RegCloudConnectionConfig(cloudConnectionConfigInfo *spider.CloudConnectionConfigInfo) (*spider.CloudConnectionConfigInfo, model.WebStatus)

CloudConnectionConfigInfo 등록 func RegCloudConnectionConfig(cloudConnectionConfigInfo *model.CloudConnectionConfigInfo) (io.ReadCloser, model.WebStatus) {

func RegCluster added in v0.4.0

func RegCluster(nameSpaceID string, clusterReq *ladybug.ClusterRegReq) (*ladybug.ClusterInfo, model.WebStatus)

Cluster 생성

func RegClusterByAsync added in v0.4.5

func RegClusterByAsync(nameSpaceID string, clusterReq *ladybug.ClusterRegReq, c echo.Context)

Cluster 생성

func RegConfig added in v0.4.0

func RegConfig(configInfo *spider.ConfigInfo) (*spider.ConfigInfo, model.WebStatus)

Driver 등록

func RegCredential added in v0.4.0

func RegCredential(credentialInfo *spider.CredentialInfo) (*spider.CredentialInfo, model.WebStatus)

Credential 등록

func RegCspCustomImageToMyImage added in v0.6.1

func RegCspCustomImageToMyImage(nameSpaceID string, myImageReqInfo *tbmcir.TbCustomImageReq) (*tbmcir.TbCustomImageInfo, model.WebStatus)

CSP에 등록 된 customImage를 TB의 customImage로 등록

func RegCspResources added in v0.5.1

func RegCspResources(resourcesRequest *tbcommon.RestRegisterCspNativeResourcesRequest, optionParam string) (*tbmcis.RegisterResourceResult, model.WebStatus)

func RegCspResourcesAll added in v0.5.1

func RegCspResourcesAll(resourcesRequest *tbcommon.RestRegisterCspNativeResourcesRequestAll, optionParam string) (*tbmcis.RegisterResourceAllResult, model.WebStatus)

func RegCspVm added in v0.5.1

func RegCspVm(nameSpaceID string, mcisReq *tbmcis.TbMcisReq) (*tbmcis.TbMcisInfo, model.WebStatus)

func RegDataDisk added in v0.6.1

func RegDataDisk(nameSpaceID string, dataDiskReqInfo *tbmcir.TbDataDiskReq) (*tbmcir.TbDataDiskInfo, model.WebStatus)

func RegDriver added in v0.4.0

func RegDriver(driverInfo *spider.DriverInfo) (*spider.DriverInfo, model.WebStatus)

Driver 등록

func RegFirewallRules added in v0.5.1

func RegFirewallRules(nameSpaceID string, securityGroupID string, firewallRuleReq *tbmcir.TbFirewallRulesWrapper) (*tbmcir.TbSecurityGroupInfo, model.WebStatus)

func RegMcis added in v0.4.0

func RegMcis(nameSpaceID string, mcisInfo *tbmcis.TbMcisReq) (*tbmcis.TbMcisInfo, model.WebStatus)

MCIS 등록. VM도 함께 등록

func RegMcisByAsync added in v0.4.5

func RegMcisByAsync(nameSpaceID string, mcisInfo *tbmcis.TbMcisReq, c echo.Context)

MCIS 등록, channel 이용 : thread이긴 하나 ch를 통해 결과를 받은 후 처리되므로 다를 바가 없음. go routine으로 호출하므로 호출결과를 echo-session에 저장 -> web socket으로 front-end 에 전달

func RegMcisDynamic added in v0.4.6

func RegMcisDynamic(nameSpaceID string, mcisDynamicReq *tbmcis.TbMcisDynamicReq) (*tbmcis.TbMcisInfo, model.WebStatus)

Create MCIS Dynamically from common spec and image async 로 만들 지

func RegMcisDynamicByAsync added in v0.5.1

func RegMcisDynamicByAsync(nameSpaceID string, mcisInfo *tbmcis.TbMcisDynamicReq, c echo.Context)

func RegMcisPolicy added in v0.4.0

func RegMcisPolicy(nameSpaceID string, mcisID string, mcisPolicyInfo *tbmcis.McisPolicyInfo) (*tbmcis.McisPolicyInfo, model.WebStatus)

func RegMonitoringAgentInVm added in v0.4.0

func RegMonitoringAgentInVm(nameSpaceID string, mcisID string, vmMonitoringAgentReg *dragonfly.VmMonitoringInstallReg) (*model.WebStatus, model.WebStatus)

func RegMonitoringAlert added in v0.4.0

func RegMonitoringAlert(vmMonitoringAlertInfo *dragonfly.VmMonitoringAlertInfo) (*dragonfly.VmMonitoringAlertInfo, model.WebStatus)

알람 생성 Create Monitoring Alert

func RegMonitoringAlertEventHandler added in v0.4.0

func RegMonitoringAlertEventHandler(vmMonitoringAlertEventHandlerInfoReg *dragonfly.VmMonitoringAlertEventHandlerInfoReg) (*dragonfly.VmMonitoringAlertEventHandlerInfoReg, model.WebStatus)

알람 이벤트 핸들러 생성 Create monitoring alert event-handler

func RegNameSpace added in v0.4.0

func RegNameSpace(nameSpaceInfo *tbcommon.TbNsInfo) (tbcommon.TbNsInfo, model.WebStatus)

NameSpace 등록. 등록 후 생성된 Namespace 정보를 return

func RegNlbByAsync added in v0.6.1

func RegNlbByAsync(nameSpaceID string, mcisID string, nlbReq *tbmcis.TbNLBReq, c echo.Context)
NLB 등록
async로 호출하므로 결과를 받으면 websocket으로 전달

RegNlbByAsync

func RegNode added in v0.4.0

func RegNode(nameSpaceID string, clusterName string, nodeRegReq *ladybug.NodeRegReq) (*ladybug.NodeInfo, model.WebStatus)

Node 생성

func RegOrUpdateConfig added in v0.4.5

func RegOrUpdateConfig(configReg tbcommon.TbConfigReq) (tbcommon.TbConfigInfo, model.WebStatus)

func RegPmksCluster added in v0.6.1

func RegPmksCluster(nameSpaceID string, clusterReqInfo *spider.ClusterReqInfo) (*spider.SpClusterInfo, model.WebStatus)

Cluster 생성

func RegPmksClusterByAsync added in v0.6.1

func RegPmksClusterByAsync(clusterReqInfo *spider.ClusterReqInfo, c echo.Context)

PMKS Cluster 생성

func RegPmksNodeGroup added in v0.6.1

func RegPmksNodeGroup(clusterID string, nodeGroupReqInfo *spider.NodeGroupReqInfo) (*spider.NodeGroupInfo, model.WebStatus)

NodeGroup 생성

func RegRegion added in v0.4.0

func RegRegion(regionInfo *spider.RegionInfo) (*spider.RegionInfo, model.WebStatus)

Region 등록 func RegRegion(regionInfo *spider.RegionInfo) (io.ReadCloser, model.WebStatus) {

func RegSecurityGroup added in v0.4.0

func RegSecurityGroup(nameSpaceID string, securityGroupRegInfo *tbmcir.TbSecurityGroupReq) (*tbmcir.TbSecurityGroupInfo, model.WebStatus)

SecurityGroup 등록 option=register 항목은 TB에서 자동으로 넣을 때 사용하는 param으로 webtool에서 사용하지 않음.

func RegSshKey added in v0.4.0

func RegSshKey(nameSpaceID string, sshKeyRegInfo *tbmcir.TbSshKeyReq) (*tbmcir.TbSshKeyInfo, model.WebStatus)

sshKey 등록 option=register 항목은 TB에서 자동으로 넣을 때 사용하는 param으로 webtool에서 사용하지 않음.

func RegSubGroup added in v0.6.1

func RegSubGroup(nameSpaceID string, mcisID string, subGroupInfo *tbmcis.TbVmReq) (*tbmcis.TbMcisInfo, model.WebStatus)

MCIS에 VM 추가 등록

func RegVM added in v0.4.0

func RegVM(nameSpaceID string, mcisID string, vmInfo *tbmcis.TbVmInfo) (*tbmcis.TbVmInfo, model.WebStatus)

MCIS에 VM 생성. path에 mcisID가 있음. VMInfo에는 mcisID가 없음.

func RegVirtualMachineImage added in v0.4.0

func RegVirtualMachineImage(nameSpaceID string, registType string, virtualMachineImageRegInfo *tbmcir.TbImageReq) (*tbmcir.TbImageInfo, model.WebStatus)

VirtualMachineImage 등록 registeringMethod = imageID

func RegVirtualMachineImageWithInfo added in v0.4.5

func RegVirtualMachineImageWithInfo(nameSpaceID string, registType string, virtualMachineImageRegInfo *tbmcir.TbImageInfo) (*tbmcir.TbImageInfo, model.WebStatus)

VirtualMachineImage 등록 registeringMethod = imageID 생성시 action에 regist

func RegVm added in v0.4.0

func RegVm(nameSpaceID string, mcisID string, vmInfo *tbmcis.TbVmReq) (*tbmcis.TbVmInfo, model.WebStatus)

MCIS에 VM 추가 등록

func RegVmDynamicByAsync added in v0.6.1

func RegVmDynamicByAsync(nameSpaceID string, mcisID string, vmReqInfo *tbmcis.TbVmDynamicReq, c echo.Context)

Add VM dynamically from common spec and image

func RegVmSnapshot added in v0.6.1

func RegVmSnapshot(nameSpaceID string, mcisID string, vmID string, vmSnapshotReq *mcis.TbVmSnapshotReq) (*mcis.TbCustomImageInfo, model.WebStatus)

VM의 snapshot 생성

func RegVmSpec added in v0.4.0

func RegVmSpec(nameSpaceID string, specregisteringMethod string, vmSpecRegInfo *tbmcir.TbSpecReq) (*tbmcir.TbSpecInfo, model.WebStatus)

VMSpecInfo 등록

func RegVmSpecWithInfo added in v0.4.5

func RegVmSpecWithInfo(nameSpaceID string, specregisteringMethod string, vmSpecRegInfo *tbmcir.TbSpecInfo) (*tbmcir.TbSpecInfo, model.WebStatus)

specRegisteringMethod에 따라 requestMethod가 다르므로 function 분리 함

func RegVpc added in v0.4.0

func RegVpc(nameSpaceID string, vnetRegInfo *tbmcir.TbVNetReq) (*tbmcir.TbVNetInfo, model.WebStatus)

vpc 등록 option=register 항목은 TB에서 자동으로 넣을 때 사용하는 param으로 webtool에서 사용하지 않음.

func RemoveVmToNLBTargetGroup added in v0.6.1

func RemoveVmToNLBTargetGroup(nameSpaceID string, mcisID string, nlbID string, nlbTargetGroupReq *tbmcis.TbNLBAddRemoveVMReq) (tbcommon.TbSimpleMsg, model.WebStatus)

NLB의 TargetGroup에 VM 제거

func ResetMonigoringConfig added in v0.4.0

func ResetMonigoringConfig(monitoringConfig *dragonfly.MonitoringConfig) (*dragonfly.MonitoringConfig, model.WebStatus)

모니터링 정책 초기화

func ScaleOutSubGroup added in v0.6.1

func ScaleOutSubGroup(nameSpaceID string, mcisID string, subGroupID string, subGroupScaleOutReq *mcis.TbScaleOutSubGroupReq) (*mcis.TbMcisInfo, model.WebStatus)

SubGroup의 vm개수 조정

func SearchVirtualMachineImageList added in v0.4.0

func SearchVirtualMachineImageList(nameSpaceID string, restSearchImageRequest *tbmcir.RestSearchImageRequest) ([]tbmcir.TbImageInfo, model.WebStatus)

VirtualMachineImage 상세 조회

func SetStoreCloudConnectionConfigList added in v0.4.0

func SetStoreCloudConnectionConfigList(c echo.Context, connectionConfigList []spider.CloudConnectionConfigInfo) error

func SetStoreCloudOSList added in v0.4.0

func SetStoreCloudOSList(c echo.Context, cloudOSList []string) error

func SetStoreCredentialList added in v0.4.0

func SetStoreCredentialList(c echo.Context, credentialList []spider.CredentialInfo) error

func SetStoreDriverList added in v0.4.0

func SetStoreDriverList(c echo.Context, driverList []spider.DriverInfo) error

func SetStoreNameSpaceList added in v0.4.0

func SetStoreNameSpaceList(c echo.Context, nameSpaceList []tbcommon.TbNsInfo) error

func SetStoreRegionList added in v0.4.0

func SetStoreRegionList(c echo.Context, regionList []spider.RegionInfo) error

func SetWebsocketMessage added in v0.4.5

func SetWebsocketMessage(taskType string, taskKey string, lifeCycle string, status string, c echo.Context)

WebSocket에 전달할 Message Set

func SetWebsocketMessageBySend added in v0.4.5

func SetWebsocketMessageBySend(taskKey string, hasSend bool, c echo.Context)

전송여부를 set 하는데... 시간을 기준으로 가져올 것으로 필요없을 것.

func StoreWebsocketMessage added in v0.4.5

func StoreWebsocketMessage(taskType string, taskKey string, lifeCycle string, requestStatus string, c echo.Context)

taskType : mcis/vm/mcks ... lifecycle : create, suspend, resume. .... taskKey : status : requested, processing, failed, completed eccossion에 socketdata 에 추가. key는 timestamp인데 unixNanoTime(int64) 사용

func StoreWebsocketMessageDetail added in v0.6.1

func StoreWebsocketMessageDetail(taskType string, taskKey string, lifeCycle string, requestStatus string, desc string, c echo.Context)

func SubGroupVmListByID added in v0.6.1

func SubGroupVmListByID(nameSpaceID string, mcisID string, subGroupID string) (*tbcommon.TbIdList, model.WebStatus)

Mcis의 SubGroup 내 VM 목록조회. ID 만 반환

func SubGroupVmListByOption added in v0.6.1

func SubGroupVmListByOption(nameSpaceID string, mcisID string, subGroupID string, optionParam string) (*tbcommon.TbIdList, model.WebStatus)

Mcis의 SubGroup 내 VM 목록조회 TODO : return형태가 다를 수 있으므로 조회 결과대로 수정할 것.

func UnInstallAgentToVm added in v0.4.0

func UnInstallAgentToVm(nameSpaceID string, vmMonitoringInstallReg *dragonfly.VmMonitoringInstallReg) (*dragonfly.VmMonitoringInstallReg, model.WebStatus)

모니터링 에이전트 제거 Uninstall agent to vm

func UpdateAdaptiveNetwork added in v0.5.1

func UpdateAdaptiveNetwork(nameSpaceID string, mcisID string, networkReq *tbmcis.NetworkReq) (*tbmcis.AgentInstallContentWrapper, model.WebStatus)

Inject Cloud Information For Cloud Adaptive Network

func UpdateNameSpace added in v0.4.0

func UpdateNameSpace(nameSpaceID string, nameSpaceInfo *tbcommon.TbNsReq) (tbcommon.TbNsInfo, model.WebStatus)

NameSpace 수정

func UpdatePmksCluster added in v0.6.1

func UpdatePmksCluster(clusterReqInfo *spider.ClusterReqInfo) (spider.SpClusterInfo, model.WebStatus)

PmksClusterUpdateProc : 현재는 버전만 upgrade. 추후 항목 update가 생기면 function 분리할 것

func UpdatePmksNodeGroupAutoScaling added in v0.6.1

func UpdatePmksNodeGroupAutoScaling(clusterID string, nodeGroupID string, nodeGroupReqInfo *spider.NodeGroupReqInfo) (spider.SpClusterInfo, model.WebStatus)

NodeGroup 수정 : onAutoScaling

func UpdatePmksNodeGroupAutoscaleSize added in v0.6.1

func UpdatePmksNodeGroupAutoscaleSize(clusterID string, nodeGroupID string, nodeGroupReqInfo *spider.NodeGroupReqInfo) (spider.SpClusterInfo, model.WebStatus)

NodeGroup 수정 : node Size

func UpdateSshKey added in v0.5.1

func UpdateSshKey(nameSpaceID string, sshKeyId string, sshKeyInfo *tbmcir.TbSshKeyInfo) (*tbmcir.TbSshKeyInfo, model.WebStatus)

func UpdateVMSpec added in v0.4.0

func UpdateVMSpec(nameSpaceID string, vmSpecRegInfo *tbmcir.TbSpecInfo) (*tbmcir.TbSpecInfo, model.WebStatus)

func UpdateVirtualMachineImage added in v0.5.1

func UpdateVirtualMachineImage(nameSpaceID string, virtualMachineImageID string, imageInfo *tbmcir.TbImageInfo) (*tbmcir.TbImageInfo, model.WebStatus)

Types

type CommonURL added in v0.4.0

type CommonURL struct {
	SpiderURL    string
	TumbleBugURL string
	DragonFlyURL string
	LadyBugURL   string
}
type CredentialInfo struct {
	Username string
	Password string
}

func GetCommonURL added in v0.4.0

func GetCommonURL() CommonURL

type IPStackInfo

type IPStackInfo struct {
	IP          string  `json:"ip"`
	Lat         float64 `json:"latitude"`
	Long        float64 `json:"longitude"`
	CountryCode string  `json:"country_code"`
	VMName      string
	VMID        string
	Status      string
}

type Image added in v0.2.8

type Image struct {
	KeyValueList spider.SpKeyValueList `json:"KeyValueList"`
	// contains filtered or unexported fields
}

type ImageRESP added in v0.2.8

type ImageRESP struct {
	Image []struct {
		KeyValueList spider.SpKeyValueList `json:"KeyValueList"`
		// contains filtered or unexported fields
	} `json:"image"`
}

뭐에쓰는 거지?

type RESP

type RESP struct {
	Region []struct {
		RegionName       string                `json:"RegionName"`
		ProviderName     string                `json:"ProviderName"`
		KeyValueInfoList spider.SpKeyValueList `json:"KeyValueInfoList"`
	} `json:"region"`
}

뭐에쓰는 거지?

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL