Class: Google::Apis::CloudbillingV1beta::Workload

Inherits:
Object
  • Object
show all
Includes:
Google::Apis::Core::Hashable, Google::Apis::Core::JsonObjectSupport
Defined in:
lib/google/apis/cloudbilling_v1beta/classes.rb,
lib/google/apis/cloudbilling_v1beta/representations.rb,
lib/google/apis/cloudbilling_v1beta/representations.rb

Overview

Specifies usage on a single Google Cloud product over a time frame. Each Google Cloud product has its own message, containing specific product configuration parameters of the product usage amounts along each dimension in which the product is billed.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(**args) ⇒ Workload

Returns a new instance of Workload.



3062
3063
3064
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3062

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#cloud_cdn_egress_workloadGoogle::Apis::CloudbillingV1beta::CloudCdnEgressWorkload

Specifies usage for Cloud CDN Data Transfer. Corresponds to the JSON property cloudCdnEgressWorkload



2989
2990
2991
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2989

def cloud_cdn_egress_workload
  @cloud_cdn_egress_workload
end

#cloud_cdn_workloadGoogle::Apis::CloudbillingV1beta::CloudCdnWorkload

Specifies usage for Cloud CDN resources. Corresponds to the JSON property cloudCdnWorkload



2994
2995
2996
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 2994

def cloud_cdn_workload
  @cloud_cdn_workload
end

#cloud_interconnect_egress_workloadGoogle::Apis::CloudbillingV1beta::CloudInterconnectEgressWorkload

Includes the estimate for Interconnect Data Transfer only. To specify usage for data transfer between VMs and internet end-points, use the Standard Tier Internet Data Transfer interface. Corresponds to the JSON property cloudInterconnectEgressWorkload



3001
3002
3003
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3001

def cloud_interconnect_egress_workload
  @cloud_interconnect_egress_workload
end

#cloud_interconnect_workloadGoogle::Apis::CloudbillingV1beta::CloudInterconnectWorkload

Specifies usage for Cloud Interconnect resources. Corresponds to the JSON property cloudInterconnectWorkload



3006
3007
3008
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3006

def cloud_interconnect_workload
  @cloud_interconnect_workload
end

#cloud_storage_egress_workloadGoogle::Apis::CloudbillingV1beta::CloudStorageEgressWorkload

Specification of a network type. Network data transfer within Google Cloud applies when you move or copy data from one Cloud Storage bucket to another or when another Google Cloud service accesses data in your Cloud Storage bucket. This includes the network data transfer within Google Cloud and the general network usage. * If transferring data between two regions, the source and destination fields are set to different values. For example: source_continent = "SOURCE_CONTINENT_ASIA_PACIFIC", destination_continent = " SOURCE_CONTINENT_SOUTH_AMERICA". * If transferring data within one region, the source and destination fields are set to the same value. For example: source_continent = "SOURCE_CONTINENT_ASIA_PACIFIC", destination_continent = "SOURCE_CONTINENT_ASIA_PACIFIC". Some examples for the Network data transfer traffic type on the pricing page. * Data moves between different locations on the same continent. source_continent = "SOURCE_CONTINENT_ASIA_PACIFIC", destination_continent = "SOURCE_CONTINENT_ASIA_PACIFIC". * Data moves between different continents and neither is Australia. source_continent = " SOURCE_CONTINENT_NORTH_AMERICA", destination_continent = " SOURCE_CONTINENT_ASIA_PACIFIC". * Data moves between different continents and one is Australia. source_continent = "SOURCE_CONTINENT_NORTH_AMERICA", destination_continent = "SOURCE_CONTINENT_AUSTRALIA". Corresponds to the JSON property cloudStorageEgressWorkload



3029
3030
3031
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3029

def cloud_storage_egress_workload
  @cloud_storage_egress_workload
end

#cloud_storage_workloadGoogle::Apis::CloudbillingV1beta::CloudStorageWorkload

Specifies usage of Cloud Storage resources. Corresponds to the JSON property cloudStorageWorkload



3034
3035
3036
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3034

def cloud_storage_workload
  @cloud_storage_workload
end

#compute_vm_workloadGoogle::Apis::CloudbillingV1beta::ComputeVmWorkload

Specificies usage of a set of identical compute VM instances. Corresponds to the JSON property computeVmWorkload



3039
3040
3041
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3039

def compute_vm_workload
  @compute_vm_workload
end

#nameString

Required. A name for this workload. All workloads in a CostScenario must have a unique name. Each name may be at most 128 characters long. Corresponds to the JSON property name

Returns:

  • (String)


3045
3046
3047
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3045

def name
  @name
end

#premium_tier_egress_workloadGoogle::Apis::CloudbillingV1beta::PremiumTierEgressWorkload

Specify a Premium Tier Internet Data Transfer networking workload. Corresponds to the JSON property premiumTierEgressWorkload



3050
3051
3052
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3050

def premium_tier_egress_workload
  @premium_tier_egress_workload
end

#standard_tier_egress_workloadGoogle::Apis::CloudbillingV1beta::StandardTierEgressWorkload

Specify Standard Tier Internet Data Transfer. Corresponds to the JSON property standardTierEgressWorkload



3055
3056
3057
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3055

def standard_tier_egress_workload
  @standard_tier_egress_workload
end

#vm_to_vm_egress_workloadGoogle::Apis::CloudbillingV1beta::VmToVmEgressWorkload

Specify VM to VM data transfer. Corresponds to the JSON property vmToVmEgressWorkload



3060
3061
3062
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3060

def vm_to_vm_egress_workload
  @vm_to_vm_egress_workload
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
# File 'lib/google/apis/cloudbilling_v1beta/classes.rb', line 3067

def update!(**args)
  @cloud_cdn_egress_workload = args[:cloud_cdn_egress_workload] if args.key?(:cloud_cdn_egress_workload)
  @cloud_cdn_workload = args[:cloud_cdn_workload] if args.key?(:cloud_cdn_workload)
  @cloud_interconnect_egress_workload = args[:cloud_interconnect_egress_workload] if args.key?(:cloud_interconnect_egress_workload)
  @cloud_interconnect_workload = args[:cloud_interconnect_workload] if args.key?(:cloud_interconnect_workload)
  @cloud_storage_egress_workload = args[:cloud_storage_egress_workload] if args.key?(:cloud_storage_egress_workload)
  @cloud_storage_workload = args[:cloud_storage_workload] if args.key?(:cloud_storage_workload)
  @compute_vm_workload = args[:compute_vm_workload] if args.key?(:compute_vm_workload)
  @name = args[:name] if args.key?(:name)
  @premium_tier_egress_workload = args[:premium_tier_egress_workload] if args.key?(:premium_tier_egress_workload)
  @standard_tier_egress_workload = args[:standard_tier_egress_workload] if args.key?(:standard_tier_egress_workload)
  @vm_to_vm_egress_workload = args[:vm_to_vm_egress_workload] if args.key?(:vm_to_vm_egress_workload)
end