#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ReplicationCycle {
#[prost(string, tag = "13")]
pub name: ::prost::alloc::string::String,
#[prost(int32, tag = "10")]
pub cycle_number: i32,
#[prost(message, optional, tag = "1")]
pub start_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "6")]
pub end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "7")]
pub total_pause_duration: ::core::option::Option<::pbjson_types::Duration>,
#[prost(int32, tag = "5")]
pub progress_percent: i32,
#[prost(message, repeated, tag = "9")]
pub steps: ::prost::alloc::vec::Vec<CycleStep>,
#[prost(enumeration = "replication_cycle::State", tag = "11")]
pub state: i32,
#[prost(message, optional, tag = "12")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, repeated, tag = "14")]
pub warnings: ::prost::alloc::vec::Vec<MigrationWarning>,
}
pub mod replication_cycle {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Running = 1,
Paused = 2,
Failed = 3,
Succeeded = 4,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Running => "RUNNING",
Self::Paused => "PAUSED",
Self::Failed => "FAILED",
Self::Succeeded => "SUCCEEDED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"RUNNING" => Some(Self::Running),
"PAUSED" => Some(Self::Paused),
"FAILED" => Some(Self::Failed),
"SUCCEEDED" => Some(Self::Succeeded),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CycleStep {
#[prost(message, optional, tag = "1")]
pub start_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(oneof = "cycle_step::Step", tags = "3, 4, 5")]
pub step: ::core::option::Option<cycle_step::Step>,
}
pub mod cycle_step {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
pub enum Step {
#[prost(message, tag = "3")]
InitializingReplication(super::InitializingReplicationStep),
#[prost(message, tag = "4")]
Replicating(super::ReplicatingStep),
#[prost(message, tag = "5")]
PostProcessing(super::PostProcessingStep),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct InitializingReplicationStep {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ReplicatingStep {
#[prost(int64, tag = "1")]
pub total_bytes: i64,
#[prost(int64, tag = "2")]
pub replicated_bytes: i64,
#[prost(int64, tag = "3")]
pub last_two_minutes_average_bytes_per_second: i64,
#[prost(int64, tag = "4")]
pub last_thirty_minutes_average_bytes_per_second: i64,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct PostProcessingStep {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ReplicationSync {
#[prost(message, optional, tag = "1")]
pub last_sync_time: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigratingVm {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub source_vm_id: ::prost::alloc::string::String,
#[prost(string, tag = "18")]
pub display_name: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub description: ::prost::alloc::string::String,
#[prost(message, optional, tag = "8")]
pub policy: ::core::option::Option<SchedulePolicy>,
#[prost(message, optional, tag = "9")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "10")]
pub update_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "11")]
pub last_sync: ::core::option::Option<ReplicationSync>,
#[prost(enumeration = "migrating_vm::State", tag = "23")]
pub state: i32,
#[prost(message, optional, tag = "22")]
pub state_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "13")]
pub current_sync_info: ::core::option::Option<ReplicationCycle>,
#[prost(message, optional, tag = "32")]
pub last_replication_cycle: ::core::option::Option<ReplicationCycle>,
#[prost(string, tag = "15")]
pub group: ::prost::alloc::string::String,
#[prost(map = "string, string", tag = "16")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(message, repeated, tag = "17")]
pub recent_clone_jobs: ::prost::alloc::vec::Vec<CloneJob>,
#[prost(message, optional, tag = "19")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, repeated, tag = "20")]
pub recent_cutover_jobs: ::prost::alloc::vec::Vec<CutoverJob>,
#[prost(message, optional, tag = "33")]
pub cutover_forecast: ::core::option::Option<CutoverForecast>,
#[prost(oneof = "migrating_vm::TargetVmDefaults", tags = "26")]
pub target_vm_defaults: ::core::option::Option<migrating_vm::TargetVmDefaults>,
#[prost(oneof = "migrating_vm::SourceVmDetails", tags = "29")]
pub source_vm_details: ::core::option::Option<migrating_vm::SourceVmDetails>,
}
pub mod migrating_vm {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Pending = 1,
Ready = 2,
FirstSync = 3,
Active = 4,
CuttingOver = 7,
Cutover = 8,
FinalSync = 9,
Paused = 10,
Finalizing = 11,
Finalized = 12,
Error = 13,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Pending => "PENDING",
Self::Ready => "READY",
Self::FirstSync => "FIRST_SYNC",
Self::Active => "ACTIVE",
Self::CuttingOver => "CUTTING_OVER",
Self::Cutover => "CUTOVER",
Self::FinalSync => "FINAL_SYNC",
Self::Paused => "PAUSED",
Self::Finalizing => "FINALIZING",
Self::Finalized => "FINALIZED",
Self::Error => "ERROR",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"PENDING" => Some(Self::Pending),
"READY" => Some(Self::Ready),
"FIRST_SYNC" => Some(Self::FirstSync),
"ACTIVE" => Some(Self::Active),
"CUTTING_OVER" => Some(Self::CuttingOver),
"CUTOVER" => Some(Self::Cutover),
"FINAL_SYNC" => Some(Self::FinalSync),
"PAUSED" => Some(Self::Paused),
"FINALIZING" => Some(Self::Finalizing),
"FINALIZED" => Some(Self::Finalized),
"ERROR" => Some(Self::Error),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum TargetVmDefaults {
#[prost(message, tag = "26")]
ComputeEngineTargetDefaults(super::ComputeEngineTargetDefaults),
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum SourceVmDetails {
#[prost(message, tag = "29")]
AwsSourceVmDetails(super::AwsSourceVmDetails),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CutoverForecast {
#[prost(message, optional, tag = "1")]
pub estimated_cutover_job_duration: ::core::option::Option<::pbjson_types::Duration>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CloneJob {
#[prost(message, optional, tag = "1")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "22")]
pub end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(string, tag = "3")]
pub name: ::prost::alloc::string::String,
#[prost(enumeration = "clone_job::State", tag = "12")]
pub state: i32,
#[prost(message, optional, tag = "14")]
pub state_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "17")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, repeated, tag = "23")]
pub steps: ::prost::alloc::vec::Vec<CloneStep>,
#[prost(oneof = "clone_job::TargetVmDetails", tags = "20")]
pub target_vm_details: ::core::option::Option<clone_job::TargetVmDetails>,
}
pub mod clone_job {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Pending = 1,
Active = 2,
Failed = 3,
Succeeded = 4,
Cancelled = 5,
Cancelling = 6,
AdaptingOs = 7,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Pending => "PENDING",
Self::Active => "ACTIVE",
Self::Failed => "FAILED",
Self::Succeeded => "SUCCEEDED",
Self::Cancelled => "CANCELLED",
Self::Cancelling => "CANCELLING",
Self::AdaptingOs => "ADAPTING_OS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"PENDING" => Some(Self::Pending),
"ACTIVE" => Some(Self::Active),
"FAILED" => Some(Self::Failed),
"SUCCEEDED" => Some(Self::Succeeded),
"CANCELLED" => Some(Self::Cancelled),
"CANCELLING" => Some(Self::Cancelling),
"ADAPTING_OS" => Some(Self::AdaptingOs),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum TargetVmDetails {
#[prost(message, tag = "20")]
ComputeEngineTargetDetails(super::ComputeEngineTargetDetails),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct CloneStep {
#[prost(message, optional, tag = "1")]
pub start_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(oneof = "clone_step::Step", tags = "3, 4, 5")]
pub step: ::core::option::Option<clone_step::Step>,
}
pub mod clone_step {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Oneof)]
pub enum Step {
#[prost(message, tag = "3")]
AdaptingOs(super::AdaptingOsStep),
#[prost(message, tag = "4")]
PreparingVmDisks(super::PreparingVmDisksStep),
#[prost(message, tag = "5")]
InstantiatingMigratedVm(super::InstantiatingMigratedVmStep),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct AdaptingOsStep {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct PreparingVmDisksStep {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct InstantiatingMigratedVmStep {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CutoverJob {
#[prost(message, optional, tag = "1")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "16")]
pub end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(string, tag = "3")]
pub name: ::prost::alloc::string::String,
#[prost(enumeration = "cutover_job::State", tag = "5")]
pub state: i32,
#[prost(message, optional, tag = "6")]
pub state_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(int32, tag = "13")]
pub progress_percent: i32,
#[prost(message, optional, tag = "9")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(string, tag = "10")]
pub state_message: ::prost::alloc::string::String,
#[prost(message, repeated, tag = "17")]
pub steps: ::prost::alloc::vec::Vec<CutoverStep>,
#[prost(oneof = "cutover_job::TargetVmDetails", tags = "14")]
pub target_vm_details: ::core::option::Option<cutover_job::TargetVmDetails>,
}
pub mod cutover_job {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Pending = 1,
Failed = 2,
Succeeded = 3,
Cancelled = 4,
Cancelling = 5,
Active = 6,
AdaptingOs = 7,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Pending => "PENDING",
Self::Failed => "FAILED",
Self::Succeeded => "SUCCEEDED",
Self::Cancelled => "CANCELLED",
Self::Cancelling => "CANCELLING",
Self::Active => "ACTIVE",
Self::AdaptingOs => "ADAPTING_OS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"PENDING" => Some(Self::Pending),
"FAILED" => Some(Self::Failed),
"SUCCEEDED" => Some(Self::Succeeded),
"CANCELLED" => Some(Self::Cancelled),
"CANCELLING" => Some(Self::Cancelling),
"ACTIVE" => Some(Self::Active),
"ADAPTING_OS" => Some(Self::AdaptingOs),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum TargetVmDetails {
#[prost(message, tag = "14")]
ComputeEngineTargetDetails(super::ComputeEngineTargetDetails),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CutoverStep {
#[prost(message, optional, tag = "1")]
pub start_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(oneof = "cutover_step::Step", tags = "3, 4, 5, 6, 7")]
pub step: ::core::option::Option<cutover_step::Step>,
}
pub mod cutover_step {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum Step {
#[prost(message, tag = "3")]
PreviousReplicationCycle(super::ReplicationCycle),
#[prost(message, tag = "4")]
ShuttingDownSourceVm(super::ShuttingDownSourceVmStep),
#[prost(message, tag = "5")]
FinalSync(super::ReplicationCycle),
#[prost(message, tag = "6")]
PreparingVmDisks(super::PreparingVmDisksStep),
#[prost(message, tag = "7")]
InstantiatingMigratedVm(super::InstantiatingMigratedVmStep),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct ShuttingDownSourceVmStep {}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Source {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(map = "string, string", tag = "4")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "6")]
pub description: ::prost::alloc::string::String,
#[prost(oneof = "source::SourceDetails", tags = "10, 12")]
pub source_details: ::core::option::Option<source::SourceDetails>,
}
pub mod source {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum SourceDetails {
#[prost(message, tag = "10")]
Vmware(super::VmwareSourceDetails),
#[prost(message, tag = "12")]
Aws(super::AwsSourceDetails),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VmwareSourceDetails {
#[prost(string, tag = "1")]
pub username: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub vcenter_ip: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub thumbprint: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub resolved_vcenter_host: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AwsSourceDetails {
#[prost(string, tag = "3")]
pub aws_region: ::prost::alloc::string::String,
#[prost(enumeration = "aws_source_details::State", tag = "4")]
pub state: i32,
#[prost(message, optional, tag = "5")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, repeated, tag = "10")]
pub inventory_tag_list: ::prost::alloc::vec::Vec<aws_source_details::Tag>,
#[prost(string, repeated, tag = "7")]
pub inventory_security_group_names: ::prost::alloc::vec::Vec<
::prost::alloc::string::String,
>,
#[prost(map = "string, string", tag = "8")]
pub migration_resources_user_tags: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, tag = "9")]
pub public_ip: ::prost::alloc::string::String,
#[prost(oneof = "aws_source_details::CredentialsType", tags = "11")]
pub credentials_type: ::core::option::Option<aws_source_details::CredentialsType>,
}
pub mod aws_source_details {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AccessKeyCredentials {
#[prost(string, tag = "1")]
pub access_key_id: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Tag {
#[prost(string, tag = "1")]
pub key: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub value: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Pending = 1,
Failed = 2,
Active = 3,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Pending => "PENDING",
Self::Failed => "FAILED",
Self::Active => "ACTIVE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"PENDING" => Some(Self::Pending),
"FAILED" => Some(Self::Failed),
"ACTIVE" => Some(Self::Active),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum CredentialsType {
#[prost(message, tag = "11")]
AccessKeyCreds(AccessKeyCredentials),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DatacenterConnector {
#[prost(message, optional, tag = "1")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "2")]
pub update_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(string, tag = "3")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "12")]
pub registration_id: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub service_account: ::prost::alloc::string::String,
#[prost(string, tag = "6")]
pub version: ::prost::alloc::string::String,
#[prost(string, tag = "10")]
pub bucket: ::prost::alloc::string::String,
#[prost(enumeration = "datacenter_connector::State", tag = "7")]
pub state: i32,
#[prost(message, optional, tag = "8")]
pub state_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "11")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(string, tag = "13")]
pub appliance_infrastructure_version: ::prost::alloc::string::String,
#[prost(string, tag = "14")]
pub appliance_software_version: ::prost::alloc::string::String,
#[prost(message, optional, tag = "15")]
pub available_versions: ::core::option::Option<AvailableUpdates>,
#[prost(message, optional, tag = "16")]
pub upgrade_status: ::core::option::Option<UpgradeStatus>,
}
pub mod datacenter_connector {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Pending = 1,
Offline = 2,
Failed = 3,
Active = 4,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Pending => "PENDING",
Self::Offline => "OFFLINE",
Self::Failed => "FAILED",
Self::Active => "ACTIVE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"PENDING" => Some(Self::Pending),
"OFFLINE" => Some(Self::Offline),
"FAILED" => Some(Self::Failed),
"ACTIVE" => Some(Self::Active),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UpgradeStatus {
#[prost(string, tag = "1")]
pub version: ::prost::alloc::string::String,
#[prost(enumeration = "upgrade_status::State", tag = "2")]
pub state: i32,
#[prost(message, optional, tag = "3")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, optional, tag = "4")]
pub start_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(string, tag = "5")]
pub previous_version: ::prost::alloc::string::String,
}
pub mod upgrade_status {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Running = 1,
Failed = 2,
Succeeded = 3,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Running => "RUNNING",
Self::Failed => "FAILED",
Self::Succeeded => "SUCCEEDED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"RUNNING" => Some(Self::Running),
"FAILED" => Some(Self::Failed),
"SUCCEEDED" => Some(Self::Succeeded),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AvailableUpdates {
#[prost(message, optional, tag = "1")]
pub new_deployable_appliance: ::core::option::Option<ApplianceVersion>,
#[prost(message, optional, tag = "2")]
pub in_place_update: ::core::option::Option<ApplianceVersion>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ApplianceVersion {
#[prost(string, tag = "1")]
pub version: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub uri: ::prost::alloc::string::String,
#[prost(bool, tag = "3")]
pub critical: bool,
#[prost(string, tag = "4")]
pub release_notes_uri: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VmwareVmDetails {
#[prost(string, tag = "1")]
pub vm_id: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub datacenter_id: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub datacenter_description: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub uuid: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
#[prost(enumeration = "vmware_vm_details::PowerState", tag = "6")]
pub power_state: i32,
#[prost(int32, tag = "7")]
pub cpu_count: i32,
#[prost(int32, tag = "8")]
pub memory_mb: i32,
#[prost(int32, tag = "9")]
pub disk_count: i32,
#[prost(int64, tag = "12")]
pub committed_storage_mb: i64,
#[prost(string, tag = "11")]
pub guest_description: ::prost::alloc::string::String,
#[prost(enumeration = "vmware_vm_details::BootOption", tag = "13")]
pub boot_option: i32,
}
pub mod vmware_vm_details {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum PowerState {
Unspecified = 0,
On = 1,
Off = 2,
Suspended = 3,
}
impl PowerState {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "POWER_STATE_UNSPECIFIED",
Self::On => "ON",
Self::Off => "OFF",
Self::Suspended => "SUSPENDED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"POWER_STATE_UNSPECIFIED" => Some(Self::Unspecified),
"ON" => Some(Self::On),
"OFF" => Some(Self::Off),
"SUSPENDED" => Some(Self::Suspended),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum BootOption {
Unspecified = 0,
Efi = 1,
Bios = 2,
}
impl BootOption {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "BOOT_OPTION_UNSPECIFIED",
Self::Efi => "EFI",
Self::Bios => "BIOS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"BOOT_OPTION_UNSPECIFIED" => Some(Self::Unspecified),
"EFI" => Some(Self::Efi),
"BIOS" => Some(Self::Bios),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UtilizationReport {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub display_name: ::prost::alloc::string::String,
#[prost(enumeration = "utilization_report::State", tag = "3")]
pub state: i32,
#[prost(message, optional, tag = "4")]
pub state_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "5")]
pub error: ::core::option::Option<super::super::super::super::rpc::Status>,
#[prost(message, optional, tag = "6")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(enumeration = "utilization_report::TimeFrame", tag = "7")]
pub time_frame: i32,
#[prost(message, optional, tag = "8")]
pub frame_end_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(int32, tag = "9")]
pub vm_count: i32,
#[prost(message, repeated, tag = "10")]
pub vms: ::prost::alloc::vec::Vec<VmUtilizationInfo>,
}
pub mod utilization_report {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum State {
Unspecified = 0,
Creating = 1,
Succeeded = 2,
Failed = 3,
}
impl State {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "STATE_UNSPECIFIED",
Self::Creating => "CREATING",
Self::Succeeded => "SUCCEEDED",
Self::Failed => "FAILED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"STATE_UNSPECIFIED" => Some(Self::Unspecified),
"CREATING" => Some(Self::Creating),
"SUCCEEDED" => Some(Self::Succeeded),
"FAILED" => Some(Self::Failed),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum TimeFrame {
Unspecified = 0,
Week = 1,
Month = 2,
Year = 3,
}
impl TimeFrame {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "TIME_FRAME_UNSPECIFIED",
Self::Week => "WEEK",
Self::Month => "MONTH",
Self::Year => "YEAR",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"TIME_FRAME_UNSPECIFIED" => Some(Self::Unspecified),
"WEEK" => Some(Self::Week),
"MONTH" => Some(Self::Month),
"YEAR" => Some(Self::Year),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct VmUtilizationInfo {
#[prost(string, tag = "3")]
pub vm_id: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub utilization: ::core::option::Option<VmUtilizationMetrics>,
#[prost(oneof = "vm_utilization_info::VmDetails", tags = "1")]
pub vm_details: ::core::option::Option<vm_utilization_info::VmDetails>,
}
pub mod vm_utilization_info {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Oneof)]
pub enum VmDetails {
#[prost(message, tag = "1")]
VmwareVmDetails(super::VmwareVmDetails),
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct VmUtilizationMetrics {
#[prost(int32, tag = "9")]
pub cpu_max_percent: i32,
#[prost(int32, tag = "10")]
pub cpu_average_percent: i32,
#[prost(int32, tag = "11")]
pub memory_max_percent: i32,
#[prost(int32, tag = "12")]
pub memory_average_percent: i32,
#[prost(int64, tag = "13")]
pub disk_io_rate_max_kbps: i64,
#[prost(int64, tag = "14")]
pub disk_io_rate_average_kbps: i64,
#[prost(int64, tag = "15")]
pub network_throughput_max_kbps: i64,
#[prost(int64, tag = "16")]
pub network_throughput_average_kbps: i64,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ComputeEngineTargetDefaults {
#[prost(string, tag = "1")]
pub vm_name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub target_project: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub zone: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub machine_type_series: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub machine_type: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "6")]
pub network_tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "7")]
pub network_interfaces: ::prost::alloc::vec::Vec<NetworkInterface>,
#[prost(string, tag = "8")]
pub service_account: ::prost::alloc::string::String,
#[prost(enumeration = "ComputeEngineDiskType", tag = "9")]
pub disk_type: i32,
#[prost(map = "string, string", tag = "10")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(enumeration = "ComputeEngineLicenseType", tag = "11")]
pub license_type: i32,
#[prost(message, optional, tag = "12")]
pub applied_license: ::core::option::Option<AppliedLicense>,
#[prost(message, optional, tag = "13")]
pub compute_scheduling: ::core::option::Option<ComputeScheduling>,
#[prost(bool, tag = "14")]
pub secure_boot: bool,
#[prost(enumeration = "ComputeEngineBootOption", tag = "15")]
pub boot_option: i32,
#[prost(map = "string, string", tag = "16")]
pub metadata: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, repeated, tag = "17")]
pub additional_licenses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, tag = "18")]
pub hostname: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ComputeEngineTargetDetails {
#[prost(string, tag = "1")]
pub vm_name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub project: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub zone: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub machine_type_series: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub machine_type: ::prost::alloc::string::String,
#[prost(string, repeated, tag = "6")]
pub network_tags: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(message, repeated, tag = "7")]
pub network_interfaces: ::prost::alloc::vec::Vec<NetworkInterface>,
#[prost(string, tag = "8")]
pub service_account: ::prost::alloc::string::String,
#[prost(enumeration = "ComputeEngineDiskType", tag = "9")]
pub disk_type: i32,
#[prost(map = "string, string", tag = "10")]
pub labels: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(enumeration = "ComputeEngineLicenseType", tag = "11")]
pub license_type: i32,
#[prost(message, optional, tag = "12")]
pub applied_license: ::core::option::Option<AppliedLicense>,
#[prost(message, optional, tag = "13")]
pub compute_scheduling: ::core::option::Option<ComputeScheduling>,
#[prost(bool, tag = "14")]
pub secure_boot: bool,
#[prost(enumeration = "ComputeEngineBootOption", tag = "15")]
pub boot_option: i32,
#[prost(map = "string, string", tag = "16")]
pub metadata: ::std::collections::HashMap<
::prost::alloc::string::String,
::prost::alloc::string::String,
>,
#[prost(string, repeated, tag = "17")]
pub additional_licenses: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
#[prost(string, tag = "18")]
pub hostname: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct NetworkInterface {
#[prost(string, tag = "1")]
pub network: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub subnetwork: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub internal_ip: ::prost::alloc::string::String,
#[prost(string, tag = "4")]
pub external_ip: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AppliedLicense {
#[prost(enumeration = "applied_license::Type", tag = "1")]
pub r#type: i32,
#[prost(string, tag = "2")]
pub os_license: ::prost::alloc::string::String,
}
pub mod applied_license {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum Type {
Unspecified = 0,
None = 1,
Payg = 2,
Byol = 3,
}
impl Type {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "TYPE_UNSPECIFIED",
Self::None => "NONE",
Self::Payg => "PAYG",
Self::Byol => "BYOL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"NONE" => Some(Self::None),
"PAYG" => Some(Self::Payg),
"BYOL" => Some(Self::Byol),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SchedulingNodeAffinity {
#[prost(string, tag = "1")]
pub key: ::prost::alloc::string::String,
#[prost(enumeration = "scheduling_node_affinity::Operator", tag = "2")]
pub operator: i32,
#[prost(string, repeated, tag = "3")]
pub values: ::prost::alloc::vec::Vec<::prost::alloc::string::String>,
}
pub mod scheduling_node_affinity {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum Operator {
Unspecified = 0,
In = 1,
NotIn = 2,
}
impl Operator {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "OPERATOR_UNSPECIFIED",
Self::In => "IN",
Self::NotIn => "NOT_IN",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"OPERATOR_UNSPECIFIED" => Some(Self::Unspecified),
"IN" => Some(Self::In),
"NOT_IN" => Some(Self::NotIn),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct ComputeScheduling {
#[prost(enumeration = "compute_scheduling::OnHostMaintenance", tag = "1")]
pub on_host_maintenance: i32,
#[prost(enumeration = "compute_scheduling::RestartType", tag = "5")]
pub restart_type: i32,
#[prost(message, repeated, tag = "3")]
pub node_affinities: ::prost::alloc::vec::Vec<SchedulingNodeAffinity>,
#[prost(int32, tag = "4")]
pub min_node_cpus: i32,
}
pub mod compute_scheduling {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum OnHostMaintenance {
Unspecified = 0,
Terminate = 1,
Migrate = 2,
}
impl OnHostMaintenance {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "ON_HOST_MAINTENANCE_UNSPECIFIED",
Self::Terminate => "TERMINATE",
Self::Migrate => "MIGRATE",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"ON_HOST_MAINTENANCE_UNSPECIFIED" => Some(Self::Unspecified),
"TERMINATE" => Some(Self::Terminate),
"MIGRATE" => Some(Self::Migrate),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum RestartType {
Unspecified = 0,
AutomaticRestart = 1,
NoAutomaticRestart = 2,
}
impl RestartType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "RESTART_TYPE_UNSPECIFIED",
Self::AutomaticRestart => "AUTOMATIC_RESTART",
Self::NoAutomaticRestart => "NO_AUTOMATIC_RESTART",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"RESTART_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"AUTOMATIC_RESTART" => Some(Self::AutomaticRestart),
"NO_AUTOMATIC_RESTART" => Some(Self::NoAutomaticRestart),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, PartialEq, ::prost::Message)]
pub struct SchedulePolicy {
#[prost(message, optional, tag = "1")]
pub idle_duration: ::core::option::Option<::pbjson_types::Duration>,
#[prost(bool, tag = "2")]
pub skip_os_adaptation: bool,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetProject {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(string, tag = "2")]
pub project: ::prost::alloc::string::String,
#[prost(string, tag = "3")]
pub description: ::prost::alloc::string::String,
#[prost(message, optional, tag = "4")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "5")]
pub update_time: ::core::option::Option<::pbjson_types::Timestamp>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct Group {
#[prost(string, tag = "1")]
pub name: ::prost::alloc::string::String,
#[prost(message, optional, tag = "2")]
pub create_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(message, optional, tag = "3")]
pub update_time: ::core::option::Option<::pbjson_types::Timestamp>,
#[prost(string, tag = "4")]
pub description: ::prost::alloc::string::String,
#[prost(string, tag = "5")]
pub display_name: ::prost::alloc::string::String,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigrationWarning {
#[prost(enumeration = "migration_warning::WarningCode", tag = "1")]
pub code: i32,
#[prost(message, optional, tag = "2")]
pub warning_message: ::core::option::Option<
super::super::super::super::rpc::LocalizedMessage,
>,
#[prost(message, optional, tag = "3")]
pub action_item: ::core::option::Option<
super::super::super::super::rpc::LocalizedMessage,
>,
#[prost(message, repeated, tag = "4")]
pub help_links: ::prost::alloc::vec::Vec<
super::super::super::super::rpc::help::Link,
>,
#[prost(message, optional, tag = "5")]
pub warning_time: ::core::option::Option<::pbjson_types::Timestamp>,
}
pub mod migration_warning {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum WarningCode {
Unspecified = 0,
AdaptationWarning = 1,
}
impl WarningCode {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "WARNING_CODE_UNSPECIFIED",
Self::AdaptationWarning => "ADAPTATION_WARNING",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"WARNING_CODE_UNSPECIFIED" => Some(Self::Unspecified),
"ADAPTATION_WARNING" => Some(Self::AdaptationWarning),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AwsSourceVmDetails {
#[prost(enumeration = "aws_source_vm_details::Firmware", tag = "1")]
pub firmware: i32,
#[prost(int64, tag = "2")]
pub committed_storage_bytes: i64,
#[prost(message, repeated, tag = "3")]
pub disks: ::prost::alloc::vec::Vec<aws_source_vm_details::AwsDiskDetails>,
}
pub mod aws_source_vm_details {
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct AwsDiskDetails {
#[prost(int32, tag = "1")]
pub disk_number: i32,
#[prost(string, tag = "2")]
pub volume_id: ::prost::alloc::string::String,
#[prost(int64, tag = "3")]
pub size_gb: i64,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(
Clone,
Copy,
Debug,
PartialEq,
Eq,
Hash,
PartialOrd,
Ord,
::prost::Enumeration
)]
#[repr(i32)]
pub enum Firmware {
Unspecified = 0,
Efi = 1,
Bios = 2,
}
impl Firmware {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "FIRMWARE_UNSPECIFIED",
Self::Efi => "EFI",
Self::Bios => "BIOS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"FIRMWARE_UNSPECIFIED" => Some(Self::Unspecified),
"EFI" => Some(Self::Efi),
"BIOS" => Some(Self::Bios),
_ => None,
}
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UtilizationReportEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<UtilizationReport>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GroupEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<Group>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CloneJobEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<CloneJob>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DatacenterConnectorEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<DatacenterConnector>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetProjectEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<TargetProject>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CutoverJobEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<CutoverJob>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<Source>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigratingVmEventData {
#[prost(message, optional, tag = "1")]
pub payload: ::core::option::Option<MigratingVm>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ComputeEngineDiskType {
Unspecified = 0,
Standard = 1,
Ssd = 2,
Balanced = 3,
}
impl ComputeEngineDiskType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "COMPUTE_ENGINE_DISK_TYPE_UNSPECIFIED",
Self::Standard => "COMPUTE_ENGINE_DISK_TYPE_STANDARD",
Self::Ssd => "COMPUTE_ENGINE_DISK_TYPE_SSD",
Self::Balanced => "COMPUTE_ENGINE_DISK_TYPE_BALANCED",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"COMPUTE_ENGINE_DISK_TYPE_UNSPECIFIED" => Some(Self::Unspecified),
"COMPUTE_ENGINE_DISK_TYPE_STANDARD" => Some(Self::Standard),
"COMPUTE_ENGINE_DISK_TYPE_SSD" => Some(Self::Ssd),
"COMPUTE_ENGINE_DISK_TYPE_BALANCED" => Some(Self::Balanced),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ComputeEngineLicenseType {
Default = 0,
Payg = 1,
Byol = 2,
}
impl ComputeEngineLicenseType {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Default => "COMPUTE_ENGINE_LICENSE_TYPE_DEFAULT",
Self::Payg => "COMPUTE_ENGINE_LICENSE_TYPE_PAYG",
Self::Byol => "COMPUTE_ENGINE_LICENSE_TYPE_BYOL",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"COMPUTE_ENGINE_LICENSE_TYPE_DEFAULT" => Some(Self::Default),
"COMPUTE_ENGINE_LICENSE_TYPE_PAYG" => Some(Self::Payg),
"COMPUTE_ENGINE_LICENSE_TYPE_BYOL" => Some(Self::Byol),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, Copy, Debug, PartialEq, Eq, Hash, PartialOrd, Ord, ::prost::Enumeration)]
#[repr(i32)]
pub enum ComputeEngineBootOption {
Unspecified = 0,
Efi = 1,
Bios = 2,
}
impl ComputeEngineBootOption {
pub fn as_str_name(&self) -> &'static str {
match self {
Self::Unspecified => "COMPUTE_ENGINE_BOOT_OPTION_UNSPECIFIED",
Self::Efi => "COMPUTE_ENGINE_BOOT_OPTION_EFI",
Self::Bios => "COMPUTE_ENGINE_BOOT_OPTION_BIOS",
}
}
pub fn from_str_name(value: &str) -> ::core::option::Option<Self> {
match value {
"COMPUTE_ENGINE_BOOT_OPTION_UNSPECIFIED" => Some(Self::Unspecified),
"COMPUTE_ENGINE_BOOT_OPTION_EFI" => Some(Self::Efi),
"COMPUTE_ENGINE_BOOT_OPTION_BIOS" => Some(Self::Bios),
_ => None,
}
}
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<SourceEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceUpdatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<SourceEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct SourceDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<SourceEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UtilizationReportCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<UtilizationReportEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct UtilizationReportDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<UtilizationReportEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DatacenterConnectorCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<DatacenterConnectorEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct DatacenterConnectorDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<DatacenterConnectorEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigratingVmCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<MigratingVmEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigratingVmUpdatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<MigratingVmEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct MigratingVmDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<MigratingVmEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CloneJobCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<CloneJobEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct CutoverJobCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<CutoverJobEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GroupCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<GroupEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GroupUpdatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<GroupEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct GroupDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<GroupEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetProjectCreatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<TargetProjectEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetProjectUpdatedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<TargetProjectEventData>,
}
#[derive(serde::Serialize, serde::Deserialize)]
#[serde(default)]
#[serde(rename_all = "snake_case")]
#[derive(Clone, PartialEq, ::prost::Message)]
pub struct TargetProjectDeletedEvent {
#[prost(message, optional, tag = "1")]
pub data: ::core::option::Option<TargetProjectEventData>,
}