pcm-openstack/pb/pcm-openstack.proto

4190 lines
115 KiB
Protocol Buffer
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

syntax = "proto3";
package openstack;
option go_package = "/openstack";
/******************Overview Start*************************/
message GetComputeLimitsReq{
string platform = 1;
}
message GetComputeLimitsResp{
message Rate{
}
message Absolute{
int64 maxServerMeta = 1;
int64 maxPersonality = 2;
int64 totalServerGroupsUsed = 3;
int64 maxImageMeta = 4;
int64 maxPersonalitySize = 5;
int64 maxTotalKeypairs = 6;
int64 maxSecurityGroupRules = 7;
int64 maxServerGroups = 8;
int64 totalCoresUsed = 9;
int64 totalRAMUsed = 10;
int64 totalInstancesUsed = 11;
int64 maxSecurityGroups = 12;
int64 totalFloatingIpsUsed = 13;
int64 maxTotalCores = 14;
int64 maxServerGroupMembers = 15;
int64 maxTotalFloatingIps = 16;
int64 totalSecurityGroupsUsed = 17;
int64 maxTotalInstances = 18;
int64 maxTotalRAMSize = 19;
}
Limits limits = 1;
message Limits{
repeated Rate rate = 1;
Absolute absolute =2;
}
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg = 4;// @gotags: copier:"ErrorMsg"
}
message GetVolumeLimitsReq{
string platform = 1;
}
message GetVolumeLimitsResp{
message Rate{
}
message Absolute{
int32 totalSnapshotsUsed = 1;
int32 maxTotalBackups = 2;
int32 maxTotalVolumeGigabytes = 3;
int32 maxTotalSnapshots = 4;
int32 maxTotalBackupGigabytes = 5;
int32 totalBackupGigabytesUsed = 6;
int32 maxTotalVolumes = 7;
int32 totalVolumesUsed = 8;
int32 totalBackupsUsed = 9;
int32 totalGigabytesUsed = 10;
}
message Limits{
repeated Rate rate= 1;
Absolute absolute = 2;
}
Limits limits = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg = 4;// @gotags: copier:"ErrorMsg"
}
/******************Overview End*************************/
/******************List servers Start*************************/
message ListServersReq{
int32 limit = 1; // @gotags: copier:"Limit"
int32 offset = 2; // @gotags: copier:"Offset"
string platform = 3;
}
message ListServersResp{
message Links {
string href = 1;
string rel = 2;
}
message Servers {
string id = 1; //The UUID of the server
repeated Links links = 2; //有关资源的链接。
string name = 3; //The server name
}
message Servers_links {
string href = 1;
string rel = 2;
}
repeated Servers servers = 1; //对象列表。server
repeated Servers_links servers_links = 2; //链接到下一个服务器
int32 code = 3; // @gotags: copier:"Code"
string msg = 4; // @gotags: copier:"Msg"
string error_msg =5;// @gotags: copier:"ErrorMsg"
}
message ListServersDetailedReq {
string platform = 1;
}
message ListServersDetailedResp {
message ServersDetailed {
string OSTaskState = 1;
string Status =2;
string VmState = 3;
string OS_EXT_SRV_ATTR_Instance_Name = 4;
string Created = 5;
string HostId = 6;
string Ip = 7;
string Image =8;
string Updated = 9;
string Flavor =10;
string Id =11;
string Name =12;
string Key_name =13;
int32 Survival_time =14;
}
repeated ServersDetailed servers = 1; // @gotags: copier:"ServersDetailed"
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
/******************List servers end*************************/
/******************create servers start*********************/
//The message is consistent with the wdbsite,
//so see the detailed annontation via web,https://docs.openstack.org/api-ref/compute/
//req
message CreateServerReq {
string platform = 1;
CrServer crServer = 2;
message CrServer{
Server server = 1; // @gotags: copier:"Server"
}
message Networks {
string uuid = 1; // @gotags: copier:"Uuid"
string port = 2;
string fixed_ip = 3;
string tag = 4;
}
message Block_device_mapping_v2 {
string boot_index = 1; // @gotags: copier:"BootIndex"
bool delete_on_termination = 2; // @gotags: copier:"DeleteOnTermination"
string destination_type = 3;
string device_name = 4;
string device_type = 5;
string disk_bus = 6;
string guest_format = 7;
bool no_device = 8;
string source_type = 9; // @gotags: copier:"SourceType"
string uuid = 10; // @gotags: copier:"Uuid"
string volume_size = 11;
string tag = 12;
string volume_type = 13; // @gotags: copier:"VolumeType"
}
message Metadata {
string My_Server_Name = 1 [json_name="My Server Name"];
}
message Personality {
string path = 1;
string contents = 2;
}
message Security_groups {
string name = 1;
}
message Server {
string flavorRef = 1; // @gotags: copier:"FlavorRef"
string name = 2; // @gotags: copier:"Name"
repeated Networks networks = 3; // @gotags: copier:"Networks"
string imageRef = 10; // @gotags: copier:"ImageRef"
string accessIPv4 = 4;
string accessIPv6 = 5;
string adminPass = 6;
string availability_zone = 7;// @gotags: copier:"AvailabilityZone"
repeated Block_device_mapping_v2 block_device_mapping_v2 = 8; // @gotags: copier:"BlockDeviceMappingV2"
bool config_drive = 9;
string key_name = 11;
Metadata metadata = 12;
string OS_DCF_diskConfig = 13 [json_name="OS-DCF:diskConfig"]; // @gotags: copier:"OSDCFDiskConfig"
repeated Personality personality = 14;
repeated Security_groups security_groups = 15;
string user_data = 16;
string description = 17; // @gotags: copier:"Description"
string hostname = 18;
repeated string tags = 19;
repeated string trusted_image_certificates = 20;
string host = 21;
string hypervisor_hostname = 22;
int32 min_count =23;
}
message Os_sch_hnt_scheduler_hints {
repeated string same_host = 1;
string build_near_host_ip = 2;
string cidr = 3;
repeated string different_cell = 4;
repeated string different_host = 5;
string group = 6;
string query = 7;
string target_cell = 8;
}
// Server server = 1; // @gotags: copier:"Server"
}
//resp
message CreateServerResp{
message Links {
string href = 1;
string rel = 2;
}
message Security_groups {
string name = 1; // @gotags: copier:"Name"
}
message Server {
string id = 1; // @gotags: copier:"Id"
repeated Links links = 2; //
string OS_DCF_diskConfig = 3 [json_name="OS-DCF:diskConfig"]; // @gotags: copier:"OSDCFDiskConfig"
repeated Security_groups security_groups = 4; // @gotags: copier:"SecurityGroups"
string adminPass =5; // @gotags: copier:"AdminPass"
}
Server server = 1; // @gotags: copier:"Server"
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
/******************create server end*************************/
/******************Delete server start*************************/
//The message is consistent with the wdbsite,
//so see the detailed annontation via web,https://docs.openstack.org/api-ref/compute/
//Req
message DeleteServerReq{
string server_id = 1; // @gotags: copier:"ServerId"
string platform = 2;
}
//Resp
message DeleteServerResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/******************Delete server end*************************/
/******************ListServerDetailedById server start*************************/
//The message is consistent with the wdbsite,
//so see the detailed annontation via web,https://docs.openstack.org/api-ref/compute/
//Req
message GetServersDetailedByIdReq{
string server_id = 1; // @gotags: copier:"ServerId"
string platform = 2;
}
//Resp
message GetServersDetailedByIdResp{
message Private {
string OS_EXT_IPS_MAC_mac_addr = 1 [json_name="OS-EXT-IPS-MAC:mac_addr"];
string OS_EXT_IPS_type = 2[json_name="OS-EXT-IPS:type"];
string addr = 3;
uint32 version = 4;
}
message Addresses {
repeated Private private = 1;
}
message Extra_specs {
}
message Flavor {
string id = 1;
string links = 2;
uint32 vcpus = 3;
uint32 ram = 4;
uint32 disk = 5;
uint32 ephemeral = 6;
uint32 swap = 7;
string original_name = 8;
Extra_specs extra_specs = 9;
}
message Links {
string href = 1;
string rel = 2;
}
message Image {
string id = 1;
repeated Links links = 2;
}
message Links1 {
string href = 1;
string rel = 2;
}
message Metadata {
}
message Os_extended_volumes_volumes_attached {
string id = 1;
bool delete_on_termination = 2;
}
message Fault {
uint32 code = 1;
string created = 2;
string message = 3;
string details = 4;
}
message Security_groups {
string name = 1;
}
message Servers {
string accessIPv4 = 1;
string accessIPv6 = 2;
Addresses addresses = 3;
string config_drive = 4;
string created = 5;
Flavor flavor = 6;
string hostId = 7;
string id = 8;
Image image = 9;
string key_name = 10;
repeated Links1 links = 11;
Metadata metadata = 12;
string name = 13;
string OS_DCF_diskConfig = 14[json_name = "OS-DCF:diskConfig"];
string OS_EXT_AZ_availability_zone = 15[json_name = "OS-EXT-AZ:availability_zone"];
string OS_EXT_SRV_ATTR_host = 16[json_name = "OS-EXT-SRV-ATTR:host"];
string OS_EXT_SRV_ATTR_hostname = 17[json_name = "OS-EXT-SRV-ATTR:hostname"];
string OS_EXT_SRV_ATTR_hypervisor_hostname = 18[json_name = "OS-EXT-SRV-ATTR:hypervisor_hostname"];
string OS_EXT_SRV_ATTR_instance_name = 19[json_name = "OS-EXT-SRV-ATTR:instance_name"];
string OS_EXT_SRV_ATTR_kernel_id = 20[json_name = "OS-EXT-SRV-ATTR:kernel_id"];
uint32 OS_EXT_SRV_ATTR_launch_index = 21[json_name = "OS-EXT-SRV-ATTR:launch_index"];
string OS_EXT_SRV_ATTR_ramdisk_id = 22[json_name = "OS-EXT-SRV-ATTR:ramdisk_id"];
string OS_EXT_SRV_ATTR_reservation_id = 23[json_name = "OS-EXT-SRV-ATTR:reservation_id"];
string OS_EXT_SRV_ATTR_root_device_name = 24[json_name = "OS-EXT-SRV-ATTR:root_device_name"];
string OS_EXT_SRV_ATTR_user_data = 25[json_name = "OS-EXT-SRV-ATTR:user_data"];
uint32 OS_EXT_STS_power_state = 26[json_name = "OS-EXT-STS:power_state"];
string OS_EXT_STS_task_state = 27[json_name = "OS-EXT-STS:task_state"];
string OS_EXT_STS_vm_state = 28[json_name = "OS-EXT-STS:vm_state"];
repeated Os_extended_volumes_volumes_attached os_extended_volumes_volumes_attached = 29[json_name = "os-extended-volumes:volumes_attached"];
string OS_SRV_USG_launched_at = 30[json_name = "OS-SRV-USG:launched_at"];
string OS_SRV_USG_terminated_at = 31[json_name = "OS-SRV-USG:terminated_at"];
string status = 32;
string tenant_id = 33;
string updated = 34;
string user_id = 35;
Fault fault = 36;
uint32 progress = 37;
repeated Security_groups security_groups = 38;
bool locked = 39;
string host_status = 40;
string description = 41;
repeated string tags = 42;
string trusted_image_certificates = 43;
repeated string server_groups = 44;
string locked_reason = 45;
}
Servers server = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
/******************update server Start*************************/
message UpdateServerReq{
string server_id =1;
ServerUpdate server_update = 2;
string platform = 3;
}
message ServerUpdate {
Server server=2;
}
message Server {
string accessIPv4 = 1;
string accessIPv6 = 2;
string OS_DCF_diskConfig = 3[json_name = "OS-DCF:diskConfig"];
string name = 4;
string description = 5;
}
message UpdateServerResp{
message Private {
string OS_EXT_IPS_MAC_mac_addr = 1[json_name = "OS-EXT-IPS-MAC:mac_addr"];
string OS_EXT_IPS_type = 2[json_name = "OS-EXT-IPS:type"];
string addr = 3;
uint32 version = 4;
}
message Addresses {
repeated Private private = 1;
}
message Extra_specs {
}
message Flavor {
uint32 disk = 1;
uint32 ephemeral = 2;
Extra_specs extra_specs = 3;
string original_name = 4;
uint32 ram = 5;
uint32 swap = 6;
uint32 vcpus = 7;
}
message Links {
string href = 1;
string rel = 2;
}
message Image {
string id = 1;
repeated Links links = 2;
}
message Links1 {
string href = 1;
string rel = 2;
}
message Metadata {
string My_Server_Name = 1[json_name = "My Server Name"];
}
message Security_groups {
string name = 1;
}
message Server {
string OS_DCF_diskConfig = 1[json_name = "OS-DCF:diskConfig"];
string OS_EXT_AZ_availability_zone = 2[json_name = "OS-EXT-AZ:availability_zone"];
string OS_EXT_SRV_ATTR_host = 3[json_name = "OS-EXT-SRV-ATTR:host"];
string OS_EXT_SRV_ATTR_hostname = 4[json_name = "OS-EXT-SRV-ATTR:hostname"];
string OS_EXT_SRV_ATTR_hypervisor_hostname = 5[json_name = "OS-EXT-SRV-ATTR:hypervisor_hostname"];
string OS_EXT_SRV_ATTR_instance_name = 6[json_name = "OS-EXT-SRV-ATTR:instance_name"];
string OS_EXT_SRV_ATTR_kernel_id = 7[json_name = "OS-EXT-SRV-ATTR:kernel_id"];
uint32 OS_EXT_SRV_ATTR_launch_index = 8[json_name = "OS-EXT-SRV-ATTR:launch_index"];
string OS_EXT_SRV_ATTR_ramdisk_id = 9[json_name = "OS-EXT-SRV-ATTR:ramdisk_id"];
string OS_EXT_SRV_ATTR_reservation_id = 10[json_name = "OS-EXT-SRV-ATTR:reservation_id"];
string OS_EXT_SRV_ATTR_root_device_name = 11[json_name = "OS-EXT-SRV-ATTR:root_device_name"];
string OS_EXT_SRV_ATTR_user_data = 12[json_name = "OS-EXT-SRV-ATTR:user_data"];
uint32 OS_EXT_STS_power_state = 13[json_name = "OS-EXT-STS:power_state"];
string OS_EXT_STS_task_state = 14[json_name = "OS-EXT-STS:task_state"];
string OS_EXT_STS_vm_state = 15[json_name = "OS-EXT-STS:vm_state"];
string OS_SRV_USG_launched_at = 16[json_name = "OS-SRV-USG:launched_at"];
string OS_SRV_USG_terminated_at = 17[json_name = "OS-SRV-USG:terminated_at"];
string accessIPv4 = 18;
string accessIPv6 = 19;
Addresses addresses = 20;
string config_drive = 21;
string created = 22;
string description = 23;
Flavor flavor = 24;
string hostId = 25;
string host_status = 26;
string id = 27;
Image image = 28;
string key_name = 29;
repeated Links1 links = 30;
bool locked = 31;
string locked_reason = 32;
Metadata metadata = 33;
string name = 34;
repeated string os_extended_volumes_volumes_attached = 35[json_name = "os-extended-volumes:volumes_attached"];
uint32 progress = 36;
repeated Security_groups security_groups = 37;
repeated string server_groups = 38;
string status = 39;
repeated string tags = 40;
string tenant_id = 41;
string trusted_image_certificates = 42;
string updated = 43;
string user_id = 44;
}
Server server = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message StartServerReq{
string server_id = 1;
map<string,string> action =2;
string start_action =3;
string platform = 4;
}
message StartServerResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message StopServerReq{
string server_id = 1;
map<string,string> action =2;
string stop_action =3;
string platform = 4;
}
message StopServerResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message RebootServerReq{
string server_id = 1;
message Reboot {
string type = 1;
}
Reboot reboot = 2;
string platform = 3;
}
message RebootServerResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message PauseServerReq{
string server_id = 1;
map<string,string> action =2;
string pause_action =3;
string platform = 4;
}
message PauseServerResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message RebuildServerReq {
string server_id = 1;
Rebuild rebuild =2;
string platform = 3;
message Rebuild {
string imageRef =2;
string accessIPv4 =3;
string accessIPv6 =4;
string adminPass =5;
Metadata metadata =6;
string name =7;
string OS_DCF_diskConfig = 8[json_name = "OS-DCF:diskConfig"];
repeated Personality personality= 9;
bool preserve_ephemeral =10;
string description =11;
string key_name =12;
string user_data =13;
repeated trusted_image_certificates trusted_image_certificates =14;
string hostname =15;
}
message Metadata {
}
message Personality {
string path =1;
string contents =2;
}
message trusted_image_certificates{
}
}
message RebuildServerResp {
message Private {
string OS_EXT_IPS_MAC_mac_addr = 1 [json_name="OS-EXT-IPS-MAC:mac_addr"];
string OS_EXT_IPS_type = 2[json_name="OS-EXT-IPS:type"];
string addr = 3;
uint32 version = 4;
}
message Addresses {
repeated Private private = 1;
}
message Extra_specs {
}
message Flavor {
string id = 1;
string links = 2;
uint32 vcpus = 3;
uint32 ram = 4;
uint32 disk = 5;
uint32 ephemeral = 6;
uint32 swap = 7;
string original_name = 8;
Extra_specs extra_specs = 9;
}
message Links {
string href = 1;
string rel = 2;
}
message Image {
string id = 1;
repeated Links links = 2;
}
message Links1 {
string href = 1;
string rel = 2;
}
message Metadata {
}
message Os_extended_volumes_volumes_attached {
string id = 1;
bool delete_on_termination = 2;
}
message Fault {
uint32 code = 1;
string created = 2;
string message = 3;
string details = 4;
}
message Security_groups {
string name = 1;
}
message Servers {
string accessIPv4 = 1;
string accessIPv6 = 2;
Addresses addresses = 3;
string config_drive = 4;
string created = 5;
Flavor flavor = 6;
string hostId = 7;
string id = 8;
Image image = 9;
string key_name = 10;
repeated Links1 links = 11;
Metadata metadata = 12;
string name = 13;
string OS_DCF_diskConfig = 14[json_name = "OS-DCF:diskConfig"];
string OS_EXT_AZ_availability_zone = 15[json_name = "OS-EXT-AZ:availability_zone"];
string OS_EXT_SRV_ATTR_host = 16[json_name = "OS-EXT-SRV-ATTR:host"];
string OS_EXT_SRV_ATTR_hostname = 17[json_name = "OS-EXT-SRV-ATTR:hostname"];
string OS_EXT_SRV_ATTR_hypervisor_hostname = 18[json_name = "OS-EXT-SRV-ATTR:hypervisor_hostname"];
string OS_EXT_SRV_ATTR_instance_name = 19[json_name = "OS-EXT-SRV-ATTR:instance_name"];
string OS_EXT_SRV_ATTR_kernel_id = 20[json_name = "OS-EXT-SRV-ATTR:kernel_id"];
uint32 OS_EXT_SRV_ATTR_launch_index = 21[json_name = "OS-EXT-SRV-ATTR:launch_index"];
string OS_EXT_SRV_ATTR_ramdisk_id = 22[json_name = "OS-EXT-SRV-ATTR:ramdisk_id"];
string OS_EXT_SRV_ATTR_reservation_id = 23[json_name = "OS-EXT-SRV-ATTR:reservation_id"];
string OS_EXT_SRV_ATTR_root_device_name = 24[json_name = "OS-EXT-SRV-ATTR:root_device_name"];
string OS_EXT_SRV_ATTR_user_data = 25[json_name = "OS-EXT-SRV-ATTR:user_data"];
uint32 OS_EXT_STS_power_state = 26[json_name = "OS-EXT-STS:power_state"];
string OS_EXT_STS_task_state = 27[json_name = "OS-EXT-STS:task_state"];
string OS_EXT_STS_vm_state = 28[json_name = "OS-EXT-STS:vm_state"];
repeated Os_extended_volumes_volumes_attached os_extended_volumes_volumes_attached = 29[json_name = "os-extended-volumes:volumes_attached"];
string OS_SRV_USG_launched_at = 30[json_name = "OS-SRV-USG:launched_at"];
string OS_SRV_USG_terminated_at = 31[json_name = "OS-SRV-USG:terminated_at"];
string status = 32;
string tenant_id = 33;
string updated = 34;
string user_id = 35;
Fault fault = 36;
uint32 progress = 37;
repeated Security_groups security_groups = 38;
bool locked = 39;
string host_status = 40;
string description = 41;
repeated string tags = 42;
string trusted_image_certificates = 43;
repeated string server_groups = 44;
string locked_reason = 45;
}
Servers server = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ResizeServerReq{
string server_id = 1;
Resize resize =2;
string platform = 3;
message Resize {
string flavorRef =1;
string OS_DCF_diskConfig =2[json_name = "OS-DCF:diskConfig"];
}
}
message ResizeServerResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message MigrateServerReq{
string server_id = 1;
map<string,string> action =2;
string migrate_action =3;
Migrate migrate =4;
string platform = 5;
message Migrate {
map<string,string> host =2;
}
}
message MigrateServerResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message ChangeAdministrativePasswordReq{
string server_id = 1;
Changepassword changePassword = 2;
string platform = 3;
message Changepassword {
string adminPass = 1;
}
}
message ChangeAdministrativePasswordResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message RescueServerReq{
string server_id = 1;
Rescue rescue =2;
string platform = 3;
message Rescue{
string adminPass =2;
string rescue_image_ref =3;
}
}
message RescueServerResp{
string adminPass =1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message UnRescueServerReq{
string server_id = 1;
map<string,string> action =2;
string UnRescue_action =3;
string platform = 4;
}
message UnRescueServerResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UnpauseServerReq{
string server_id =1;
map<string,string> action =2;
string unpause_action =3;
string platform = 4;
}
message UnpauseServerResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message ShelveServerReq {
string server_id =1;
map<string,string> action =2;
string shelve_action =3;
string platform = 4;
}
message ShelveServerResp {
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UnshelveServerReq{
string server_id =1;
map<string,string> action =2;
string unshelve_action =3;
string platform = 4;
}
message UnshelveServerResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message SuspendServerReq{
string server_id =1;
map<string,string> action =2;
string suspend_action =3;
string platform = 4;
}
message SuspendServerResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message AddSecurityGroupToServerReq{
string server_id =1;
AddSecurityGroup addSecurityGroup =2;
string platform = 3;
message AddSecurityGroup{
string name =2;
}
}
message AddSecurityGroupToServerResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message removeSecurityGroupReq{
string server_id =1;
RemoveSecurityGroup removeSecurityGroup =2;
string platform = 3;
message RemoveSecurityGroup{
string name =1;
}
}
message removeSecurityGroupResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/******************update server end*************************/
/******************ListFlavorsDetail start*************************/
message ListFlavorsDetailReq{
string sort_key =1;
string sort_dir =2;
int32 limit =3;
string marker =4;
int32 minDisk =5;
int32 minRam =6;
string is_public =7;
string platform = 8;
}
message ListFlavorsDetailResp{
repeated Flavor flavors =1; // @gotags: copier:"Flavor"
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
message Flavor {
string name = 1;
string description =2;
string id =3;
int32 disk = 4;
uint32 ephemeral = 5;
Extra_specs extra_specs = 6;
string original_name = 7;
int32 ram = 8;
int32 swap = 9;
int32 vcpus = 10;
repeated Links links = 11;
string OS_FLV_EXT_DATA_ephemeral = 12[json_name = "OS-FLV-EXT-DATA:ephemeral"];
string OS_FLV_DISABLED_disabled = 13[json_name = "OS-FLV-DISABLED:disabled"];
float rxtx_factor =15;
bool os_flavor_access_is_public = 16[json_name = "os-flavor-access:is_public"];
}
message Extra_specs {
}
message Links {
string href = 1;
string rel = 2;
}
}
message CreateFlavorReq{
message Flavor {
string name = 1;
uint32 ram = 2;
uint32 vcpus = 3;
uint32 disk = 4;
string id = 5;
double rxtx_factor = 6;
string description = 7;
}
Flavor flavor = 1;
string platform = 2;
}
message CreateFlavorResp{
message Links {
string href = 1;
string rel = 2;
}
message Extra_specs {
}
message Flavor {
bool OS_FLV_DISABLED_disabled = 1[json_name = "OS-FLV-DISABLED:disabled"];
uint32 disk = 2;
uint32 OS_FLV_EXT_DATA_ephemeral = 3[json_name = "OS-FLV-EXT-DATA:ephemeral"];
bool os_flavor_access_is_public = 4[json_name = "os-flavor-access:is_public"];
string id = 5;
repeated Links links = 6;
string name = 7;
uint32 ram = 8;
uint32 swap = 9;
double rxtx_factor = 10;
uint32 vcpus = 11;
string description = 12;
Extra_specs extra_specs = 13;
}
Flavor flavor = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteFlavorReq {
string server_id =1;
string flavor_id =2;
string platform = 3;
}
message DeleteFlavorResp {
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/******************ListFlavorsDetail end*************************/
/******************Show network details Start*************************/
message ShowNetworkDetailsReq{
string network_id = 1; //网络ID // @gotags: copier:"NetworkId"
string platform = 2;
}
message Network{
bool admin_state_up = 1; // @gotags: copier:"AdminStateUp"
repeated string availability_zone_hints = 2;// @gotags: copier:"AvailabilityZoneHints"
repeated string availability_zones = 3; // @gotags: copier:"AvailabilityZones"
string created_at = 4;// @gotags: copier:"CreatedAt"
string dns_domain = 5;// @gotags: copier:"DnsDomain"
string id = 6; // @gotags: copier:"Id"
string ipv4_address_scope = 7; // @gotags: copier:"Ipv4AddressScope"
string ipv6_address_scope = 8; // @gotags: copier:"Ipv6AddressScope"
bool l2_adjacency = 9; // @gotags: copier:"L2Adjacency"
int64 mtu = 10; // @gotags: copier:"Mtu"
string name = 11; // @gotags: copier:"Name"
bool port_security_enabled = 12; // @gotags: copier:"PortSecurityEnabled"
string project_id = 13; // @gotags: copier:"ProjectId"
string qos_policy_id = 14; // @gotags: copier:"QosPolicyId"
int64 revision_number = 15;// @gotags: copier:"RevisionNumber"
//Segment segment =26; // @gotags: copier:"Segment"
bool router_external = 16 [json_name = "router:external"]; // @gotags: copier:"RouterExternal"
bool shared = 17; // @gotags: copier:"Shared"
string status = 18; // @gotags: copier:"Status"
repeated string subnets = 19; // @gotags: copier:"Subnets"
repeated string tags = 20; // @gotags: copier:"Tags"
string tenant_id = 21; // @gotags: copier:"TenantId"
string updated_at = 22; // @gotags: copier:"UpdatedAt"
bool vlan_transparent = 23; // @gotags: copier:"VlanTransparent"
string description = 24;// @gotags: copier:"Description"
bool is_default = 25; // @gotags: copier:"IsDefault"
}
/*message Segment{
string provider_network_type = 1 [json_name = "provider:network_type"]; //此网络映射到的物理网络的类型
string provider_physical_network = 2 [json_name = "provider:physical_network"]; //实现该网络/分段的物理网络
int64 provider_segmentation_id = 3 [json_name = "provider:segmentation_id"]; //物理网络上隔离段的IDnetwork_type属性定义分段模型
}*/
message ShowNetworkDetailsResp{
Network network = 1; // @gotags: copier:"Network" //一个网络对象
/* bool admin_state_up = 2; //网络的管理状态是向上true还是向下false
repeated string availability_zone_hints = 3; //网络的可用性区域候选者
repeated string availability_zones = 4; //网络的可用性区域
string created_at = 5; //创建资源的时间
string dns_domain = 6; //有效的DNS域
string id = 7; //网络ID
string ipv4_address_scope = 8; //与网络关联的IPv4地址作用域的ID
string ipv6_address_scope = 9; //与网络关联的IPv6地址作用域的ID
bool l2_adjacency = 10; //指示L2连接是否在整个网络中可用
int64 mtu = 11; //要寻址分段的最大传输单元MTUIPv4最小值为68IPv6最小值为1280
string name = 12; //人类可读的网络名称
bool port_security_enabled = 13; //网络的端口安全状态。有效值为启用true和禁用false
string project_id = 14; //项目ID
string provider_network_type = 15 [json_name = "provider:network_type"]; //此网络映射到的物理网络的类型例如flat、vlan、vxlan或gre。有效值取决于网络后端
string provider_physical_network = 16 [json_name = "provider:physical_network"]; //实现该网络/分段的物理网络
int64 provider_segmentation_id = 17 [json_name = "provider:segmentation_id"]; //物理网络上隔离段的IDnetwork_type属性定义分段模型
string qos_policy_id = 18; //与网络关联的QoS策略的ID
int64 revision_number = 19; //资源的修订号
bool router_external = 20 [json_name = "router:external"]; //定义网络是否可用于创建浮动IP只有具有此标志的网络才能作为路由器的外部网关
repeated Segment segments = 21; //提供程序段对象的列表
bool shared = 22; //指示是否在所有租户之间共享此网络,默认情况下,只有管理用户才能更改此值
string status = 23; //网络状态值为ACTIVE、DOWN、BUILD或ERROR
repeated string subnets = 24; //关联的子网
string tenant_id = 25; //项目的ID
string updated_at = 26; //资源更新的时间
bool vlan_transparent = 27; //指示网络的VLAN透明模式为VLAN透明true或非VLAN透明false
string description = 28; //人类可读的资源描述
bool is_default = 29; //网络是否为默认池
repeated string tags = 30; //资源上的标记列表*/
string msg =31; // @gotags: copier:"Msg"
int32 code =32; // @gotags: copier:"Code"
string error_msg =33;// @gotags: copier:"ErrorMsg"
}
/******************Show network details End*************************/
/******************Update network Start*************************/
message UpdateNetworkReq{
string network_id = 1;
Network network = 2;
string platform = 3;
/* bool admin_state_up = 3;
string dns_domain = 4;
int64 mtu = 5;
string name = 6;
bool port_security_enabled = 7;
string provider_network_type = 8 [json_name = "provider:network_type"];
string provider_physical_network = 9 [json_name = "provider:physical_network"];
int64 provider_segmentation_id = 10 [json_name = "provider:segmentation_id"];
string qos_policy_id = 11;
bool router_external = 12 [json_name = "router:external"];
repeated Segment segments = 13;
bool shared = 14;
string description = 15;
bool is_default = 16;*/
}
message UpdateNetworkResp{
Network network = 1;
string msg =30; // @gotags: copier:"Msg"
int32 code =31; // @gotags: copier:"Code"
string error_msg =32;// @gotags: copier:"ErrorMsg"
/*bool admin_state_up = 2;
repeated string availability_zone_hints = 3;
repeated string availability_zones = 4;
string created_at = 5;
string dns_domain = 6;
string id = 7;
string ipv4_address_scope = 8;
string ipv6_address_scope = 9;
bool l2_adjacency = 10;
int64 mtu = 11;
string name = 12;
bool port_security_enabled = 13;
string project_id = 14;
string provider_network_type = 15 [json_name = "provider:network_type"];
string provider_physical_network = 16 [json_name = "provider:physical_network"];
int64 provider_segmentation_id = 17 [json_name = "provider:segmentation_id"];
string qos_policy_id = 18;
int64 revision_number = 19;
bool router_external = 20 [json_name = "router:external"];
repeated Segment segments = 21;
bool shared = 22;
string status = 23;
repeated string subnets = 24;
string tenant_id = 25;
string updated_at = 26;
string description = 27;
bool is_default = 28;
repeated string tags = 29;*/
}
/******************Update network End*************************/
/******************Delete network Start*************************/
message DeleteNetworkReq{
string network_id = 1; // @gotags: copier:"NetworkId"
string platform = 2;
}
message DeleteNetworkResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/******************Delete network End*************************/
/******************List networks Start*************************/
message ListNetworksReq{
string platform = 1;
/* bool admin_state_up = 1;
string id = 2;
int64 mtu = 3;
string name = 4;
string project_id = 5;
string provider_network_type = 6 [json_name = "provider:network_type"];
string provider_physical_network = 7 [json_name = "provider:physical_network"];
int64 provider_segmentation_id = 8 [json_name = "provider:segmentation_id"];
int64 revision_number = 9;
bool router_external = 10 [json_name = "router:external"];
bool shared = 11;
string status = 12;
string tenant_id = 13;
bool vlan_transparent = 14;
string description = 15;
bool is_default = 16;
string tags = 17;
string tags_any = 18 [json_name = "tags-any"];
string not_tags = 19 [json_name = "not-tags"];
string not_tags_any = 20[json_name = "not-tags-any"];
string sort_dir = 21;
string sort_key = 22;
string fields = 23;*/
}
message ListNetworksResp{
repeated Network networks = 1; // @gotags: copier:"Networks"
/* bool admin_state_up = 2;
repeated string availability_zone_hints = 3;
repeated string availability_zones = 4;
string created_at = 5;
string dns_domain = 6;
string id = 7;
string ipv4_address_scope = 8;
string ipv6_address_scope = 9;
bool l2_adjacency = 10;
int64 mtu = 11;
string name = 12;
bool port_security_enabled = 13;
string project_id = 14;
string provider_network_type = 15 [json_name = "provider:network_type"];
string provider_physical_network = 16 [json_name = "provider:physical_network"];
int64 provider_segmentation_id = 17 [json_name = "provider:segmentation_id"];
string qos_policy_id = 18;
int64 revision_number = 19;
bool router_external = 20 [json_name = "router:external"];
repeated Segment segments = 21;
bool shared = 22;
string status = 23;
repeated string subnets = 24;
string tenant_id = 25;
string updated_at = 26;
bool vlan_transparent = 27;
string description = 28;
bool is_default = 29;
repeated string tags = 30;*/
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
/******************List networks End*************************/
/******************Create network Start*************************/
message CreateNetworkReq{
Network network = 1; // @gotags: copier:"Network"
string platform = 2;
}
message CreateNetworkResp{
Network network = 1; // @gotags: copier:"Network"
int32 code = 30; // @gotags: copier:"Code"
string msg = 31; // @gotags: copier:"Msg"
string error_msg =32;// @gotags: copier:"ErrorMsg"
}
/******************Create network End*************************/
message CreateSubnetReq{
Subnet subnet = 1; // @gotags: copier:"Subnet"
string platform = 2;
}
message CreateSubnetResp{
SubnetResp subnet = 1; // @gotags: copier:"SubnetResp"
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message Subnet {
string network_id =1; //@gotags: copier:"NetworkId"
string name =2; //@gotags: copier:"Name"
string cidr =3; //@gotags: copier:"Cidr"
int32 ip_version =4; //@gotags: copier:"IpVersion"
string gateway_ip =5; //@gotags: copier:"GatewayIp"
bool enable_dhcp =6; //@gotags: copier:"EnableDhcp"
repeated Allocation_pools allocation_pools =7; //@gotags: copier:"AllocationPools"
repeated string dns_nameservers =8; //@gotags: copier:"DnsNameservers"
repeated string host_routes =9; //@gotags: copier:"HostRoutes"
}
message SubnetResp {
string name =1;
string cidr =2;
int32 ip_version =3;
string gateway_ip =4;
bool enable_dhcp =5;
repeated Allocation_pools allocation_pools =6; //@gotags: copier:"Allocation_pools"
repeated string dns_nameservers =7;
repeated string host_routes =8;
string network_id =9;
string segment_id =10;
string project_id =11;
string tenant_id =12 ;
string dns_publish_fixed_ip =13;
string id =14;
string created_at =15;
string description =16;
string ipv6_address_mode =17;
string ipv6_ra_mode =18;
string revision_number =19;
repeated string service_types =20;
string subnetpool_id =21;
repeated string tags =22;
string updated_at =23;
}
message Allocation_pools {
string start = 1; // @gotags: copier:"Start"
string end = 2; // @gotags: copier:"End"
}
/******************Create subnets start*************************/
/******************Create subnets End*************************/
/******************Bulk create networks Start*************************/
message BulkCreateNetworksReq{
repeated Network networks = 1;
string platform = 2;
}
message BulkCreateNetworksResp{
repeated Network networks = 1;
bool admin_state_up = 2;
repeated string availability_zone_hints = 3;
repeated string availability_zones = 4;
string created_at = 5;
string dns_domain = 6;
string id = 7;
string ipv4_address_scope = 8;
string ipv6_address_scope = 9;
bool l2_adjacency = 10;
int64 mtu = 11;
string name = 12;
bool port_security_enabled = 13;
string project_id = 14;
string provider_network_type = 15 [json_name = "provider:network_type"];
string provider_physical_network = 16 [json_name = "provider:physical_network"];
int64 provider_segmentation_id = 17 [json_name = "provider:segmentation_id"];
string qos_policy_id = 18;
int64 revision_number = 19;
bool router_external = 20 [json_name = "router:external"];
//repeated Segment segments = 21;
bool shared = 22;
string status = 23;
repeated string subnets = 24;
string tenant_id = 25;
string updated_at = 26;
bool vlan_transparent = 27;
string description = 28;
bool is_default = 29;
repeated string tags = 30;
int32 code = 31; // @gotags: copier:"Code"
string msg = 32; // @gotags: copier:"Msg"
string error_msg =33;// @gotags: copier:"ErrorMsg"
}
/******************Bulk create networks End*************************/
message ListSubnetsReq {
int32 limit = 1; // @gotags: copier:"Limit"
int32 offset = 2; // @gotags: copier:"Offset"
string platform = 3;
}
message ListSubnetsResp {
message Allocation_pools {
string start = 1;
string end = 2;
}
message Subnets {
string name = 1;
bool enable_dhcp = 2;
string network_id = 3;
string segment_id = 4;
string project_id = 5;
string tenant_id = 6;
repeated string dns_nameservers = 7;
bool dns_publish_fixed_ip = 8;
repeated Allocation_pools allocation_pools = 9;
repeated string host_routes = 10;
uint32 ip_version = 11;
string gateway_ip = 12;
string cidr = 13;
string id = 14;
int64 created_at = 15;
string description = 16;
string ipv6_address_mode = 17;
string ipv6_ra_mode = 18;
uint32 revision_number = 19;
repeated string service_types = 20;
string subnetpool_id = 21;
repeated string tags = 22;
int64 updated_at = 23;
}
repeated Subnets subnets = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteSubnetReq{
string subnet_id = 1; // @gotags: copier:"subnet_id"
string platform = 2;
}
message DeleteSubnetResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UpdateSubnetReq{
string subnet_id = 1; // @gotags: copier:"subnet_id"
string platform = 2;
}
message UpdateSubnetResp{
message Allocation_pools {
string start = 1;
string end = 2;
}
message Subnet {
string name = 1;
bool enable_dhcp = 2;
string network_id = 3;
uint32 revision_number = 4;
string segment_id = 5;
string project_id = 6;
string tenant_id = 7;
string created_at = 8;
repeated string dns_nameservers = 9;
bool dns_publish_fixed_ip = 10;
repeated string service_types = 11;
repeated Allocation_pools allocation_pools = 12;
repeated string host_routes = 13;
uint32 ip_version = 14;
string gateway_ip = 15;
string cidr = 16;
string updated_at = 17;
string id = 18;
string description = 19;
repeated string tags = 20;
}
Subnet subnet = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message CreateNetworkSegmentRangeReq{
message Network_segment_range {
string name = 1;
string description = 2;
bool shared = 3;
string project_id = 4;
string network_type = 5;
string physical_network = 6;
uint32 minimum = 7;
uint32 maximum = 8;
}
Network_segment_range network_segment_range = 1;
string platform = 2;
}
message CreateNetworkSegmentRangeResp{
message Used {
}
message Network_segment_range {
string id = 1;
string name = 2;
string description = 3;
bool default = 4;
bool shared = 5;
string tenant_id = 6;
string project_id = 7;
string network_type = 8;
string physical_network = 9;
uint32 minimum = 10;
uint32 maximum = 11;
repeated uint32 available = 12;
Used used = 13;
int64 created_at = 14;
int64 updated_at = 15;
uint32 revision_number = 16;
repeated string tags = 17;
}
Network_segment_range network_segment_range = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ListNetworkSegmentRangesReq{
int32 limit = 1; // @gotags: copier:"Limit"
int32 offset = 2; // @gotags: copier:"Offset"
string platform = 3;
}
message ListNetworkSegmentRangesResp{
message Used {
}
message Network_segment_ranges {
string id = 1;
string name = 2;
string description = 3;
bool default = 4;
bool shared = 5;
string tenant_id = 6;
string project_id = 7;
string network_type = 8;
string physical_network = 9;
uint32 minimum = 10;
uint32 maximum = 11;
repeated uint32 available = 12;
Used used = 13;
int64 created_at = 14;
int64 updated_at = 15;
uint32 revision_number = 16;
repeated string tags = 17;
}
repeated Network_segment_ranges network_segment_ranges = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteNetworkSegmentRangesReq{
string network_segment_range_id = 1; // @gotags: copier:"subnet_id"
string platform = 2;
}
message DeleteNetworkSegmentRangesResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UpdateNetworkSegmentRangesReq{
string network_segment_range_id = 1; // @gotags: copier:"subnet_id"
Network_segment_ranges network_segment_ranges = 2;
string platform = 3;
message Network_segment_ranges {
string id = 1;
string name = 2;
string description = 3;
bool default = 4;
bool shared = 5;
string tenant_id = 6;
string project_id = 7;
string network_type = 8;
string physical_network = 9;
uint32 minimum = 10;
uint32 maximum = 11;
repeated uint32 available = 12;
Used used = 13;
int64 created_at = 14;
int64 updated_at = 15;
uint32 revision_number = 16;
repeated string tags = 17;
}
message Used {
}
}
message UpdateNetworkSegmentRangesResp{
message Used {
}
message Network_segment_range {
string id = 1;
string name = 2;
string description = 3;
bool default = 4;
bool shared = 5;
string tenant_id = 6;
string project_id = 7;
string network_type = 8;
string physical_network = 9;
uint32 minimum = 10;
uint32 maximum = 11;
repeated uint32 available = 12;
Used used = 13;
int64 created_at = 14;
int64 updated_at = 15;
uint32 revision_number = 16;
repeated string tags = 17;
}
Network_segment_range network_segment_range = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ShowNetworkSegmentRangeDetailsReq{
string network_segment_range_id = 1;
string platform = 2;
}
message ShowNetworkSegmentRangeDetailsResp{
message Used {
}
message Network_segment_range {
string id = 1;
string name = 2;
string description = 3;
bool default = 4;
bool shared = 5;
string tenant_id = 6;
string project_id = 7;
string network_type = 8;
string physical_network = 9;
uint32 minimum = 10;
uint32 maximum = 11;
repeated uint32 available = 12;
Used used = 13;
int64 created_at = 14;
int64 updated_at = 15;
uint32 revision_number = 16;
repeated string tags = 17;
}
Network_segment_range network_segment_range = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
// port
message CreatePortReq{
message Allowed_address_pairs {
string ip_address = 1;
string mac_address = 2;
}
message Port {
bool admin_state_up = 1;
string dns_domain = 2;
string dns_name = 3;
string name = 4;
string network_id = 5;
string qos_policy_id = 6;
bool port_security_enabled = 7;
repeated Allowed_address_pairs allowed_address_pairs = 8;
bool propagate_uplink_status = 9;
string hardware_offload_type = 10;
}
Port port = 1;
string platform = 2;
}
message CreatePortResp{
message Allowed_address_pairs {
string ip_address = 1;
string mac_address = 2;
}
message Dns_assignment {
string hostname = 1;
string ip_address = 2;
string fqdn = 3;
}
message Extra_dhcp_opts {
string opt_value = 1;
uint32 ip_version = 2;
string opt_name = 3;
}
message Fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Port {
bool admin_state_up = 1;
repeated Allowed_address_pairs allowed_address_pairs = 2;
string created_at = 3;
string data_plane_status = 4;
string description = 5;
string device_id = 6;
string device_owner = 7;
repeated Dns_assignment dns_assignment = 8;
string dns_domain = 9;
string dns_name = 10;
repeated Extra_dhcp_opts extra_dhcp_opts = 11;
repeated Fixed_ips fixed_ips = 12;
string id = 13;
string ip_allocation = 14;
string mac_address = 15;
string name = 16;
string network_id = 17;
bool port_security_enabled = 18;
string project_id = 19;
uint32 revision_number = 20;
repeated string security_groups = 21;
string status = 22;
repeated string tags = 23;
string tenant_id = 24;
string updated_at = 25;
string qos_network_policy_id = 26;
string qos_policy_id = 27;
bool propagate_uplink_status = 28;
string hardware_offload_type = 29;
}
Port port = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ListPortsReq{
int32 limit = 1; // @gotags: copier:"Limit"
int32 offset = 2; // @gotags: copier:"Offset"
string platform = 3;
}
message ListPortsResp{
message Dns_assignment {
string hostname = 1;
string ip_address = 2;
string fqdn = 3;
}
message Extra_dhcp_opts {
string opt_value = 1;
uint32 ip_version = 2;
string opt_name = 3;
}
message Fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Allowed_address_pairs {
}
message Security_groups {
}
message Ports {
bool admin_state_up = 1;
repeated Allowed_address_pairs allowed_address_pairs = 2;
string created_at = 3;
string data_plane_status = 4;
string description = 5;
string device_id = 6;
string device_owner = 7;
repeated Dns_assignment dns_assignment = 8;
string dns_domain = 9;
string dns_name = 10;
repeated Extra_dhcp_opts extra_dhcp_opts = 11;
repeated Fixed_ips fixed_ips = 12;
string id = 13;
string ip_allocation = 14;
string mac_address = 15;
string name = 16;
string network_id = 17;
string project_id = 18;
uint32 revision_number = 19;
repeated Security_groups security_groups = 20;
string status = 21;
repeated string tags = 22;
string tenant_id = 23;
string updated_at = 24;
string qos_network_policy_id = 25;
string qos_policy_id = 26;
bool port_security_enabled = 27;
bool propagate_uplink_status = 28;
}
repeated Ports ports = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeletePortReq{
string port_id =1;
string platform = 2;
}
message DeletePortResp{
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message UpdatePortReq {
string port_id =1;
Port port = 2;
string platform = 3;
message Allowed_address_pairs {
string ip_address = 1;
string mac_address = 2;
}
message Dns_assignment {
string hostname = 1;
string ip_address = 2;
string fqdn = 3;
}
message Extra_dhcp_opts {
string opt_value = 1;
uint32 ip_version = 2;
string opt_name = 3;
}
message Fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Port {
bool admin_state_up = 1;
repeated Allowed_address_pairs allowed_address_pairs = 2;
string created_at = 3;
string data_plane_status = 4;
string description = 5;
string device_id = 6;
string device_owner = 7;
repeated Dns_assignment dns_assignment = 8;
string dns_domain = 9;
string dns_name = 10;
repeated Extra_dhcp_opts extra_dhcp_opts = 11;
repeated Fixed_ips fixed_ips = 12;
string id = 13;
string ip_allocation = 14;
string mac_address = 15;
string name = 16;
string network_id = 17;
bool port_security_enabled = 18;
string project_id = 19;
uint32 revision_number = 20;
repeated string security_groups = 21;
string status = 22;
repeated string tags = 23;
string tenant_id = 24;
string updated_at = 25;
string qos_network_policy_id = 26;
string qos_policy_id = 27;
bool propagate_uplink_status = 28;
string hardware_offload_type = 29;
}
}
message UpdatePortResp {
message Binding_profile {
}
message Binding_vif_details {
}
message Dns_assignment {
string hostname = 1;
string ip_address = 2;
string fqdn = 3;
}
message Extra_dhcp_opts {
string opt_value = 1;
uint32 ip_version = 2;
string opt_name = 3;
}
message Fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Allowed_address_pairs{
}
message Port {
bool admin_state_up = 1;
repeated Allowed_address_pairs allowed_address_pairs = 2;
string binding_host_id = 3[json_name="binding:host_id"];
Binding_profile Binding_profile = 4[json_name="Binding:profile"];
Binding_vif_details binding_vif_details = 5 [json_name="Binding:vif_details"];
string binding_vif_type = 6 [json_name="binding:vif_type"];
string binding_vnic_type = 7 [json_name="binding:vnic_type"];
string created_at = 8;
string data_plane_status = 9;
string description = 10;
string device_id = 11;
string device_owner = 12;
repeated Dns_assignment dns_assignment = 13;
string dns_domain = 14;
string dns_name = 15;
repeated Extra_dhcp_opts extra_dhcp_opts = 16;
repeated Fixed_ips fixed_ips = 17;
string id = 18;
string ip_allocation = 19;
string mac_address = 20;
string name = 21;
string network_id = 22;
string project_id = 23;
uint32 revision_number = 24;
repeated string security_groups = 25;
string status = 26;
repeated string tags = 27;
string tenant_id = 28;
string updated_at = 29;
string qos_network_policy_id = 30;
string qos_policy_id = 31;
bool port_security_enabled = 32;
bool propagate_uplink_status = 33;
string hardware_offload_type = 34;
}
Port port = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ShowPortDetailsReq {
string port_id =1;
string fields = 2;
string platform = 3;
}
message ShowPortDetailsResp {
message Dns_assignment {
string hostname = 1;
string ip_address = 2;
string fqdn = 3;
}
message Extra_dhcp_opts {
string opt_value = 1;
uint32 ip_version = 2;
string opt_name = 3;
}
message Fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Allowed_address_pairs{
}
message Security_groups{
}
message Port {
bool admin_state_up = 1;
repeated Allowed_address_pairs allowed_address_pairs = 2;
string created_at = 3;
string data_plane_status = 4;
string description = 5;
string device_id = 6;
string device_owner = 7;
repeated Dns_assignment dns_assignment = 8;
string dns_domain = 9;
string dns_name = 10;
repeated Extra_dhcp_opts extra_dhcp_opts = 11;
repeated Fixed_ips fixed_ips = 12;
string id = 13;
string ip_allocation = 14;
string mac_address = 15;
string name = 16;
string network_id = 17;
bool port_security_enabled = 18;
string project_id = 19;
uint32 revision_number = 20;
repeated Security_groups security_groups = 21;
string status = 22;
repeated string tags = 23;
string tenant_id = 24;
string updated_at = 25;
string qos_network_policy_id = 26;
string qos_policy_id = 27;
bool propagate_uplink_status = 28;
string hardware_offload_type = 29;
}
Port port = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
//Router
message ListRoutersReq{
int32 limit = 1; // @gotags: copier:"Limit"
int32 offset = 2; // @gotags: copier:"Offset"
string platform = 3;
}
message ListRoutersResp{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message External_gateway_info {
bool enable_snat = 1;
repeated External_fixed_ips external_fixed_ips = 2;
string network_id = 3;
}
message Routes {
string destination = 1;
string nexthop = 2;
}
message Conntrack_helpers {
string protocol = 1;
string helper = 2;
uint32 port = 3;
}
message Availability_zone_hints {
}
message Routers {
bool admin_state_up = 1;
repeated Availability_zone_hints availability_zone_hints = 2;
repeated string availability_zones = 3;
int64 created_at = 4;
string description = 5;
bool distributed = 6;
External_gateway_info external_gateway_info = 7;
string flavor_id = 8;
bool ha = 9;
string id = 10;
string name = 11;
uint32 revision_number = 12;
repeated Routes routes = 13;
string status = 14;
int64 updated_at = 15;
string project_id = 16;
string tenant_id = 17;
string service_type_id = 18;
repeated string tags = 19;
repeated Conntrack_helpers conntrack_helpers = 20;
}
repeated Routers routers = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message CreateRouterReq{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message External_gateway_info {
string network_id = 1;
bool enable_snat = 2;
repeated External_fixed_ips external_fixed_ips = 3;
}
message Router {
string name = 1;
External_gateway_info external_gateway_info = 2;
bool admin_state_up = 3;
}
Router router = 1;
string platform = 2;
}
message CreateRouterResp{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message External_gateway_info {
bool enable_snat = 1;
repeated External_fixed_ips external_fixed_ips = 2;
string network_id = 3;
}
message Routers {
bool admin_state_up = 1;
repeated string availability_zones = 3;
int64 created_at = 4;
string description = 5;
bool distributed = 6;
External_gateway_info external_gateway_info = 7;
string flavor_id = 8;
bool ha = 9;
string id = 10;
string name = 11;
uint32 revision_number = 12;
string status = 14;
int64 updated_at = 15;
string project_id = 16;
string tenant_id = 17;
string service_type_id = 18;
repeated string tags = 19;
}
message Availability_zone_hints{
}
message Conntrack_helpers{
}
message Router {
bool admin_state_up = 1;
repeated Availability_zone_hints availability_zone_hints = 2;
repeated string availability_zones = 3;
int64 created_at = 4;
string description = 5;
bool distributed = 6;
External_gateway_info external_gateway_info = 7;
string flavor_id = 8;
bool ha = 9;
string id = 10;
string name = 11;
repeated Routers routers = 12;
uint32 revision_number = 13;
string status = 14;
int64 updated_at = 15;
string project_id = 16;
string tenant_id = 17;
string service_type_id = 18;
repeated string tags = 19;
repeated Conntrack_helpers conntrack_helpers = 20;
}
Router router = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message UpdateRouterReq{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Routes {
string destination = 1;
string nexthop = 2;
}
message External_gateway_info {
string network_id = 1;
bool enable_snat = 2;
repeated External_fixed_ips external_fixed_ips = 3;
repeated Routes routes = 4;
}
message Router {
bool distributed = 1;
External_gateway_info external_gateway_info = 2;
}
string platform = 2;
Router router = 1;
string router_id =3;
}
message UpdateRouterResp{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message External_gateway_info {
bool enable_snat = 1;
repeated External_fixed_ips external_fixed_ips = 2;
string network_id = 3;
}
message Routes {
string destination = 1;
string nexthop = 2;
}
message Availability_zone_hints{
}
message Conntrack_helpers{
}
message Router {
bool admin_state_up = 1;
repeated Availability_zone_hints availability_zone_hints = 2;
repeated string availability_zones = 3;
int64 created_at = 4;
string description = 5;
bool distributed = 6;
External_gateway_info external_gateway_info = 7;
string flavor_id = 8;
bool ha = 9;
string id = 10;
string name = 11;
uint32 revision_number = 12;
repeated Routes routes = 13;
string status = 14;
int64 updated_at = 15;
string project_id = 16;
string tenant_id = 17;
string service_type_id = 18;
repeated string tags = 19;
repeated Conntrack_helpers conntrack_helpers = 20;
}
Router router = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ShowRouterDetailsReq{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message Routes {
string destination = 1;
string nexthop = 2;
}
message External_gateway_info {
string network_id = 1;
bool enable_snat = 2;
repeated External_fixed_ips external_fixed_ips = 3;
repeated Routes routes = 4;
}
message Router {
bool distributed = 1;
External_gateway_info external_gateway_info = 2;
}
string platform = 2;
Router router = 1;
string router_id =3;
}
message ShowRouterDetailsResp{
message External_fixed_ips {
string ip_address = 1;
string subnet_id = 2;
}
message External_gateway_info {
bool enable_snat = 1;
repeated External_fixed_ips external_fixed_ips = 2;
string network_id = 3;
}
message Routes {
string destination = 1;
string nexthop = 2;
}
message Availability_zone_hints{
}
message Conntrack_helpers{
}
message Router {
bool admin_state_up = 1;
repeated Availability_zone_hints availability_zone_hints = 2;
repeated string availability_zones = 3;
int64 created_at = 4;
string description = 5;
bool distributed = 6;
External_gateway_info external_gateway_info = 7;
string flavor_id = 8;
bool ha = 9;
string id = 10;
string name = 11;
uint32 revision_number = 12;
repeated Routes routes = 13;
string status = 14;
int64 updated_at = 15;
string project_id = 16;
string tenant_id = 17;
string service_type_id = 18;
repeated string tags = 19;
repeated Conntrack_helpers conntrack_helpers = 20;
}
Router router = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteRouterReq{
string router_id =1;
string platform = 2;
}
message DeleteRouterResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
//浮动IPs
message ListFloatingIPsReq{
int32 limit = 1; // @gotags: copier:"Limit"
int32 offset = 2; // @gotags: copier:"Offset"
string platform = 3;
}
message ListFloatingIPsResp{
message Port_details {
string status = 1;
string name = 2;
bool admin_state_up = 3;
string network_id = 4;
string device_owner = 5;
string mac_address = 6;
string device_id = 7;
}
message Port_forwardings {
string protocol = 1;
string internal_ip_address = 2;
uint32 internal_port = 3;
string internal_port_id = 4;
string id = 6;
}
message Floatingips {
string router_id = 1;
string description = 2;
string dns_domain = 3;
string dns_name = 4;
int64 created_at = 5;
int64 updated_at = 6;
uint32 revision_number = 7;
string project_id = 8;
string tenant_id = 9;
string floating_network_id = 10;
string fixed_ip_address = 11;
string floating_ip_address = 12;
string port_id = 13;
string id = 14;
string status = 15;
Port_details port_details = 16;
repeated string tags = 17;
repeated Port_forwardings port_forwardings = 18;
string qos_network_policy_id = 19;
string qos_policy_id = 20;
}
repeated Floatingips floatingips = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message CreateFloatingIPReq{
message Floatingip {
string floating_network_id = 1;
string port_id = 2;
string subnet_id = 3;
string fixed_ip_address = 4;
string floating_ip_address = 5;
string description = 6;
string dns_domain = 7;
string dns_name = 8;
string qos_policy_id = 9;
}
Floatingip floatingip = 1;
string platform = 2;
}
message CreateFloatingIPResp{
message Port_details {
string status = 1;
string name = 2;
bool admin_state_up = 3;
string network_id = 4;
string device_owner = 5;
string mac_address = 6;
string device_id = 7;
}
message Port_forwardings {
string protocol = 1;
string internal_ip_address = 2;
uint32 internal_port = 3;
string internal_port_id = 4;
uint32 external_port = 5;
string id = 6;
}
message Floatingip {
string fixed_ip_address = 1;
string floating_ip_address = 2;
string floating_network_id = 3;
string id = 4;
string port_id = 5;
string router_id = 6;
string status = 7;
string project_id = 8;
string tenant_id = 9;
string description = 10;
string dns_domain = 11;
string dns_name = 12;
int64 created_at = 13;
int64 updated_at = 14;
uint32 revision_number = 15;
Port_details port_details = 16;
repeated string tags = 17;
repeated Port_forwardings port_forwardings = 18;
string qos_policy_id = 19;
}
Floatingip floatingip = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message UpdateFloatingIPReq{
message Floatingip {
string port_id = 1;
}
Floatingip floatingip = 1;
string platform = 2;
string floatingip_id =3;
}
message UpdateFloatingIPResp{
message Port_details {
string status = 1;
string name = 2;
bool admin_state_up = 3;
string network_id = 4;
string device_owner = 5;
string mac_address = 6;
string device_id = 7;
}
message Port_forwardings {
string protocol = 1;
string internal_ip_address = 2;
uint32 internal_port = 3;
string internal_port_id = 4;
uint32 external_port = 5;
string id = 6;
}
message Floatingip {
int64 created_at = 1;
string description = 2;
string dns_domain = 3;
string dns_name = 4;
string fixed_ip_address = 5;
string floating_ip_address = 6;
string floating_network_id = 7;
string id = 8;
string port_id = 9;
string project_id = 10;
uint32 revision_number = 11;
string router_id = 12;
string status = 13;
repeated string tags = 14;
string tenant_id = 15;
int64 updated_at = 16;
Port_details port_details = 17;
repeated Port_forwardings port_forwardings = 18;
string qos_network_policy_id = 19;
string qos_policy_id = 20;
}
Floatingip floatingip = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteFloatingIPReq{
string floatingip_id =1;
string platform = 2;
}
message DeleteFloatingIPResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message ShowFloatingIPDetailsReq{
string floatingip_id =1;
string platform = 2;
}
message ShowFloatingIPDetailsResp{
message Port_details {
string status = 1;
string name = 2;
bool admin_state_up = 3;
string network_id = 4;
string device_owner = 5;
string mac_address = 6;
string device_id = 7;
}
message Port_forwardings {
string protocol = 1;
string internal_ip_address = 2;
uint32 internal_port = 3;
string internal_port_id = 4;
uint32 external_port = 5;
string id = 6;
}
message Floatingip {
string floating_network_id = 1;
string router_id = 2;
string fixed_ip_address = 3;
string floating_ip_address = 4;
string project_id = 5;
string tenant_id = 6;
string status = 7;
string port_id = 8;
string id = 9;
string description = 10;
string dns_domain = 11;
string dns_name = 12;
int64 created_at = 13;
int64 updated_at = 14;
uint32 revision_number = 15;
Port_details port_details = 16;
repeated string tags = 17;
repeated Port_forwardings port_forwardings = 18;
string qos_network_policy_id = 19;
string qos_policy_id = 20;
}
Floatingip floatingip = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
//防火墙
message ListFirewallGroupsReq{
string fields =1;
string platform = 2;
}
message ListFirewallGroupsResp{
message Firewall_groups {
bool admin_state_up = 1;
string description = 2;
string egress_firewall_policy_id = 3;
string id = 4;
string ingress_firewall_policy_id = 5;
string name = 6;
repeated string ports = 7;
bool shared = 8;
string project_id = 9;
string status = 10;
string tenant_id = 11;
}
repeated Firewall_groups firewall_groups = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteFirewallGroupReq{
string firewall_group_id =1;
string platform = 2;
}
message DeleteFirewallGroupResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message CreateFirewallGroupReq{
message Firewall_group {
bool admin_state_up = 1;
string egress_firewall_policy_id = 2;
string ingress_firewall_policy_id = 3;
}
Firewall_group firewall_group = 1;
string platform = 2;
}
message CreateFirewallGroupResp{
message Firewall_group {
bool admin_state_up = 1;
string description = 2;
string egress_firewall_policy_id = 3;
string ingress_firewall_policy_id = 4;
string id = 5;
string name = 6;
repeated string ports = 7;
string project_id = 8;
bool shared = 9;
string status = 10;
string tenant_id = 11;
}
Firewall_group firewall_group = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message UpdateFirewallGroupReq{
message Firewall_group {
string admin_state_up = 1;
}
Firewall_group firewall_group = 1;
string platform = 2;
string firewall_group_id =3;
}
message UpdateFirewallGroupResp{
message Firewall_group {
bool admin_state_up = 1;
string description = 2;
string egress_firewall_policy_id = 3;
string ingress_firewall_policy_id = 4;
string id = 5;
string name = 6;
repeated string ports = 7;
bool shared = 8;
string project_id = 9;
string status = 10;
string tenant_id = 11;
}
Firewall_group firewall_group = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ShowFirewallGroupDetailsReq{
string firewall_group_id =1;
string platform =2;
}
message ShowFirewallGroupDetailsResp{
message Firewall_group {
bool admin_state_up = 1;
string description = 2;
string egress_firewall_policy_id = 3;
string id = 4;
string ingress_firewall_policy_id = 5;
string name = 6;
string project_id = 7;
bool shared = 8;
string status = 9;
string tenant_id = 10;
}
Firewall_group firewall_group = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
//安全组策略
message CreateFirewallPolicyReq{
message Firewall_policy {
string name = 1;
repeated string firewall_rules = 2;
}
Firewall_policy firewall_policy = 1;
string platform =2;
}
message CreateFirewallPolicyResp{
message Firewall_policy {
bool audited = 1;
string description = 2;
repeated string firewall_rules = 3;
string id = 4;
string name = 5;
string project_id = 6;
bool shared = 7;
string tenant_id = 8;
}
Firewall_policy firewall_policy = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteFirewallPolicyReq{
string firewall_policy_id =1;
string platform =2;
}
message DeleteFirewallPolicyResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message ListFirewallPoliciesReq{
string fields=1;
string platform =2;
}
message ListFirewallPoliciesResp{
message Firewall_policies {
bool audited = 1;
string description = 2;
repeated string firewall_rules = 3;
string id = 4;
string name = 5;
string project_id = 6;
bool shared = 7;
string tenant_id = 8;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
repeated Firewall_policies firewall_policies = 4;
}
message ShowFirewallPolicyDetailsReq{
string firewall_policy_id =1;
string platform =2;
}
message ShowFirewallPolicyDetailsResp{
message Firewall_policy {
bool audited = 1;
string description = 2;
repeated string firewall_rules = 3;
string id = 4;
string name = 5;
string project_id = 6;
bool shared = 7;
string tenant_id = 8;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Firewall_policy firewall_policy = 4;
}
//安全组
message CreateFirewallRuleReq{
message Firewall_rule {
string action = 1;
string destination_port = 2;
bool enabled = 3;
string name = 4;
string protocol = 5;
}
string platform =2;
Firewall_rule firewall_rule = 1;
}
message CreateFirewallRuleResp{
message Firewall_rule {
string action = 1;
string description = 2;
string destination_firewall_group_id = 3;
string destination_ip_address = 4;
string destination_port = 5;
bool enabled = 6;
string id = 7;
uint32 ip_version = 8;
string name = 9;
string project_id = 10;
string protocol = 11;
bool shared = 12;
string source_firewall_group_id = 13;
string source_ip_address = 14;
string source_port = 15;
string tenant_id = 16;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Firewall_rule firewall_rule = 4;
}
message DeleteFirewallRuleReq{
string firewall_rule_id =1;
string platform =2;
}
message DeleteFirewallRuleResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message ListFirewallRulesReq{
string fields =1;
string platform =2;
}
message ListFirewallRulesResp{
message Firewall_rules {
string action = 1;
string description = 2;
string destination_firewall_group_id = 3;
string destination_ip_address = 4;
string destination_port = 5;
bool enabled = 6;
string firewall_policy_id = 7;
string id = 8;
uint32 ip_version = 9;
string name = 10;
uint32 position = 11;
string project_id = 12;
string protocol = 13;
bool shared = 14;
string source_firewall_group_id = 15;
string source_ip_address = 16;
string source_port = 17;
string tenant_id = 18;
}
repeated Firewall_rules firewall_rules = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ShowFirewallRuleDetailsReq{
string firewall_rule_id=1;
string platform =2;
}
message ShowFirewallRuleDetailsResp{
message Firewall_rule {
string action = 1;
string description = 2;
string destination_firewall_group_id = 3;
string destination_ip_address = 4;
string destination_port = 5;
bool enabled = 6;
string firewall_policy_id = 7;
string id = 8;
uint32 ip_version = 9;
string name = 10;
string position = 11;
string project_id = 12;
string protocol = 13;
bool shared = 14;
string source_firewall_group_id = 15;
string source_ip_address = 16;
string source_port = 17;
string tenant_id = 18;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Firewall_rule firewall_rule = 4;
}
//安全组
message ListSecurityGroupsReq{
string fields =1;
string platform =2;
}
message ListSecurityGroupsResp{
message Security_group_rules {
string direction = 1;
string ethertype = 2;
string id = 3;
int64 port_range_max = 4;
int64 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
uint32 revision_number = 11;
repeated string tags = 12;
string tenant_id = 13;
int64 created_at = 14;
int64 updated_at = 15;
string description = 16;
bool belongs_to_default_sg = 17;
}
message Security_groups {
string description = 1;
string id = 2;
string name = 3;
repeated Security_group_rules security_group_rules = 4;
string project_id = 5;
uint32 revision_number = 6;
int64 created_at = 7;
int64 updated_at = 8;
repeated string tags = 9;
string tenant_id = 10;
bool stateful = 11;
bool shared = 12;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
repeated Security_groups security_groups = 4;
}
message CreateSecurityGroupReq{
message Security_group {
string name = 1;
string description = 2;
bool stateful = 3;
}
Security_group security_group = 1;
string platform =2;
}
message CreateSecurityGroupResp{
message Security_group_rules {
string direction = 1;
string ethertype = 2;
string id = 3;
int64 port_range_max = 4;
int64 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
int64 created_at = 11;
int64 updated_at = 12;
uint32 revision_number = 13;
repeated string tags = 15;
string tenant_id = 16;
string description = 17;
bool belongs_to_default_sg = 18;
}
message Security_group {
string description = 1;
string id = 2;
string name = 3;
repeated Security_group_rules security_group_rules = 4;
string project_id = 5;
int64 created_at = 6;
int64 updated_at = 7;
uint32 revision_number = 8;
repeated string tags = 9;
string tenant_id = 10;
bool stateful = 11;
bool shared = 12;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Security_group security_group = 4;
}
message DeleteSecurityGroupReq{
string security_group_id =1;
string platform =2;
}
message DeleteSecurityGroupResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UpdateSecurityGroupReq{
string security_group_id =1;
string platform =2;
}
message UpdateSecurityGroupResp{
message Security_group_rules {
string direction = 1;
string ethertype = 2;
string id = 3;
int64 port_range_max = 4;
int64 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
uint32 revision_number = 11;
repeated string tags = 12;
string tenant_id = 13;
int64 created_at = 14;
int64 updated_at = 15;
string description = 16;
bool belongs_to_default_sg = 17;
}
message Security_group {
repeated Security_group_rules security_group_rules = 1;
string project_id = 2;
uint32 revision_number = 3;
string tenant_id = 4;
int64 created_at = 5;
int64 updated_at = 6;
string id = 7;
string name = 8;
string description = 9;
repeated string tags = 10;
bool stateful = 11;
bool shared = 12;
bool belongs_to_default_sg = 13;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Security_group security_group = 4;
}
message ShowSecurityGroupReq{
string security_group_id =1;
bool verbose =2;
string fields =3;
string platform =4;
}
message ShowSecurityGroupResp{
message Security_group_rules {
string direction = 1;
string ethertype = 2;
string id = 3;
int64 port_range_max = 4;
int64 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
uint32 revision_number = 11;
repeated string tags = 12;
string tenant_id = 13;
int64 created_at = 14;
int64 updated_at = 15;
string description = 16;
bool belongs_to_default_sg = 17;
}
message Security_group {
string description = 1;
string id = 2;
string name = 3;
repeated Security_group_rules security_group_rules = 4;
string project_id = 5;
int64 created_at = 6;
int64 updated_at = 7;
uint32 revision_number = 8;
repeated string tags = 9;
string tenant_id = 10;
bool stateful = 11;
bool shared = 12;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Security_group security_group = 4;
}
//安全组规则
message ListSecurityGroupRulesReq{
string platform =2;
}
message ListSecurityGroupRulesResp{
message Security_group_rules {
string direction = 1;
string ethertype = 2;
string id = 3;
int64 port_range_max = 4;
int64 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
uint32 revision_number = 11;
int64 created_at = 12;
int64 updated_at = 13;
string tenant_id = 14;
string description = 15;
bool belongs_to_default_sg = 16;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
repeated Security_group_rules security_group_rules = 4;
}
message CreateSecurityGroupRuleReq{
message Security_group_rule {
string direction = 1;
string port_range_min = 2;
string ethertype = 3;
string port_range_max = 4;
string protocol = 5;
string remote_group_id = 6;
string security_group_id = 7;
}
Security_group_rule security_group_rule = 1;
string platform =2;
}
message CreateSecurityGroupRuleResp{
message Security_group_rule {
string direction = 1;
string ethertype = 2;
string id = 3;
uint32 port_range_max = 4;
uint32 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
uint32 revision_number = 11;
string tenant_id = 12;
int64 created_at = 13;
int64 updated_at = 14;
string description = 15;
bool belongs_to_default_sg = 16;
}
Security_group_rule security_group_rule = 1;
string msg =2; // @gotags: copier:"Msg"
int32 code =3; // @gotags: copier:"Code"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ShowSecurityGroupRuleReq{
string security_group_rule_id=1;
string platform =2;
}
message ShowSecurityGroupRuleResp{
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Security_group_rule security_group_rule = 4;
message Security_group_rule {
string direction = 1;
string ethertype = 2;
string id = 3;
uint32 port_range_max = 4;
uint32 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
string security_group_id = 9;
string project_id = 10;
uint32 revision_number = 11;
string tenant_id = 12;
int64 created_at = 13;
int64 updated_at = 14;
string description = 15;
bool belongs_to_default_sg = 16;
}
}
message DeleteSecurityGroupRuleReq{
string security_group_rule_id=1;
string platform =2;
}
message DeleteSecurityGroupRuleResp{
message Security_group_rule {
string direction = 1;
string ethertype = 2;
string id = 3;
int64 port_range_max = 4;
int64 port_range_min = 5;
string protocol = 6;
string remote_group_id = 7;
string remote_ip_prefix = 8;
uint32 revision_number = 9;
int64 created_at = 10;
int64 updated_at = 11;
string security_group_id = 12;
string project_id = 13;
string tenant_id = 14;
bool belongs_to_default_sg = 15;
}
string msg =1; // @gotags: copier:"Msg"
int32 code =2; // @gotags: copier:"Code"
string error_msg =3;// @gotags: copier:"ErrorMsg"
Security_group_rule security_group_rule = 4;
}
/****************** networks End 网络部分结束*************************/
/******************WangQi Bare Metal API Start*************************/
/****************** Bare Metal ListNodes Start*************************/
message ListNodesReq {
string instance_uuid = 1;
bool maintenance = 2;
bool associated = 3;
string provision_state = 4;
bool sharded = 5;
string driver = 6;
string resource_class = 7;
string conductor_group = 8;
string conductor =9;
string fault =10;
string owner =11;
string lessee =12;
repeated string shard =13;
int64 limit =14;
string marker =15;
string sort_dir =16;
string sort_key =17;
bool detail =18;
string parent_node =19;
string include_children =20;
string platform = 21;
}
message ListNodesResp {
message Links {
string href = 1;
string rel = 2;
}
message Nodes {
string instance_uuid = 1;
repeated Links links = 2;
bool maintenance = 3;
string name = 4;
string power_state = 5;
string provision_state = 6;
string uuid = 7;
}
repeated Nodes nodes = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
/******************Bare Metal ListNodes End*************************/
/****************** Bare Metal createNode Start*************************/
message CreateNodeReq {
message Driver_info {
string ipmi_username = 1;
string ipmi_password = 2;
}
string name = 1;
string driver = 2;
Driver_info driver_info = 3;
string power_interface = 4;
string resource_class = 5;
string boot_interface = 6;
string conductor_group = 7;
string console_interface = 8;
string deploy_interface = 9;
string inspect_interface = 10;
string management_interface = 11;
string network_interface = 12;
string rescue_interface = 13;
string storage_interface = 14;
string uuid = 15;
string vendor_interface = 16;
string owner = 17;
string description = 18;
string lessee = 19;
string shard = 20;
Properties properties = 21;
bool automated_clean = 22;
string bios_interface = 23;
string chassis_uuid =24;
Instance_info instance_info = 25;
string instance_uuid =26;
bool maintenance = 27;
bool maintenance_reason = 28;
Network_data network_data = 29;
string parent_node =30;
bool protected =31;
string protected_reason =32;
bool retired =33;
string retired_reason =34;
string platform = 35;
message Properties {
}
message Instance_info {
}
message Network_data{
}
}
message CreateNodeResp {
message Clean_step {
}
message Deploy_step {
}
message Driver_info {
string ipmi_password = 1;
string ipmi_username = 2;
}
message Driver_internal_info {
}
message Extra {
}
message Instance_info {
}
message Links {
string href = 1;
string rel = 2;
}
message Network_data {
}
message Portgroups {
string href = 1;
string rel = 2;
}
message Ports {
string href = 1;
string rel = 2;
}
message Properties {
}
message Raid_config {
}
message States {
string href = 1;
string rel = 2;
}
message Target_raid_config {
}
message Volume {
string href = 1;
string rel = 2;
}
string allocation_uuid = 1;
string name = 2;
string power_state = 3;
string target_power_state = 4;
string provision_state = 5;
string target_provision_state = 6;
bool maintenance = 7;
string maintenance_reason = 8;
string fault = 9;
string last_error = 10;
string reservation = 11;
string driver = 12;
Driver_info driver_info = 13;
Driver_internal_info driver_internal_info = 14;
Properties properties = 15;
Instance_info instance_info = 16;
string instance_uuid = 17;
string chassis_uuid = 18;
Extra extra = 19;
bool console_enabled = 20;
Raid_config raid_config = 21;
Target_raid_config target_raid_config = 22;
Clean_step clean_step = 23;
Deploy_step deploy_step = 24;
repeated Links links = 25;
repeated Ports ports = 26;
repeated Portgroups portgroups = 27;
repeated States states = 28;
string resource_class = 29;
string boot_interface = 30;
string console_interface = 31;
string deploy_interface = 32;
string conductor_group = 33;
string inspect_interface = 34;
string management_interface = 35;
string network_interface = 36;
string power_interface = 37;
string raid_interface = 38;
string rescue_interface = 39;
string storage_interface = 40;
repeated string traits = 41;
string vendor_interface = 42;
repeated Volume volume = 43;
bool protected = 44;
string protected_reason = 45;
string conductor =46;
string owner = 47;
string lessee = 48;
string shard = 49;
string description = 50;
string automated_clean = 51;
string bios_interface = 52;
Network_data network_data = 53;
bool retired = 54;
string retired_reason = 55;
string created_at = 56;
string inspection_finished_at = 57;
string inspection_started_at = 58;
string updated_at = 59;
string uuid = 60;
string provision_updated_at = 61;
int32 code = 62; // @gotags: copier:"Code"
string msg = 63; // @gotags: copier:"Msg"
string error_msg =65;// @gotags: copier:"ErrorMsg"
}
/******************Bare Metal createNode End*************************/
/****************** Bare Metal DeleteNode Start*************************/
message DeleteNodeReq{
string node_ident = 1;
string platform = 2;
}
message DeleteNodeResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/****************** Bare Metal DeleteNode End*************************/
/****************** Bare Metal ShowNodeDetailsReq Start******************/
message ShowNodeDetailsReq{
string node_ident = 1;
repeated Fields fields = 2;
string platform = 3;
message Fields{
}
}
message ShowNodeDetailsResp{
message Clean_step {
}
message Deploy_step {
}
message Driver_info {
string ipmi_password = 1;
string ipmi_username = 2;
}
message Driver_internal_info {
string clean_steps = 1;
}
message Extra {
}
message Instance_info {
}
message Links {
string href = 1;
string rel = 2;
}
message Network_data {
}
message Portgroups {
string href = 1;
string rel = 2;
}
message Ports {
string href = 1;
string rel = 2;
}
message Properties {
}
message Raid_config {
}
message States {
string href = 1;
string rel = 2;
}
message Target_raid_config {
}
message Volume {
string href = 1;
string rel = 2;
}
message Traits{
}
string uuid = 1;
string name = 2;
string power_state = 3;
string target_power_state = 4;
string provision_state = 5;
string target_provision_state = 6;
bool maintenance = 7;
string maintenance_reason = 8;
string fault = 9;
string last_error = 10;
string reservation =11;
string driver = 12;
Driver_info driver_info = 13;
Driver_internal_info driver_internal_info = 14;
Properties properties = 15;
Instance_info instance_info = 16;
string instance_uuid = 17;
string chassis_uuid = 18;
Extra extra = 19;
bool console_enabled = 20;
Raid_config raid_config = 21;
Target_raid_config target_raid_config = 22;
Clean_step clean_step = 23;
Deploy_step deploy_step = 24;
repeated Links links = 25;
repeated Ports ports = 26;
repeated Portgroups portgroups = 27;
repeated States states = 28;
string resource_class = 29;
string bios_interface = 30;
string boot_interface = 31;
string console_interface = 32;
string deploy_interface = 33;
string inspect_interface = 34;
string management_interface =35;
string network_interface = 36;
string power_interface = 37;
string raid_interface = 38;
string rescue_interface = 39;
string storage_interface = 40;
repeated Traits traits = 41;
string vendor_interface = 42;
repeated Volume volume = 43;
string conductor_group = 44;
bool protected = 45;
string protected_reason = 46;
string owner = 47;
string lessee = 48;
string shard = 49;
string description = 50;
string conductor = 51;
string allocation_uuid = 52;
string created_at = 53;
string inspection_finished_at = 54;
string inspection_started_at = 55;
Network_data network_data = 57;
string provision_updated_at = 58;
bool retired = 59;
string retired_reason = 60;
string updated_at = 61;
int32 code = 62; // @gotags: copier:"Code"
string msg = 63; // @gotags: copier:"Msg"
string error_msg =64;// @gotags: copier:"ErrorMsg"
}
/****************** Bare Metal ShowNodeDetailsResp End********************/
/******************WangQi Bare Metal API End*************************/
/******************WangQi Images API start*************************/
message CreateImageReq{
string container_format = 1;
string disk_format = 2;
string id = 3;
int64 min_disk =4;
int64 min_ram =5;
string name = 6;
bool protected =7;
repeated Tags tags = 43;
string visibility = 44;
string platform = 8;
}
message Tags{
}
message CreateImageResp{
string Location = 1;
string OpenStack_image_import_methods = 2 [json_name="OpenStack-image-import-methods"];
string OpenStack_image_store_ids = 3 [json_name="OpenStack-image-store-ids"];
string checksum = 4;
string container_format = 5;
string created_at = 6;
string disk_format = 7;
string file = 8;
string id = 9;
uint32 min_disk = 10;
uint32 min_ram = 11;
string name = 12;
string os_hash_algo = 13;
string os_hash_value = 14;
bool os_hidden = 15;
bool protected = 16;
string owner = 17;
string schema = 18;
string self = 19;
int64 size = 20;
string status = 21;
string updated_at = 22;
string visibility = 23;
int64 virtual_size = 24;
string direct_url =25;
repeated Tags tags = 26;
repeated Locations locations = 27;
message Tags{
}
message Locations{
}
int32 code = 28; // @gotags: copier:"Code"
string msg = 29; // @gotags: copier:"Msg"
string error_msg =30;// @gotags: copier:"ErrorMsg"
}
message ListImagesReq{
int32 limit = 1; // @gotags: copier:"Limit"
string platform = 2;
}
message ListImagesResp{
string first =1;
string next =2;
string schema = 3;
repeated Images images = 4;
message Images{
string status = 1;
string name = 2;
repeated Tags tags = 3;
string container_format = 4;
string created_at = 5;
string disk_format = 6;
string updated_at = 7;
string visibility = 8;
string self = 9;
uint32 min_disk = 10;
bool protected = 11;
string id = 12;
string file = 13;
string checksum = 14;
string os_hash_algo = 15;
string os_hash_value = 16;
bool os_hidden = 17;
string owner = 18;
uint32 size = 19;
uint32 min_ram = 20;
string schema = 21;
int32 virtual_size = 22;
}
message Tags {
}
int32 code = 5; // @gotags: copier:"Code"
string msg = 6; // @gotags: copier:"Msg"
string error_msg =7;// @gotags: copier:"ErrorMsg"
}
message DeleteImageReq{
string image_id = 1; // @gotags: copier:"imageId"
string platform = 2;
}
message DeleteImageResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UploadOsImageReq{
string image_id = 1; // @gotags: copier:"ImageId"
string platform = 2;
}
message UploadOsImageResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/******************WangQi Images API End*************************/
/******************WangQi volumes API start*************************/
message ListVolumesReq{
string project_id = 1; // @gotags: copier:"ProjectId"
string all_tenants =2;
string sort =3;
int32 limit =4;
int32 offset =5;
string marker =6;
bool with_count =7;
string created_at =8;
bool consumes_quota =9;
string updated_at =10;
string platform = 11;
}
message ListVolumesResp{
message Links {
string href = 1;
string rel = 2;
}
message Volumes {
string id = 1;
repeated Links links = 2;
string name = 3;
}
repeated Volumes volumes = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message ListVolumesDetailReq{
string all_tenants =2;
string sort =3;
int32 limit =4;
int32 offset =5;
string marker =6;
bool with_count =7;
string created_at =8;
bool consumes_quota =9;
string updated_at =10;
string platform = 11;
}
message ListVolumesDetailResp{
repeated VolumeDetail volumes = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
message Links {
string href = 1;
string rel = 2;
}
message Attachments {
string server_id = 1;
string attachment_id = 2;
string attached_at =3;
string host_name =4;
string volume_id=5;
string device =6;
string id=7;
}
message Metadata{
}
message VolumeDetail {
string id = 1;
repeated Links links = 2;
string name = 3;
string migration_status =4;
repeated Attachments attachments = 5;
string availability_zone =6;
string os_vol_host_attr_host =7 [json_name="os-vol-host-attr:host"];
bool encrypted =8;
string encryption_key_id=9;
string updated_at=10;
string replication_status =11;
string snapshot_id =12;
int32 size =13;
string user_id =14;
string os_vol_tenant_attr_tenant_id =15 [json_name="os-vol-tenant-attr:tenant_id"];
string os_vol_mig_status_attr_migstat =16 [json_name="os-vol-mig-status-attr:migstat"];
Metadata metadata =17;
string status =18;
string description =19;
bool multiattach =20;
string source_volid =21;
string consistencygroup_id =22;
string os_vol_mig_status_attr_name_id =23 [json_name="os-vol-mig-status-attr:name_id"];
string bootable =24;
string created_at =25;
string volume_type =26;
string volume_type_id =27;
string group_id =28;
string provider_id =29;
string service_uuid =30;
bool shared_targets =31;
string cluster_name =32;
bool consumes_quota =33;
int32 count =34;
}
}
message CreateVolumeReq{
string project_id = 1; // @gotags: copier:"ProjectId"
Volume volume = 2;
string platform = 3;
// Os_ch_hnt_scheduler_hints OS_SCH_HNT_scheduler_hints = 3 [json_name="Os-sch-hnt:scheduler_hints"];
message Metadata {
}
message Volume {
int32 size = 1; // @gotags: copier:"Size"
string availability_zone =2; // @gotags: copier:"AvailabilityZone"
string name = 3; // @gotags: copier:"Name"
string volume_type =4; // @gotags: copier:"VolumeType"
string description =5; // @gotags: copier:"Description"
Metadata metadata = 11;
}
/* message Os_ch_hnt_scheduler_hints {
repeated string same_host = 1;
}*/
}
message CreateVolumeResp{
message Links {
string href = 1;
string rel = 2;
}
message Metadata {
}
message Volume {
repeated Attachments attachments = 1;
string availability_zone = 2;
string bootable = 3;
string consistencygroup_id = 4;
string created_at = 5;
string description = 6;
bool encrypted = 7;
string id = 8;
repeated Links links = 9;
Metadata metadata = 10;
string migration_status = 11;
bool multiattach = 12;
string name = 13;
string replication_status = 14;
uint32 size = 15;
string snapshot_id = 16;
string source_volid = 17;
string status = 18;
string updated_at = 19;
string user_id = 20;
string volume_type = 21;
string group_id = 22;
string provider_id = 23;
string service_uuid = 24;
bool shared_targets = 25;
string cluster_name = 26;
string volume_type_id = 27;
bool consumes_quota = 28;
}
message Attachments{
string server_id = 1;
string attachment_id = 2;
string attached_at = 3;
string host_name = 4;
string volume_id = 5;
string device = 6;
string id = 7;
}
Volume volume = 1; // @gotags: copier:"Volume"
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteVolumeReq{
// string project_id =1;
string volume_id =2;
bool cascade =3;
bool force =4;
string platform = 5;
}
message DeleteVolumeResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
message UpdateVolumeReq{
message Metadata {
string name = 1;
}
message Volume {
string name = 1;
string description = 2;
Metadata metadata = 3;
}
string volume_id = 1;
Volume volume = 3;
string platform = 2;
}
message UpdateVolumeResp{
message Links {
string href = 1;
string rel = 2;
}
message Metadata {
string name = 1;
}
message Volume {
repeated Attachments attachments = 1;
string availability_zone = 2;
string bootable = 3;
string consistencygroup_id = 4;
string created_at = 5;
string description = 6;
bool encrypted = 7;
string id = 8;
repeated Links links = 9;
Metadata metadata = 10;
string migration_status = 11;
bool multiattach = 12;
string name = 13;
string replication_status = 14;
uint32 size = 15;
string snapshot_id = 16;
string source_volid = 17;
string status = 18;
string updated_at = 19;
string user_id = 20;
string volume_type = 21;
string group_id = 22;
string provider_id = 23;
string service_uuid = 24;
bool shared_targets = 25;
string cluster_name = 26;
string volume_type_id = 27;
bool consumes_quota = 28;
}
message Attachments{
string server_id = 1;
string attachment_id = 2;
string attached_at = 3;
string host_name = 4;
string volume_id = 5;
string device = 6;
string id = 7;
}
Volume volume = 1;
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message GetVolumeDetailedByIdReq{
string volume_id = 1;
string platform = 2;
}
message GetVolumeDetailedByIdResp{
message Links {
string href = 1;
string rel = 2;
}
message Metadata {
}
message Attachments {
}
message Volume {
repeated Attachments attachments = 1;
string availability_zone = 2;
string bootable = 3;
string consistencygroup_id = 4;
string created_at = 5;
string description = 6;
bool encrypted = 7;
string id = 8;
repeated Links links = 9;
Metadata metadata = 10;
string migration_status = 11;
bool multiattach = 12;
string name = 13;
string replication_status = 18;
uint32 size = 19;
string snapshot_id = 20;
string source_volid = 21;
string status = 22;
string updated_at = 23;
string user_id = 24;
string volume_type = 25;
string provider_id = 26;
string group_id = 27;
string service_uuid = 28;
bool shared_targets = 29;
string cluster_name = 30;
string volume_type_id = 31;
bool consumes_quota = 32;
}
Volume volume = 1;
string volume_id =2;
int32 code = 3; // @gotags: copier:"Code"
string msg = 4; // @gotags: copier:"Msg"
string error_msg =5;// @gotags: copier:"ErrorMsg"
}
message ListVolumeTypesReq{
string project_id =1;
string sort =2;
bool is_public =3;
int32 limit=4;
int32 offset =5;
string marker =6;
string platform = 7;
}
message ListVolumeTypesResp{
message Extra_specs {
string capabilities = 1;
}
message Volume_types {
string description = 1; // @gotags: copier:"Description"
Extra_specs extra_specs = 2; // @gotags: copier:"Extra_specs"
string id = 3;
bool is_public = 4; // @gotags: copier:"IsPublic"
string name = 5;
bool os_volume_type_access_is_public = 6 [json_name="os-volume-type-access:is_public"]; // @gotags: copier:"OsVolumeTypeAccessIsPublic"
string qos_specs_id = 7;
}
repeated Volume_types volume_types = 1; // @gotags: copier:"VolumeTypes"
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message CreateVolumeTypeReq{
message Extra_specs {
string capabilities = 1;
}
message Volume_type {
string name = 1;
string description = 2;
bool os_volume_type_access_is_public = 3[json_name="os-volume-type-access:is_public"];
Extra_specs extra_specs = 4;
}
//string project_id=1;
Volume_type volume_type = 2;
string platform = 3;
}
message CreateVolumeTypeResp{
message Extra_specs {
string capabilities = 1; // @gotags: copier:"Capabilities"
}
message Volume_type {
string name = 1; // @gotags: copier:"Name"
Extra_specs extra_specs = 2; // @gotags: copier:"ExtraSpecs"
bool os_volume_type_access_is_public = 3[json_name="os-volume-type-access:is_public"]; // @gotags: copier:"OsVolumeTypeAccessIsPublic"
bool is_public = 4; // @gotags: copier:"IsPublic"
string id = 5; // @gotags: copier:"Id"
string description = 6; // @gotags: copier:"Description"
}
Volume_type volume_type = 1; // @gotags: copier:"VolumeTypes"
int32 code = 2; // @gotags: copier:"Code"
string msg = 3; // @gotags: copier:"Msg"
string error_msg =4;// @gotags: copier:"ErrorMsg"
}
message DeleteVolumeTypeReq{
string volume_type_id =1;
string platform = 2;
}
message DeleteVolumeTypeResp{
int32 code = 1; // @gotags: copier:"Code"
string msg = 2; // @gotags: copier:"Msg"
string error_msg =3;// @gotags: copier:"ErrorMsg"
}
/******************WangQi volumes API start*************************/
service Openstack {
// Overview
rpc GetComputeLimits(GetComputeLimitsReq) returns (GetComputeLimitsResp);
rpc GetVolumeLimits(GetVolumeLimitsReq) returns (GetVolumeLimitsResp);
// Servers
rpc ListServers(ListServersReq) returns (ListServersResp);
rpc ListServersDetailed (ListServersDetailedReq) returns (ListServersDetailedResp);
rpc CreateServer(CreateServerReq) returns (CreateServerResp);
rpc DeleteServer(DeleteServerReq) returns (DeleteServerResp);
rpc GetServersDetailedById(GetServersDetailedByIdReq) returns (GetServersDetailedByIdResp);
rpc UpdateServer(UpdateServerReq) returns (UpdateServerResp);
rpc StartServer(StartServerReq) returns (StartServerResp);
rpc StopServer(StopServerReq) returns (StopServerResp);
rpc RebootServer(RebootServerReq) returns (RebootServerResp);//重启
rpc PauseServer(PauseServerReq) returns (PauseServerResp);//暂停
rpc UnpauseServer(UnpauseServerReq) returns (UnpauseServerResp);//取消暂停
rpc RebuildServer(RebuildServerReq) returns (RebuildServerResp); //重建
rpc ResizeServer(ResizeServerReq) returns (ResizeServerResp);//调整大小
rpc MigrateServer(MigrateServerReq) returns (MigrateServerResp);//迁移
rpc ShelveServer(ShelveServerReq) returns (ShelveServerResp);//搁置
rpc UnshelveServer(UnshelveServerReq) returns (UnshelveServerResp);//取消搁置
rpc ChangeAdministrativePassword(ChangeAdministrativePasswordReq) returns (ChangeAdministrativePasswordResp);//设置密码
rpc RescueServer(RescueServerReq) returns (RescueServerResp);//救援
rpc UnRescue(UnRescueServerReq) returns (UnRescueServerResp);//取消救援
rpc SuspendServer(SuspendServerReq) returns (SuspendServerResp); // 中止
rpc AddSecurityGroupToServer(AddSecurityGroupToServerReq) returns (AddSecurityGroupToServerResp);//将安全组添加到服务器
rpc removeSecurityGroup(removeSecurityGroupReq) returns (removeSecurityGroupResp);//从服务器中删除安全
//规格(Flavors)
rpc ListFlavorsDetail(ListFlavorsDetailReq) returns (ListFlavorsDetailResp);
rpc CreateFlavor (CreateFlavorReq) returns (CreateFlavorResp);
rpc DeleteFlavor(DeleteFlavorReq) returns (DeleteFlavorResp);
//network
rpc ShowNetworkDetails(ShowNetworkDetailsReq) returns (ShowNetworkDetailsResp);
rpc UpdateNetwork(UpdateNetworkReq) returns (UpdateNetworkResp);
rpc DeleteNetwork(DeleteNetworkReq) returns (DeleteNetworkResp);
rpc ListNetworks(ListNetworksReq) returns (ListNetworksResp);
rpc CreateNetwork(CreateNetworkReq) returns (CreateNetworkResp);
rpc BulkCreateNetworks(BulkCreateNetworksReq) returns (BulkCreateNetworksResp);//批量创建网络
//子网
rpc CreateSubnet(CreateSubnetReq) returns (CreateSubnetResp);//创建子网
rpc ListSubnets(ListSubnetsReq) returns (ListSubnetsResp);
rpc DeleteSubnet(DeleteSubnetReq) returns (DeleteSubnetResp);
rpc UpdateSubnet(UpdateSubnetReq) returns (UpdateSubnetResp);
//网段
rpc CreateNetworkSegmentRange(CreateNetworkSegmentRangeReq)returns(CreateNetworkSegmentRangeResp);
rpc ListNetworkSegmentRanges(ListNetworkSegmentRangesReq)returns(ListNetworkSegmentRangesResp);
rpc DeleteNetworkSegmentRanges(DeleteNetworkSegmentRangesReq)returns(DeleteNetworkSegmentRangesResp);
rpc UpdateNetworkSegmentRanges(UpdateNetworkSegmentRangesReq)returns(UpdateNetworkSegmentRangesResp);
rpc ShowNetworkSegmentRangeDetails(ShowNetworkSegmentRangeDetailsReq)returns(ShowNetworkSegmentRangeDetailsResp);
//端口
rpc CreatePort(CreatePortReq) returns (CreatePortResp);
rpc ListPorts(ListPortsReq) returns (ListPortsResp);
rpc DeletePort(DeletePortReq) returns (DeletePortResp);
rpc UpdatePort(UpdatePortReq) returns (UpdatePortResp);
rpc ShowPortDetails(ShowPortDetailsReq) returns (ShowPortDetailsResp);
//路由
rpc CreateRouter(CreateRouterReq)returns(CreateRouterResp);
rpc ListRouters(ListRoutersReq)returns(ListRoutersResp);
rpc ShowRouterDetails(ShowRouterDetailsReq)returns(ShowRouterDetailsResp);
rpc UpdateRouter(UpdateRouterReq)returns(UpdateRouterResp);
rpc DeleteRouter(DeleteRouterReq)returns(DeleteRouterResp);
//浮动IP
rpc ListFloatingIPs(ListFloatingIPsReq)returns(ListFloatingIPsResp);
rpc CreateFloatingIP(CreateFloatingIPReq)returns(CreateFloatingIPResp);
rpc UpdateFloatingIP(UpdateFloatingIPReq)returns(UpdateFloatingIPResp);
rpc DeleteFloatingIP(DeleteFloatingIPReq)returns(DeleteFloatingIPResp);
rpc ShowFloatingIPDetails(ShowFloatingIPDetailsReq)returns(ShowFloatingIPDetailsResp);
//防火墙
rpc ListFirewallGroups(ListFirewallGroupsReq)returns(ListFirewallGroupsResp);
rpc DeleteFirewallGroup(DeleteFirewallGroupReq)returns(DeleteFirewallGroupResp);
rpc CreateFirewallGroup(CreateFirewallGroupReq)returns(CreateFirewallGroupResp);
rpc UpdateFirewallGroup(UpdateFirewallGroupReq)returns(UpdateFirewallGroupResp);
rpc ShowFirewallGroupDetails(ShowFirewallGroupDetailsReq)returns(ShowFirewallGroupDetailsResp);
rpc CreateFirewallPolicy(CreateFirewallPolicyReq)returns(CreateFirewallPolicyResp);
rpc DeleteFirewallPolicy(DeleteFirewallPolicyReq)returns(DeleteFirewallPolicyResp);
rpc ListFirewallPolicies(ListFirewallPoliciesReq)returns(ListFirewallPoliciesResp);
rpc ShowFirewallPolicyDetails(ShowFirewallPolicyDetailsReq)returns(ShowFirewallPolicyDetailsResp);
rpc CreateFirewallRule(CreateFirewallRuleReq)returns(CreateFirewallRuleResp);
rpc DeleteFirewallRule(DeleteFirewallRuleReq)returns(DeleteFirewallRuleResp);
rpc ListFirewallRules(ListFirewallRulesReq)returns(ListFirewallRulesResp);
rpc ShowFirewallRuleDetails(ShowFirewallRuleDetailsReq)returns(ShowFirewallRuleDetailsResp);
//安全组
rpc ListSecurityGroups(ListSecurityGroupsReq)returns(ListSecurityGroupsResp);
rpc CreateSecurityGroup(CreateSecurityGroupReq)returns(CreateSecurityGroupResp);
rpc DeleteSecurityGroup(DeleteSecurityGroupReq)returns(DeleteSecurityGroupResp);
rpc UpdateSecurityGroup(UpdateSecurityGroupReq)returns(UpdateSecurityGroupResp);
rpc ShowSecurityGroup(ShowSecurityGroupReq)returns(ShowSecurityGroupResp);
//安全组规则
rpc ListSecurityGroupRules(ListSecurityGroupRulesReq)returns(ListSecurityGroupRulesResp);
rpc CreateSecurityGroupRule(CreateSecurityGroupRuleReq)returns(CreateSecurityGroupRuleResp);
rpc ShowSecurityGroupRule(ShowSecurityGroupRuleReq)returns(ShowSecurityGroupRuleResp);
rpc DeleteSecurityGroupRule(DeleteSecurityGroupRuleReq)returns(DeleteSecurityGroupRuleResp);
// Images from glance
rpc CreateImage(CreateImageReq) returns (CreateImageResp);
rpc ListImages(ListImagesReq) returns (ListImagesResp);
rpc DeleteImage(DeleteImageReq) returns (DeleteImageResp);
rpc UploadImage(UploadOsImageReq) returns (UploadOsImageResp);
// Bare Metal
rpc ListNodes(ListNodesReq) returns (ListNodesResp);
rpc CreateNode(CreateNodeReq) returns (CreateNodeResp);
rpc DeleteNode(DeleteNodeReq) returns (DeleteNodeResp);
rpc ShowNodeDetails(ShowNodeDetailsReq) returns (ShowNodeDetailsResp);
// cinder(block storage) volumes
rpc ListVolumes(ListVolumesReq) returns (ListVolumesResp);
rpc ListVolumesDetail(ListVolumesDetailReq) returns (ListVolumesDetailResp);
rpc CreateVolume(CreateVolumeReq) returns (CreateVolumeResp);
rpc DeleteVolume(DeleteVolumeReq) returns (DeleteVolumeResp);
rpc UpdateVolume(UpdateVolumeReq) returns (UpdateVolumeResp);
rpc GetVolumeDetailedById(GetVolumeDetailedByIdReq) returns (GetVolumeDetailedByIdResp);
rpc ListVolumeTypes(ListVolumeTypesReq) returns (ListVolumeTypesResp);
rpc CreateVolumeTypes(CreateVolumeTypeReq) returns (CreateVolumeTypeResp);
rpc DeleteVolumeTypes(DeleteVolumeTypeReq) returns (DeleteVolumeTypeResp);
}