|
|
@ -1,229 +1,547 @@
|
|
|
|
package account
|
|
|
|
package account
|
|
|
|
|
|
|
|
|
|
|
|
type AccountACLRecord struct {
|
|
|
|
// Access Control List
|
|
|
|
IsExplicit bool `json:"explicit"`
|
|
|
|
type RecordACL struct {
|
|
|
|
GUID string `json:"guid"`
|
|
|
|
// Whether access is explicitly specified
|
|
|
|
Rights string `json:"right"`
|
|
|
|
IsExplicit bool `json:"explicit"`
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
Type string `json:"type"`
|
|
|
|
// GUID
|
|
|
|
UgroupID string `json:"userGroupId"`
|
|
|
|
GUID string `json:"guid"`
|
|
|
|
CanBeDeleted bool `json:"canBeDeleted"`
|
|
|
|
|
|
|
|
|
|
|
|
// Access rights
|
|
|
|
|
|
|
|
Rights string `json:"right"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Account Type
|
|
|
|
|
|
|
|
Type string `json:"type"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Account owner ID
|
|
|
|
|
|
|
|
UgroupID string `json:"userGroupId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Is it possible to remove
|
|
|
|
|
|
|
|
CanBeDeleted bool `json:"canBeDeleted"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource limits
|
|
|
|
type ResourceLimits struct {
|
|
|
|
type ResourceLimits struct {
|
|
|
|
CUC float64 `json:"CU_C"`
|
|
|
|
// Number of cores
|
|
|
|
CUD float64 `json:"CU_D"`
|
|
|
|
CUC float64 `json:"CU_C"`
|
|
|
|
CUI float64 `json:"CU_I"`
|
|
|
|
|
|
|
|
CUM float64 `json:"CU_M"`
|
|
|
|
// Disk size, GB
|
|
|
|
CUNP float64 `json:"CU_NP"`
|
|
|
|
CUD float64 `json:"CU_D"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of public IP addresses
|
|
|
|
|
|
|
|
CUI float64 `json:"CU_I"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// RAM size, MB
|
|
|
|
|
|
|
|
CUM float64 `json:"CU_M"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Traffic volume, GB
|
|
|
|
|
|
|
|
CUNP float64 `json:"CU_NP"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of graphics cores
|
|
|
|
GPUUnits float64 `json:"gpu_units"`
|
|
|
|
GPUUnits float64 `json:"gpu_units"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountRecord struct {
|
|
|
|
// Main information of account
|
|
|
|
DCLocation string `json:"DCLocation"`
|
|
|
|
type InfoAccount struct {
|
|
|
|
CKey string `jspn:"_ckey"`
|
|
|
|
// Segment
|
|
|
|
Meta []interface{} `json:"_meta"`
|
|
|
|
DCLocation string `json:"DCLocation"`
|
|
|
|
ACL []AccountACLRecord `json:"acl"`
|
|
|
|
|
|
|
|
Company string `json:"company"`
|
|
|
|
// Key
|
|
|
|
CompanyURL string `json:"companyurl"`
|
|
|
|
CKey string `jspn:"_ckey"`
|
|
|
|
CreatedBy string `jspn:"createdBy"`
|
|
|
|
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
// Meta
|
|
|
|
DeactiovationTime float64 `json:"deactivationTime"`
|
|
|
|
Meta []interface{} `json:"_meta"`
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
// Access Control List
|
|
|
|
DisplayName string `json:"displayname"`
|
|
|
|
ACL []RecordACL `json:"acl"`
|
|
|
|
GUID uint64 `json:"guid"`
|
|
|
|
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
// Company
|
|
|
|
Name string `json:"name"`
|
|
|
|
Company string `json:"company"`
|
|
|
|
ResourceLimits ResourceLimits `json:"resourceLimits"`
|
|
|
|
|
|
|
|
SendAccessEmails bool `json:"sendAccessEmails"`
|
|
|
|
// Company URL
|
|
|
|
ServiceAccount bool `json:"serviceAccount"`
|
|
|
|
CompanyURL string `json:"companyurl"`
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
// Created by
|
|
|
|
Version uint64 `json:"version"`
|
|
|
|
CreatedBy string `jspn:"createdBy"`
|
|
|
|
VINS []uint64 `json:"vins"`
|
|
|
|
|
|
|
|
}
|
|
|
|
// Created time
|
|
|
|
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
type AccountList []AccountRecord
|
|
|
|
|
|
|
|
|
|
|
|
// Deactiovation time
|
|
|
|
type AccountCloudApi struct {
|
|
|
|
DeactiovationTime float64 `json:"deactivationTime"`
|
|
|
|
ACL []AccountACLRecord `json:"acl"`
|
|
|
|
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
// Deleted by
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
|
|
|
|
Name string `json:"name"`
|
|
|
|
// Deleted time
|
|
|
|
Status string `json:"status"`
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
|
|
|
|
}
|
|
|
|
// Display name
|
|
|
|
|
|
|
|
DisplayName string `json:"displayname"`
|
|
|
|
type AccountCloudApiList []AccountCloudApi
|
|
|
|
|
|
|
|
|
|
|
|
// GUID
|
|
|
|
|
|
|
|
GUID uint64 `json:"guid"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ID
|
|
|
|
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Name
|
|
|
|
|
|
|
|
Name string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource Limits
|
|
|
|
|
|
|
|
ResourceLimits ResourceLimits `json:"resourceLimits"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// If true send emails when a user is granted access to resources
|
|
|
|
|
|
|
|
SendAccessEmails bool `json:"sendAccessEmails"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Service Account
|
|
|
|
|
|
|
|
ServiceAccount bool `json:"serviceAccount"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated time
|
|
|
|
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Version
|
|
|
|
|
|
|
|
Version uint64 `json:"version"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// List VINS in account
|
|
|
|
|
|
|
|
VINS []uint64 `json:"vins"`
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Main information in one of if the list of accounts
|
|
|
|
|
|
|
|
type ItemAccount struct {
|
|
|
|
|
|
|
|
// Access Control List
|
|
|
|
|
|
|
|
ACL []RecordACL `json:"acl"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created time
|
|
|
|
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted time
|
|
|
|
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ID
|
|
|
|
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Name
|
|
|
|
|
|
|
|
Name string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated time
|
|
|
|
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// List of accounts
|
|
|
|
|
|
|
|
type ListAccounts []ItemAccount
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resources used
|
|
|
|
type Resource struct {
|
|
|
|
type Resource struct {
|
|
|
|
CPU int64 `json:"cpu"`
|
|
|
|
// Number of cores
|
|
|
|
DiskSize int64 `json:"disksize"`
|
|
|
|
CPU int64 `json:"cpu"`
|
|
|
|
ExtIPs int64 `json:"extips"`
|
|
|
|
|
|
|
|
|
|
|
|
// Disk size
|
|
|
|
|
|
|
|
DiskSize int64 `json:"disksize"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of External IPs
|
|
|
|
|
|
|
|
ExtIPs int64 `json:"extips"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// External traffic
|
|
|
|
ExtTraffic int64 `json:"exttraffic"`
|
|
|
|
ExtTraffic int64 `json:"exttraffic"`
|
|
|
|
GPU int64 `json:"gpu"`
|
|
|
|
|
|
|
|
RAM int64 `json:"ram"`
|
|
|
|
// Number of grafic cores
|
|
|
|
|
|
|
|
GPU int64 `json:"gpu"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of RAM
|
|
|
|
|
|
|
|
RAM int64 `json:"ram"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Information about resources
|
|
|
|
type Resources struct {
|
|
|
|
type Resources struct {
|
|
|
|
Current Resource `json:"Current"`
|
|
|
|
// Current information about resources
|
|
|
|
|
|
|
|
Current Resource `json:"Current"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Reserved information about resources
|
|
|
|
Reserved Resource `json:"Reserved"`
|
|
|
|
Reserved Resource `json:"Reserved"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Information about computes
|
|
|
|
type Computes struct {
|
|
|
|
type Computes struct {
|
|
|
|
|
|
|
|
// Number of started computes
|
|
|
|
Started uint64 `json:"started"`
|
|
|
|
Started uint64 `json:"started"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of stopped computes
|
|
|
|
Stopped uint64 `json:"stopped"`
|
|
|
|
Stopped uint64 `json:"stopped"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Information about machines
|
|
|
|
type Machines struct {
|
|
|
|
type Machines struct {
|
|
|
|
|
|
|
|
// Number of running machines
|
|
|
|
Running uint64 `json:"running"`
|
|
|
|
Running uint64 `json:"running"`
|
|
|
|
Halted uint64 `json:"halted"`
|
|
|
|
|
|
|
|
|
|
|
|
// Number of halted machines
|
|
|
|
|
|
|
|
Halted uint64 `json:"halted"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountWithResources struct {
|
|
|
|
// Сomplete information about account
|
|
|
|
Account
|
|
|
|
type RecordAccount struct {
|
|
|
|
|
|
|
|
// Main information about account
|
|
|
|
|
|
|
|
InfoAccount
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resources
|
|
|
|
Resources Resources `json:"Resources"`
|
|
|
|
Resources Resources `json:"Resources"`
|
|
|
|
Computes Computes `json:"computes"`
|
|
|
|
|
|
|
|
Machines Machines `json:"machines"`
|
|
|
|
// Computes
|
|
|
|
VINSes uint64 `json:"vinses"`
|
|
|
|
Computes Computes `json:"computes"`
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
// Machines
|
|
|
|
type AccountCompute struct {
|
|
|
|
Machines Machines `json:"machines"`
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
|
|
|
|
AccountName string `json:"accountName"`
|
|
|
|
// Number of VINSes
|
|
|
|
CPUs uint64 `json:"cpus"`
|
|
|
|
VINSes uint64 `json:"vinses"`
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
}
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
// Main information about compute
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
type ItemCompute struct {
|
|
|
|
ComputeID uint64 `json:"id"`
|
|
|
|
// ID an account
|
|
|
|
ComputeName string `json:"name"`
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
RAM uint64 `json:"ram"`
|
|
|
|
|
|
|
|
Registered bool `json:"registered"`
|
|
|
|
// Account name
|
|
|
|
RGID uint64 `json:"rgId"`
|
|
|
|
AccountName string `json:"accountName"`
|
|
|
|
RGName string `json:"rgName"`
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
// Number of CPU
|
|
|
|
TechStatus string `json:"techStatus"`
|
|
|
|
CPUs uint64 `json:"cpus"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created by
|
|
|
|
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created time
|
|
|
|
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted by
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted time
|
|
|
|
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// ID compute
|
|
|
|
|
|
|
|
ComputeID uint64 `json:"id"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Compute name
|
|
|
|
|
|
|
|
ComputeName string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of RAM
|
|
|
|
|
|
|
|
RAM uint64 `json:"ram"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Registered or not
|
|
|
|
|
|
|
|
Registered bool `json:"registered"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource group ID
|
|
|
|
|
|
|
|
RGID uint64 `json:"rgId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource group Name
|
|
|
|
|
|
|
|
RGName string `json:"rgName"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Tech status
|
|
|
|
|
|
|
|
TechStatus string `json:"techStatus"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Total disks size
|
|
|
|
TotalDisksSize uint64 `json:"totalDisksSize"`
|
|
|
|
TotalDisksSize uint64 `json:"totalDisksSize"`
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
// Updated by
|
|
|
|
UserManaged bool `json:"userManaged"`
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
VINSConnected uint64 `json:"vinsConnected"`
|
|
|
|
|
|
|
|
|
|
|
|
// Updated time
|
|
|
|
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// User controlled or not
|
|
|
|
|
|
|
|
UserManaged bool `json:"userManaged"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of connected VINS
|
|
|
|
|
|
|
|
VINSConnected uint64 `json:"vinsConnected"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountComputesList []AccountCompute
|
|
|
|
// List of computes
|
|
|
|
|
|
|
|
type ListComputes []ItemCompute
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Main information about disk
|
|
|
|
|
|
|
|
type ItemDisk struct {
|
|
|
|
|
|
|
|
// ID
|
|
|
|
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Name
|
|
|
|
|
|
|
|
Name string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
type AccountDisk struct {
|
|
|
|
// Pool
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
Pool string `json:"pool"`
|
|
|
|
Name string `json:"name"`
|
|
|
|
|
|
|
|
Pool string `json:"pool"`
|
|
|
|
// ID SEP
|
|
|
|
SepID uint64 `json:"sepId"`
|
|
|
|
SEPID uint64 `json:"sepId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Max size
|
|
|
|
SizeMax uint64 `json:"sizeMax"`
|
|
|
|
SizeMax uint64 `json:"sizeMax"`
|
|
|
|
Type string `json:"type"`
|
|
|
|
|
|
|
|
|
|
|
|
// Disk type
|
|
|
|
|
|
|
|
Type string `json:"type"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountDisksList []AccountDisk
|
|
|
|
// List of disks
|
|
|
|
|
|
|
|
type ListDisks []ItemDisk
|
|
|
|
|
|
|
|
|
|
|
|
type AccountVIN struct {
|
|
|
|
// Main information about VINS
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
type ItemVINS struct {
|
|
|
|
|
|
|
|
// Account ID
|
|
|
|
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Name of account
|
|
|
|
AccountName string `json:"accountName"`
|
|
|
|
AccountName string `json:"accountName"`
|
|
|
|
Computes uint64 `json:"computes"`
|
|
|
|
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
// Number of computes
|
|
|
|
|
|
|
|
Computes uint64 `json:"computes"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created by
|
|
|
|
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created time
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted by
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted time
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
ExternalIP string `json:"externalIP"`
|
|
|
|
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
// External IP
|
|
|
|
Name string `json:"name"`
|
|
|
|
ExternalIP string `json:"externalIP"`
|
|
|
|
Network string `json:"network"`
|
|
|
|
|
|
|
|
PriVnfDevID uint64 `json:"priVnfDevId"`
|
|
|
|
// ID
|
|
|
|
RGID uint64 `json:"rgId"`
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
RGName string `json:"rgName"`
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
// Name
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
Name string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Network
|
|
|
|
|
|
|
|
Network string `json:"network"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// NNFDev ID
|
|
|
|
|
|
|
|
PriVNFDevID uint64 `json:"priVnfDevId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource group ID
|
|
|
|
|
|
|
|
RGID uint64 `json:"rgId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource group name
|
|
|
|
|
|
|
|
RGName string `json:"rgName"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated by
|
|
|
|
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated time
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountVINSList []AccountVIN
|
|
|
|
// List of VINS
|
|
|
|
|
|
|
|
type ListVINS []ItemVINS
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Main info about audit
|
|
|
|
|
|
|
|
type ItemAudit struct {
|
|
|
|
|
|
|
|
// Call
|
|
|
|
|
|
|
|
Call string `json:"call"`
|
|
|
|
|
|
|
|
|
|
|
|
type AccountAudit struct {
|
|
|
|
// Response time
|
|
|
|
Call string `json:"call"`
|
|
|
|
|
|
|
|
ResponseTime float64 `json:"responsetime"`
|
|
|
|
ResponseTime float64 `json:"responsetime"`
|
|
|
|
StatusCode uint64 `json:"statuscode"`
|
|
|
|
|
|
|
|
Timestamp float64 `json:"timestamp"`
|
|
|
|
// Status code
|
|
|
|
User string `json:"user"`
|
|
|
|
StatusCode uint64 `json:"statuscode"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Timestamp
|
|
|
|
|
|
|
|
Timestamp float64 `json:"timestamp"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// User
|
|
|
|
|
|
|
|
User string `json:"user"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountAuditsList []AccountAudit
|
|
|
|
// List of audits
|
|
|
|
|
|
|
|
type ListAudits []ItemAudit
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Information compute in resource group
|
|
|
|
|
|
|
|
type RGComputes struct {
|
|
|
|
|
|
|
|
// Number of started computes
|
|
|
|
|
|
|
|
Started uint64 `json:"started"`
|
|
|
|
|
|
|
|
|
|
|
|
type AccountRGComputes struct {
|
|
|
|
// Number of stopped computes
|
|
|
|
Started uint64 `json:"Started"`
|
|
|
|
Stopped uint64 `json:"stopped"`
|
|
|
|
Stopped uint64 `json:"Stopped"`
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountRGResources struct {
|
|
|
|
// Resources of Resource group
|
|
|
|
|
|
|
|
type RGResources struct {
|
|
|
|
|
|
|
|
// Consumed
|
|
|
|
Consumed Resource `json:"Consumed"`
|
|
|
|
Consumed Resource `json:"Consumed"`
|
|
|
|
Limits Resource `json:"Limits"`
|
|
|
|
|
|
|
|
|
|
|
|
// Limits
|
|
|
|
|
|
|
|
Limits Resource `json:"Limits"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Reserved
|
|
|
|
Reserved Resource `json:"Reserved"`
|
|
|
|
Reserved Resource `json:"Reserved"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountRG struct {
|
|
|
|
// Main information about resource group
|
|
|
|
Computes AccountRGComputes `json:"Computes"`
|
|
|
|
type ItemRG struct {
|
|
|
|
Resources AccountRGResources `json:"Resources"`
|
|
|
|
// Computes
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
Computes RGComputes `json:"Computes"`
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
// Resources
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
Resources RGResources `json:"Resources"`
|
|
|
|
RGID uint64 `json:"id"`
|
|
|
|
|
|
|
|
Milestones uint64 `json:"milestones"`
|
|
|
|
// Created by
|
|
|
|
RGName string `json:"name"`
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
// Created time
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
VINSes uint64 `json:"vinses"`
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted by
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted time
|
|
|
|
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource group ID
|
|
|
|
|
|
|
|
RGID uint64 `json:"id"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Milestones
|
|
|
|
|
|
|
|
Milestones uint64 `json:"milestones"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Resource group name
|
|
|
|
|
|
|
|
RGName string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated by
|
|
|
|
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated time
|
|
|
|
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Number of VINS
|
|
|
|
|
|
|
|
VINSes uint64 `json:"vinses"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountRGList []AccountRG
|
|
|
|
// List of Resource groups
|
|
|
|
|
|
|
|
type ListRG []ItemRG
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Main information about template
|
|
|
|
|
|
|
|
type ItemTemplate struct {
|
|
|
|
|
|
|
|
// UNCPath
|
|
|
|
|
|
|
|
UNCPath string `json:"UNCPath"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Account ID
|
|
|
|
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
|
|
|
|
|
|
|
|
type AccountTemplate struct {
|
|
|
|
// Description
|
|
|
|
UNCPath string `json:"UNCPath"`
|
|
|
|
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
|
|
|
|
Description string `json:"desc"`
|
|
|
|
Description string `json:"desc"`
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
|
|
|
|
Name string `json:"name"`
|
|
|
|
// ID
|
|
|
|
Public bool `json:"public"`
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
Size uint64 `json:"size"`
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
// Name
|
|
|
|
Type string `json:"type"`
|
|
|
|
Name string `json:"name"`
|
|
|
|
Username string `json:"username"`
|
|
|
|
|
|
|
|
}
|
|
|
|
// Public or not
|
|
|
|
|
|
|
|
Public bool `json:"public"`
|
|
|
|
type AccountTemplatesList []AccountTemplate
|
|
|
|
|
|
|
|
|
|
|
|
// Size
|
|
|
|
type AccountFlipGroup struct {
|
|
|
|
Size uint64 `json:"size"`
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
|
|
|
|
ClientType string `json:"clientType"`
|
|
|
|
// Status
|
|
|
|
ConnType string `json:"connType"`
|
|
|
|
Status string `json:"status"`
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
|
|
|
|
|
|
|
|
// Type
|
|
|
|
|
|
|
|
Type string `json:"type"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Username
|
|
|
|
|
|
|
|
Username string `json:"username"`
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// List of templates
|
|
|
|
|
|
|
|
type ListTemplates []ItemTemplate
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Main information about FLIPGroup
|
|
|
|
|
|
|
|
type ItemFLIPGroup struct {
|
|
|
|
|
|
|
|
// Account ID
|
|
|
|
|
|
|
|
AccountID uint64 `json:"accountId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Client type
|
|
|
|
|
|
|
|
ClientType string `json:"clientType"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Connection type
|
|
|
|
|
|
|
|
ConnType string `json:"connType"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created by
|
|
|
|
|
|
|
|
CreatedBy string `json:"createdBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Created time
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
CreatedTime uint64 `json:"createdTime"`
|
|
|
|
DefaultGW string `json:"defaultGW"`
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
// Default GW
|
|
|
|
|
|
|
|
DefaultGW string `json:"defaultGW"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted by
|
|
|
|
|
|
|
|
DeletedBy string `json:"deletedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Deleted time
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
DeletedTime uint64 `json:"deletedTime"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Description
|
|
|
|
Description string `json:"desc"`
|
|
|
|
Description string `json:"desc"`
|
|
|
|
GID uint64 `json:"gid"`
|
|
|
|
|
|
|
|
GUID uint64 `json:"guid"`
|
|
|
|
// Grid ID
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
GID uint64 `json:"gid"`
|
|
|
|
IP string `json:"ip"`
|
|
|
|
|
|
|
|
Milestones uint64 `json:"milestones"`
|
|
|
|
// GUID
|
|
|
|
Name string `json:"name"`
|
|
|
|
GUID uint64 `json:"guid"`
|
|
|
|
NetID uint64 `json:"netId"`
|
|
|
|
|
|
|
|
NetType string `json:"netType"`
|
|
|
|
// ID
|
|
|
|
NetMask uint64 `json:"netmask"`
|
|
|
|
ID uint64 `json:"id"`
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
// IP
|
|
|
|
|
|
|
|
IP string `json:"ip"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Milestones
|
|
|
|
|
|
|
|
Milestones uint64 `json:"milestones"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Name
|
|
|
|
|
|
|
|
Name string `json:"name"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Network ID
|
|
|
|
|
|
|
|
NetID uint64 `json:"netId"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Network type
|
|
|
|
|
|
|
|
NetType string `json:"netType"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Network mask
|
|
|
|
|
|
|
|
NetMask uint64 `json:"netmask"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Status
|
|
|
|
|
|
|
|
Status string `json:"status"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated by
|
|
|
|
|
|
|
|
UpdatedBy string `json:"updatedBy"`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Updated time
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
UpdatedTime uint64 `json:"updatedTime"`
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
type AccountFlipGroupsList []AccountFlipGroup
|
|
|
|
// List of FLIPGroups
|
|
|
|
|
|
|
|
type ListFLIPGroups []ItemFLIPGroup
|
|
|
|