google-apis-cloudbilling_v1beta 0.2.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 253eaeaedec2fcb82f2f33732c183503f5acdcb75872e3f6bfbab10b76339faf
4
- data.tar.gz: a7fb21139e9a042a38cb970b82ede97530c1c6c7c5218bed54c4de509428ebcc
3
+ metadata.gz: 6ff6812eb47e0921c919b32e634289d1272ad8e270d22fb12cf508325f4104eb
4
+ data.tar.gz: 6a538bb5a4b5d9cbdef36afaff7cf13a28910d820ce26f537fff47d09255fdce
5
5
  SHA512:
6
- metadata.gz: cef987914e80d98935379c0e09baf1123187888c67468e8513e00e6842f333f5de71f1e6e8541b64d7c413f087400b225b1263f8399a1ecf9d97da15f9aec257
7
- data.tar.gz: eef95351dd289c4d228f30ddd676df8dd9f11f806768f47ba82f677061f78820b2dfdfc80163287e8821f7afecb8747aca0bf1417a27281432b9d7fb1f9d56a5
6
+ metadata.gz: a6ab8a711a52811f5a2503d8f35c4fb52d4c2bcc1a2cf35e98c8907efc88d5283b6ceaa1610c08741fadd36bd0ad35d942849cf741e709abe4ddbecf0ac8e9f0
7
+ data.tar.gz: d2ed2381cf441480e7bc809c356831cbdff162b0b792acafd45f54809deb0882377e02aaf04085e5cc8a777579eea1f3a73a07ee2fb83a8907652f723abfdd8e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Release history for google-apis-cloudbilling_v1beta
2
2
 
3
+ ### v0.4.0 (2023-02-05)
4
+
5
+ * Regenerated from discovery document revision 20230130
6
+ * Regenerated using generator version 0.11.1
7
+
8
+ ### v0.3.0 (2022-12-27)
9
+
10
+ * Regenerated from discovery document revision 20221206
11
+
3
12
  ### v0.2.0 (2022-10-20)
4
13
 
5
14
  * Regenerated using generator version 0.11.0
@@ -22,6 +22,192 @@ module Google
22
22
  module Apis
23
23
  module CloudbillingV1beta
24
24
 
25
+ # Specifies the regions for Cache Fill.
26
+ class CacheFillRegions
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # The destination region for cache fill.
30
+ # Corresponds to the JSON property `destinationRegion`
31
+ # @return [String]
32
+ attr_accessor :destination_region
33
+
34
+ # The source region for cache fill.
35
+ # Corresponds to the JSON property `sourceRegion`
36
+ # @return [String]
37
+ attr_accessor :source_region
38
+
39
+ def initialize(**args)
40
+ update!(**args)
41
+ end
42
+
43
+ # Update properties of this object
44
+ def update!(**args)
45
+ @destination_region = args[:destination_region] if args.key?(:destination_region)
46
+ @source_region = args[:source_region] if args.key?(:source_region)
47
+ end
48
+ end
49
+
50
+ # Specifies usage for Cloud CDN egress.
51
+ class CloudCdnEgressWorkload
52
+ include Google::Apis::Core::Hashable
53
+
54
+ # The destination for the cache egress charges.
55
+ # Corresponds to the JSON property `cacheEgressDestination`
56
+ # @return [String]
57
+ attr_accessor :cache_egress_destination
58
+
59
+ # An amount of usage over a time frame.
60
+ # Corresponds to the JSON property `cacheEgressRate`
61
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
62
+ attr_accessor :cache_egress_rate
63
+
64
+ def initialize(**args)
65
+ update!(**args)
66
+ end
67
+
68
+ # Update properties of this object
69
+ def update!(**args)
70
+ @cache_egress_destination = args[:cache_egress_destination] if args.key?(:cache_egress_destination)
71
+ @cache_egress_rate = args[:cache_egress_rate] if args.key?(:cache_egress_rate)
72
+ end
73
+ end
74
+
75
+ # Specifies usage for Cloud CDN resources.
76
+ class CloudCdnWorkload
77
+ include Google::Apis::Core::Hashable
78
+
79
+ # The source service for the cache fill.
80
+ # Corresponds to the JSON property `cacheFillOriginService`
81
+ # @return [String]
82
+ attr_accessor :cache_fill_origin_service
83
+
84
+ # An amount of usage over a time frame.
85
+ # Corresponds to the JSON property `cacheFillRate`
86
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
87
+ attr_accessor :cache_fill_rate
88
+
89
+ # Specifies the regions for Cache Fill.
90
+ # Corresponds to the JSON property `cacheFillRegions`
91
+ # @return [Google::Apis::CloudbillingV1beta::CacheFillRegions]
92
+ attr_accessor :cache_fill_regions
93
+
94
+ # An amount of usage over a time frame.
95
+ # Corresponds to the JSON property `cacheLookUpRate`
96
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
97
+ attr_accessor :cache_look_up_rate
98
+
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
102
+
103
+ # Update properties of this object
104
+ def update!(**args)
105
+ @cache_fill_origin_service = args[:cache_fill_origin_service] if args.key?(:cache_fill_origin_service)
106
+ @cache_fill_rate = args[:cache_fill_rate] if args.key?(:cache_fill_rate)
107
+ @cache_fill_regions = args[:cache_fill_regions] if args.key?(:cache_fill_regions)
108
+ @cache_look_up_rate = args[:cache_look_up_rate] if args.key?(:cache_look_up_rate)
109
+ end
110
+ end
111
+
112
+ # The interconnect egress only includes the Interconnect Egress. Please use the
113
+ # standard egress traffic interface to specify your standard egress usage.
114
+ class CloudInterconnectEgressWorkload
115
+ include Google::Apis::Core::Hashable
116
+
117
+ # An amount of usage over a time frame.
118
+ # Corresponds to the JSON property `egressRate`
119
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
120
+ attr_accessor :egress_rate
121
+
122
+ # Locations in the [Interconnect connection location table](https://cloud.google.
123
+ # com/vpc/network-pricing#interconnect-pricing). This is the interconnect egress
124
+ # charges.
125
+ # Corresponds to the JSON property `interconnectConnectionLocation`
126
+ # @return [String]
127
+ attr_accessor :interconnect_connection_location
128
+
129
+ def initialize(**args)
130
+ update!(**args)
131
+ end
132
+
133
+ # Update properties of this object
134
+ def update!(**args)
135
+ @egress_rate = args[:egress_rate] if args.key?(:egress_rate)
136
+ @interconnect_connection_location = args[:interconnect_connection_location] if args.key?(:interconnect_connection_location)
137
+ end
138
+ end
139
+
140
+ # Specifies usage for Cloud Interconnect resources.
141
+ class CloudInterconnectWorkload
142
+ include Google::Apis::Core::Hashable
143
+
144
+ # VLAN attachment used for interconnect.
145
+ # Corresponds to the JSON property `interconnectAttachments`
146
+ # @return [Array<Google::Apis::CloudbillingV1beta::VlanAttachment>]
147
+ attr_accessor :interconnect_attachments
148
+
149
+ # Vlan attachment type.
150
+ # Corresponds to the JSON property `interconnectType`
151
+ # @return [String]
152
+ attr_accessor :interconnect_type
153
+
154
+ # Interconnect circuit link type.
155
+ # Corresponds to the JSON property `linkType`
156
+ # @return [String]
157
+ attr_accessor :link_type
158
+
159
+ # An amount of usage over a time frame.
160
+ # Corresponds to the JSON property `provisionedLinkCount`
161
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
162
+ attr_accessor :provisioned_link_count
163
+
164
+ def initialize(**args)
165
+ update!(**args)
166
+ end
167
+
168
+ # Update properties of this object
169
+ def update!(**args)
170
+ @interconnect_attachments = args[:interconnect_attachments] if args.key?(:interconnect_attachments)
171
+ @interconnect_type = args[:interconnect_type] if args.key?(:interconnect_type)
172
+ @link_type = args[:link_type] if args.key?(:link_type)
173
+ @provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
174
+ end
175
+ end
176
+
177
+ # Specification of a network type. Network egress within Google Cloud applies
178
+ # when you move or copy data from one Cloud Storage bucket to another or when
179
+ # another Google Cloud service accesses data in your Cloud Storage bucket.This
180
+ # includes the network egress within Google Cloud and the general network usage.
181
+ class CloudStorageEgressWorkload
182
+ include Google::Apis::Core::Hashable
183
+
184
+ # Where the data is sent to.
185
+ # Corresponds to the JSON property `destinationContinent`
186
+ # @return [String]
187
+ attr_accessor :destination_continent
188
+
189
+ # An amount of usage over a time frame.
190
+ # Corresponds to the JSON property `egressRate`
191
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
192
+ attr_accessor :egress_rate
193
+
194
+ # Where the data comes from.
195
+ # Corresponds to the JSON property `sourceContinent`
196
+ # @return [String]
197
+ attr_accessor :source_continent
198
+
199
+ def initialize(**args)
200
+ update!(**args)
201
+ end
202
+
203
+ # Update properties of this object
204
+ def update!(**args)
205
+ @destination_continent = args[:destination_continent] if args.key?(:destination_continent)
206
+ @egress_rate = args[:egress_rate] if args.key?(:egress_rate)
207
+ @source_continent = args[:source_continent] if args.key?(:source_continent)
208
+ end
209
+ end
210
+
25
211
  # Specifies usage of Cloud Storage resources.
26
212
  class CloudStorageWorkload
27
213
  include Google::Apis::Core::Hashable
@@ -93,7 +279,7 @@ module Google
93
279
  include Google::Apis::Core::Hashable
94
280
 
95
281
  # Required. A name for this commitment. All commitments in a CostScenario must
96
- # have unique names. Each name must be a maximum of 32 characters.
282
+ # have unique names. Each name may be at most 128 characters long.
97
283
  # Corresponds to the JSON property `name`
98
284
  # @return [String]
99
285
  attr_accessor :name
@@ -522,6 +708,60 @@ module Google
522
708
  end
523
709
  end
524
710
 
711
+ # Egress traffic between two regions.
712
+ class InterRegionEgress
713
+ include Google::Apis::Core::Hashable
714
+
715
+ # Which [region](https://cloud.google.com/compute/docs/regions-zones) the egress
716
+ # data goes to.
717
+ # Corresponds to the JSON property `destinationRegion`
718
+ # @return [String]
719
+ attr_accessor :destination_region
720
+
721
+ # An amount of usage over a time frame.
722
+ # Corresponds to the JSON property `egressRate`
723
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
724
+ attr_accessor :egress_rate
725
+
726
+ # Which [region](https://cloud.google.com/compute/docs/regions-zones) the egress
727
+ # data comes from.
728
+ # Corresponds to the JSON property `sourceRegion`
729
+ # @return [String]
730
+ attr_accessor :source_region
731
+
732
+ def initialize(**args)
733
+ update!(**args)
734
+ end
735
+
736
+ # Update properties of this object
737
+ def update!(**args)
738
+ @destination_region = args[:destination_region] if args.key?(:destination_region)
739
+ @egress_rate = args[:egress_rate] if args.key?(:egress_rate)
740
+ @source_region = args[:source_region] if args.key?(:source_region)
741
+ end
742
+ end
743
+
744
+ # Egress traffic within the same region. When source region and destination
745
+ # region are in the same zone, using the internal IP addresses, there isn't any
746
+ # egress charge.
747
+ class IntraRegionEgress
748
+ include Google::Apis::Core::Hashable
749
+
750
+ # An amount of usage over a time frame.
751
+ # Corresponds to the JSON property `egressRate`
752
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
753
+ attr_accessor :egress_rate
754
+
755
+ def initialize(**args)
756
+ update!(**args)
757
+ end
758
+
759
+ # Update properties of this object
760
+ def update!(**args)
761
+ @egress_rate = args[:egress_rate] if args.key?(:egress_rate)
762
+ end
763
+ end
764
+
525
765
  # Specification of machine series, memory, and number of vCPUs.
526
766
  class MachineType
527
767
  include Google::Apis::Core::Hashable
@@ -661,6 +901,38 @@ module Google
661
901
  end
662
902
  end
663
903
 
904
+ # Specify Premium Tier Internet egress networking.
905
+ class PremiumTierEgressWorkload
906
+ include Google::Apis::Core::Hashable
907
+
908
+ # Where the data is sent to.
909
+ # Corresponds to the JSON property `destinationContinent`
910
+ # @return [String]
911
+ attr_accessor :destination_continent
912
+
913
+ # An amount of usage over a time frame.
914
+ # Corresponds to the JSON property `egressRate`
915
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
916
+ attr_accessor :egress_rate
917
+
918
+ # Which [region](https://cloud.google.com/compute/docs/regions-zones) the egress
919
+ # data comes from.
920
+ # Corresponds to the JSON property `sourceRegion`
921
+ # @return [String]
922
+ attr_accessor :source_region
923
+
924
+ def initialize(**args)
925
+ update!(**args)
926
+ end
927
+
928
+ # Update properties of this object
929
+ def update!(**args)
930
+ @destination_continent = args[:destination_continent] if args.key?(:destination_continent)
931
+ @egress_rate = args[:egress_rate] if args.key?(:egress_rate)
932
+ @source_region = args[:source_region] if args.key?(:source_region)
933
+ end
934
+ end
935
+
664
936
  # The price of a SKU at a point int time.
665
937
  class Price
666
938
  include Google::Apis::Core::Hashable
@@ -779,7 +1051,10 @@ module Google
779
1051
  # Time frame for the estimate. Workloads must specify usage for this duration.
780
1052
  # Duration must be at least 1 hour (3,600 seconds) and at most 10 years (315,360,
781
1053
  # 000 seconds). The calculations for years and months are based on a 730-hour (2,
782
- # 628,000-second) month.
1054
+ # 628,000-second) month. For durations longer than one month (2,628,000 seconds),
1055
+ # the duration is rounded up to the next month, so the estimate shows you the
1056
+ # costs for full months. For example, a duration of 3,232,800 seconds (roughly 5
1057
+ # weeks) is rounded up to 2 months.
783
1058
  # Corresponds to the JSON property `estimateDuration`
784
1059
  # @return [String]
785
1060
  attr_accessor :estimate_duration
@@ -904,6 +1179,32 @@ module Google
904
1179
  end
905
1180
  end
906
1181
 
1182
+ # Specify Standard Tier Internet egress networking.
1183
+ class StandardTierEgressWorkload
1184
+ include Google::Apis::Core::Hashable
1185
+
1186
+ # An amount of usage over a time frame.
1187
+ # Corresponds to the JSON property `egressRate`
1188
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
1189
+ attr_accessor :egress_rate
1190
+
1191
+ # Which [region](https://cloud.google.com/compute/docs/regions-zones) the egress
1192
+ # data comes from.
1193
+ # Corresponds to the JSON property `sourceRegion`
1194
+ # @return [String]
1195
+ attr_accessor :source_region
1196
+
1197
+ def initialize(**args)
1198
+ update!(**args)
1199
+ end
1200
+
1201
+ # Update properties of this object
1202
+ def update!(**args)
1203
+ @egress_rate = args[:egress_rate] if args.key?(:egress_rate)
1204
+ @source_region = args[:source_region] if args.key?(:source_region)
1205
+ end
1206
+ end
1207
+
907
1208
  # An amount of usage over a time frame.
908
1209
  class Usage
909
1210
  include Google::Apis::Core::Hashable
@@ -943,23 +1244,24 @@ module Google
943
1244
  class UsageRateTimeline
944
1245
  include Google::Apis::Core::Hashable
945
1246
 
946
- # The unit for the usage rate in each timeline entry. The supported units are a
947
- # subset of [The Unified Code for Units of Measure](https://ucum.org/ucum.html)
948
- # standard: * **Time units (TIME-UNIT)** * `s` second * `min` minute * `h` hour *
949
- # `d` day * `wk` week * `mo` month * `yr` year * `ms` millisecond * `us`
950
- # microsecond * `ns` nanosecond * **Basic storage units (BASIC-STORAGE-UNIT)** *
951
- # `bit` bit * `By` byte * **Count units (COUNT-UNIT)** * `count` count * **
952
- # Prefixes (PREFIX)** * `k` kilo (10^3) * `M` mega (10^6) * `G` giga (10^9) * `T`
953
- # tera (10^12) * `P` peta (10^15) * `Ki` kibi (2^10) * `Mi` mebi (2^20) * `Gi`
954
- # gibi (2^30) * `Ti` tebi (2^40) * `Pi` pebi (2^50) **Grammar** The grammar also
955
- # includes these connectors: * `/` division or ratio (as an infix operator). For
956
- # example: `kBy/`email`` or `MiBy/10ms`. * `.` multiplication or composition (as
957
- # an infix operator). For example: `GBy.d` or `k`watt`.h`. The grammar for a
958
- # unit is as follows: ``` Expression = Component ` "." Component ` ` "/"
959
- # Component ` ; Component = ( [ PREFIX ] UNIT | "%" ) [ Annotation ] |
960
- # Annotation | "1" ; UNIT = TIME-UNIT | STORAGE-UNIT | DATA-UNIT | COUNT-UNIT
961
- # Annotation = "`" NAME "`" ; ``` Examples: * Request per second: `1/s` or ``
962
- # requests`/s` * GibiBytes: `GiBy` * GibiBytes * seconds: `GiBy.s`
1247
+ # The unit for the usage rate in each timeline entry. If you provide an
1248
+ # incorrect unit for an instance, the correct unit is provided in the error
1249
+ # message. The supported units are a subset of [The Unified Code for Units of
1250
+ # Measure](https://ucum.org/ucum.html) standard: * **Time units (TIME-UNIT)** * `
1251
+ # s` second * `min` minute * `h` hour * `d` day * `wk` week * `mo` month * `yr`
1252
+ # year * `ms` millisecond * `us` microsecond * `ns` nanosecond * **Basic storage
1253
+ # units (BASIC-STORAGE-UNIT)** * `bit` bit * `By` byte * **Count units (COUNT-
1254
+ # UNIT)** * `count` count * **Prefixes (PREFIX)** * `k` kilo (10^3) * `M` mega (
1255
+ # 10^6) * `G` giga (10^9) * `T` tera (10^12) * `P` peta (10^15) * `Ki` kibi (2^
1256
+ # 10) * `Mi` mebi (2^20) * `Gi` gibi (2^30) * `Ti` tebi (2^40) * `Pi` pebi (2^50)
1257
+ # **Grammar** The grammar also includes these connectors: * `/` division or
1258
+ # ratio (as an infix operator). For example: `kBy/`email`` or `MiBy/10ms`. * `.`
1259
+ # multiplication or composition (as an infix operator). For example: `GBy.d` or `
1260
+ # k`watt`.h`. The grammar for a unit is as follows: ``` Expression = Component `
1261
+ # "." Component ` ` "/" Component ` ; Component = ( [ PREFIX ] UNIT | "%" ) [
1262
+ # Annotation ] | Annotation | "1" ; UNIT = TIME-UNIT | STORAGE-UNIT | DATA-UNIT |
1263
+ # COUNT-UNIT Annotation = "`" NAME "`" ; ``` Examples: * Request per second: `1/
1264
+ # s` or ``requests`/s` * GibiBytes: `GiBy` * GibiBytes * seconds: `GiBy.s`
963
1265
  # Corresponds to the JSON property `unit`
964
1266
  # @return [String]
965
1267
  attr_accessor :unit
@@ -1008,6 +1310,33 @@ module Google
1008
1310
  end
1009
1311
  end
1010
1312
 
1313
+ # VLAN attachment for cloud interconnect.
1314
+ class VlanAttachment
1315
+ include Google::Apis::Core::Hashable
1316
+
1317
+ # Capacities in the [pricing table](https://cloud.google.com/vpc/network-pricing#
1318
+ # interconnect-pricing) Examples of capacity are: 50/100/200/300/400/500-Mbps, 1/
1319
+ # 2/5/10/20/50-Gbps.
1320
+ # Corresponds to the JSON property `bandwidth`
1321
+ # @return [String]
1322
+ attr_accessor :bandwidth
1323
+
1324
+ # An amount of usage over a time frame.
1325
+ # Corresponds to the JSON property `vlanCount`
1326
+ # @return [Google::Apis::CloudbillingV1beta::Usage]
1327
+ attr_accessor :vlan_count
1328
+
1329
+ def initialize(**args)
1330
+ update!(**args)
1331
+ end
1332
+
1333
+ # Update properties of this object
1334
+ def update!(**args)
1335
+ @bandwidth = args[:bandwidth] if args.key?(:bandwidth)
1336
+ @vlan_count = args[:vlan_count] if args.key?(:vlan_count)
1337
+ end
1338
+ end
1339
+
1011
1340
  # Specifies a resource-based committed use discount (CUD).
1012
1341
  class VmResourceBasedCud
1013
1342
  include Google::Apis::Core::Hashable
@@ -1064,6 +1393,33 @@ module Google
1064
1393
  end
1065
1394
  end
1066
1395
 
1396
+ # Specify VM to VM egress.
1397
+ class VmToVmEgressWorkload
1398
+ include Google::Apis::Core::Hashable
1399
+
1400
+ # Egress traffic between two regions.
1401
+ # Corresponds to the JSON property `interRegionEgress`
1402
+ # @return [Google::Apis::CloudbillingV1beta::InterRegionEgress]
1403
+ attr_accessor :inter_region_egress
1404
+
1405
+ # Egress traffic within the same region. When source region and destination
1406
+ # region are in the same zone, using the internal IP addresses, there isn't any
1407
+ # egress charge.
1408
+ # Corresponds to the JSON property `intraRegionEgress`
1409
+ # @return [Google::Apis::CloudbillingV1beta::IntraRegionEgress]
1410
+ attr_accessor :intra_region_egress
1411
+
1412
+ def initialize(**args)
1413
+ update!(**args)
1414
+ end
1415
+
1416
+ # Update properties of this object
1417
+ def update!(**args)
1418
+ @inter_region_egress = args[:inter_region_egress] if args.key?(:inter_region_egress)
1419
+ @intra_region_egress = args[:intra_region_egress] if args.key?(:intra_region_egress)
1420
+ end
1421
+ end
1422
+
1067
1423
  # Specifies usage on a single Google Cloud product over a time frame. Each
1068
1424
  # Google Cloud product has its own message, containing specific product
1069
1425
  # configuration parameters of the product usage amounts along each dimension in
@@ -1071,6 +1427,35 @@ module Google
1071
1427
  class Workload
1072
1428
  include Google::Apis::Core::Hashable
1073
1429
 
1430
+ # Specifies usage for Cloud CDN egress.
1431
+ # Corresponds to the JSON property `cloudCdnEgressWorkload`
1432
+ # @return [Google::Apis::CloudbillingV1beta::CloudCdnEgressWorkload]
1433
+ attr_accessor :cloud_cdn_egress_workload
1434
+
1435
+ # Specifies usage for Cloud CDN resources.
1436
+ # Corresponds to the JSON property `cloudCdnWorkload`
1437
+ # @return [Google::Apis::CloudbillingV1beta::CloudCdnWorkload]
1438
+ attr_accessor :cloud_cdn_workload
1439
+
1440
+ # The interconnect egress only includes the Interconnect Egress. Please use the
1441
+ # standard egress traffic interface to specify your standard egress usage.
1442
+ # Corresponds to the JSON property `cloudInterconnectEgressWorkload`
1443
+ # @return [Google::Apis::CloudbillingV1beta::CloudInterconnectEgressWorkload]
1444
+ attr_accessor :cloud_interconnect_egress_workload
1445
+
1446
+ # Specifies usage for Cloud Interconnect resources.
1447
+ # Corresponds to the JSON property `cloudInterconnectWorkload`
1448
+ # @return [Google::Apis::CloudbillingV1beta::CloudInterconnectWorkload]
1449
+ attr_accessor :cloud_interconnect_workload
1450
+
1451
+ # Specification of a network type. Network egress within Google Cloud applies
1452
+ # when you move or copy data from one Cloud Storage bucket to another or when
1453
+ # another Google Cloud service accesses data in your Cloud Storage bucket.This
1454
+ # includes the network egress within Google Cloud and the general network usage.
1455
+ # Corresponds to the JSON property `cloudStorageEgressWorkload`
1456
+ # @return [Google::Apis::CloudbillingV1beta::CloudStorageEgressWorkload]
1457
+ attr_accessor :cloud_storage_egress_workload
1458
+
1074
1459
  # Specifies usage of Cloud Storage resources.
1075
1460
  # Corresponds to the JSON property `cloudStorageWorkload`
1076
1461
  # @return [Google::Apis::CloudbillingV1beta::CloudStorageWorkload]
@@ -1082,20 +1467,43 @@ module Google
1082
1467
  attr_accessor :compute_vm_workload
1083
1468
 
1084
1469
  # Required. A name for this workload. All workloads in a `CostScenario` must
1085
- # have a unique `name`. Each `name` must be a maximum of 32 characters.
1470
+ # have a unique `name`. Each `name` may be at most 128 characters long.
1086
1471
  # Corresponds to the JSON property `name`
1087
1472
  # @return [String]
1088
1473
  attr_accessor :name
1089
1474
 
1475
+ # Specify Premium Tier Internet egress networking.
1476
+ # Corresponds to the JSON property `premiumTierEgressWorkload`
1477
+ # @return [Google::Apis::CloudbillingV1beta::PremiumTierEgressWorkload]
1478
+ attr_accessor :premium_tier_egress_workload
1479
+
1480
+ # Specify Standard Tier Internet egress networking.
1481
+ # Corresponds to the JSON property `standardTierEgressWorkload`
1482
+ # @return [Google::Apis::CloudbillingV1beta::StandardTierEgressWorkload]
1483
+ attr_accessor :standard_tier_egress_workload
1484
+
1485
+ # Specify VM to VM egress.
1486
+ # Corresponds to the JSON property `vmToVmEgressWorkload`
1487
+ # @return [Google::Apis::CloudbillingV1beta::VmToVmEgressWorkload]
1488
+ attr_accessor :vm_to_vm_egress_workload
1489
+
1090
1490
  def initialize(**args)
1091
1491
  update!(**args)
1092
1492
  end
1093
1493
 
1094
1494
  # Update properties of this object
1095
1495
  def update!(**args)
1496
+ @cloud_cdn_egress_workload = args[:cloud_cdn_egress_workload] if args.key?(:cloud_cdn_egress_workload)
1497
+ @cloud_cdn_workload = args[:cloud_cdn_workload] if args.key?(:cloud_cdn_workload)
1498
+ @cloud_interconnect_egress_workload = args[:cloud_interconnect_egress_workload] if args.key?(:cloud_interconnect_egress_workload)
1499
+ @cloud_interconnect_workload = args[:cloud_interconnect_workload] if args.key?(:cloud_interconnect_workload)
1500
+ @cloud_storage_egress_workload = args[:cloud_storage_egress_workload] if args.key?(:cloud_storage_egress_workload)
1096
1501
  @cloud_storage_workload = args[:cloud_storage_workload] if args.key?(:cloud_storage_workload)
1097
1502
  @compute_vm_workload = args[:compute_vm_workload] if args.key?(:compute_vm_workload)
1098
1503
  @name = args[:name] if args.key?(:name)
1504
+ @premium_tier_egress_workload = args[:premium_tier_egress_workload] if args.key?(:premium_tier_egress_workload)
1505
+ @standard_tier_egress_workload = args[:standard_tier_egress_workload] if args.key?(:standard_tier_egress_workload)
1506
+ @vm_to_vm_egress_workload = args[:vm_to_vm_egress_workload] if args.key?(:vm_to_vm_egress_workload)
1099
1507
  end
1100
1508
  end
1101
1509
 
@@ -16,13 +16,13 @@ module Google
16
16
  module Apis
17
17
  module CloudbillingV1beta
18
18
  # Version of the google-apis-cloudbilling_v1beta gem
19
- GEM_VERSION = "0.2.0"
19
+ GEM_VERSION = "0.4.0"
20
20
 
21
21
  # Version of the code generator used to generate this client
22
- GENERATOR_VERSION = "0.11.0"
22
+ GENERATOR_VERSION = "0.11.1"
23
23
 
24
24
  # Revision of the discovery document this client was generated from
25
- REVISION = "20220908"
25
+ REVISION = "20230130"
26
26
  end
27
27
  end
28
28
  end
@@ -22,6 +22,42 @@ module Google
22
22
  module Apis
23
23
  module CloudbillingV1beta
24
24
 
25
+ class CacheFillRegions
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class CloudCdnEgressWorkload
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class CloudCdnWorkload
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
43
+ class CloudInterconnectEgressWorkload
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class CloudInterconnectWorkload
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class CloudStorageEgressWorkload
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ include Google::Apis::Core::JsonObjectSupport
59
+ end
60
+
25
61
  class CloudStorageWorkload
26
62
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
63
 
@@ -118,6 +154,18 @@ module Google
118
154
  include Google::Apis::Core::JsonObjectSupport
119
155
  end
120
156
 
157
+ class InterRegionEgress
158
+ class Representation < Google::Apis::Core::JsonRepresentation; end
159
+
160
+ include Google::Apis::Core::JsonObjectSupport
161
+ end
162
+
163
+ class IntraRegionEgress
164
+ class Representation < Google::Apis::Core::JsonRepresentation; end
165
+
166
+ include Google::Apis::Core::JsonObjectSupport
167
+ end
168
+
121
169
  class MachineType
122
170
  class Representation < Google::Apis::Core::JsonRepresentation; end
123
171
 
@@ -148,6 +196,12 @@ module Google
148
196
  include Google::Apis::Core::JsonObjectSupport
149
197
  end
150
198
 
199
+ class PremiumTierEgressWorkload
200
+ class Representation < Google::Apis::Core::JsonRepresentation; end
201
+
202
+ include Google::Apis::Core::JsonObjectSupport
203
+ end
204
+
151
205
  class Price
152
206
  class Representation < Google::Apis::Core::JsonRepresentation; end
153
207
 
@@ -196,6 +250,12 @@ module Google
196
250
  include Google::Apis::Core::JsonObjectSupport
197
251
  end
198
252
 
253
+ class StandardTierEgressWorkload
254
+ class Representation < Google::Apis::Core::JsonRepresentation; end
255
+
256
+ include Google::Apis::Core::JsonObjectSupport
257
+ end
258
+
199
259
  class Usage
200
260
  class Representation < Google::Apis::Core::JsonRepresentation; end
201
261
 
@@ -214,12 +274,24 @@ module Google
214
274
  include Google::Apis::Core::JsonObjectSupport
215
275
  end
216
276
 
277
+ class VlanAttachment
278
+ class Representation < Google::Apis::Core::JsonRepresentation; end
279
+
280
+ include Google::Apis::Core::JsonObjectSupport
281
+ end
282
+
217
283
  class VmResourceBasedCud
218
284
  class Representation < Google::Apis::Core::JsonRepresentation; end
219
285
 
220
286
  include Google::Apis::Core::JsonObjectSupport
221
287
  end
222
288
 
289
+ class VmToVmEgressWorkload
290
+ class Representation < Google::Apis::Core::JsonRepresentation; end
291
+
292
+ include Google::Apis::Core::JsonObjectSupport
293
+ end
294
+
223
295
  class Workload
224
296
  class Representation < Google::Apis::Core::JsonRepresentation; end
225
297
 
@@ -232,6 +304,67 @@ module Google
232
304
  include Google::Apis::Core::JsonObjectSupport
233
305
  end
234
306
 
307
+ class CacheFillRegions
308
+ # @private
309
+ class Representation < Google::Apis::Core::JsonRepresentation
310
+ property :destination_region, as: 'destinationRegion'
311
+ property :source_region, as: 'sourceRegion'
312
+ end
313
+ end
314
+
315
+ class CloudCdnEgressWorkload
316
+ # @private
317
+ class Representation < Google::Apis::Core::JsonRepresentation
318
+ property :cache_egress_destination, as: 'cacheEgressDestination'
319
+ property :cache_egress_rate, as: 'cacheEgressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
320
+
321
+ end
322
+ end
323
+
324
+ class CloudCdnWorkload
325
+ # @private
326
+ class Representation < Google::Apis::Core::JsonRepresentation
327
+ property :cache_fill_origin_service, as: 'cacheFillOriginService'
328
+ property :cache_fill_rate, as: 'cacheFillRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
329
+
330
+ property :cache_fill_regions, as: 'cacheFillRegions', class: Google::Apis::CloudbillingV1beta::CacheFillRegions, decorator: Google::Apis::CloudbillingV1beta::CacheFillRegions::Representation
331
+
332
+ property :cache_look_up_rate, as: 'cacheLookUpRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
333
+
334
+ end
335
+ end
336
+
337
+ class CloudInterconnectEgressWorkload
338
+ # @private
339
+ class Representation < Google::Apis::Core::JsonRepresentation
340
+ property :egress_rate, as: 'egressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
341
+
342
+ property :interconnect_connection_location, as: 'interconnectConnectionLocation'
343
+ end
344
+ end
345
+
346
+ class CloudInterconnectWorkload
347
+ # @private
348
+ class Representation < Google::Apis::Core::JsonRepresentation
349
+ collection :interconnect_attachments, as: 'interconnectAttachments', class: Google::Apis::CloudbillingV1beta::VlanAttachment, decorator: Google::Apis::CloudbillingV1beta::VlanAttachment::Representation
350
+
351
+ property :interconnect_type, as: 'interconnectType'
352
+ property :link_type, as: 'linkType'
353
+ property :provisioned_link_count, as: 'provisionedLinkCount', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
354
+
355
+ end
356
+ end
357
+
358
+ class CloudStorageEgressWorkload
359
+ # @private
360
+ class Representation < Google::Apis::Core::JsonRepresentation
361
+ property :destination_continent, as: 'destinationContinent'
362
+ property :egress_rate, as: 'egressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
363
+
364
+ property :source_continent, as: 'sourceContinent'
365
+ end
366
+ end
367
+
235
368
  class CloudStorageWorkload
236
369
  # @private
237
370
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -399,6 +532,24 @@ module Google
399
532
  end
400
533
  end
401
534
 
535
+ class InterRegionEgress
536
+ # @private
537
+ class Representation < Google::Apis::Core::JsonRepresentation
538
+ property :destination_region, as: 'destinationRegion'
539
+ property :egress_rate, as: 'egressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
540
+
541
+ property :source_region, as: 'sourceRegion'
542
+ end
543
+ end
544
+
545
+ class IntraRegionEgress
546
+ # @private
547
+ class Representation < Google::Apis::Core::JsonRepresentation
548
+ property :egress_rate, as: 'egressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
549
+
550
+ end
551
+ end
552
+
402
553
  class MachineType
403
554
  # @private
404
555
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -444,6 +595,16 @@ module Google
444
595
  end
445
596
  end
446
597
 
598
+ class PremiumTierEgressWorkload
599
+ # @private
600
+ class Representation < Google::Apis::Core::JsonRepresentation
601
+ property :destination_continent, as: 'destinationContinent'
602
+ property :egress_rate, as: 'egressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
603
+
604
+ property :source_region, as: 'sourceRegion'
605
+ end
606
+ end
607
+
447
608
  class Price
448
609
  # @private
449
610
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -523,6 +684,15 @@ module Google
523
684
  end
524
685
  end
525
686
 
687
+ class StandardTierEgressWorkload
688
+ # @private
689
+ class Representation < Google::Apis::Core::JsonRepresentation
690
+ property :egress_rate, as: 'egressRate', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
691
+
692
+ property :source_region, as: 'sourceRegion'
693
+ end
694
+ end
695
+
526
696
  class Usage
527
697
  # @private
528
698
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -549,6 +719,15 @@ module Google
549
719
  end
550
720
  end
551
721
 
722
+ class VlanAttachment
723
+ # @private
724
+ class Representation < Google::Apis::Core::JsonRepresentation
725
+ property :bandwidth, as: 'bandwidth'
726
+ property :vlan_count, as: 'vlanCount', class: Google::Apis::CloudbillingV1beta::Usage, decorator: Google::Apis::CloudbillingV1beta::Usage::Representation
727
+
728
+ end
729
+ end
730
+
552
731
  class VmResourceBasedCud
553
732
  # @private
554
733
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -562,14 +741,40 @@ module Google
562
741
  end
563
742
  end
564
743
 
744
+ class VmToVmEgressWorkload
745
+ # @private
746
+ class Representation < Google::Apis::Core::JsonRepresentation
747
+ property :inter_region_egress, as: 'interRegionEgress', class: Google::Apis::CloudbillingV1beta::InterRegionEgress, decorator: Google::Apis::CloudbillingV1beta::InterRegionEgress::Representation
748
+
749
+ property :intra_region_egress, as: 'intraRegionEgress', class: Google::Apis::CloudbillingV1beta::IntraRegionEgress, decorator: Google::Apis::CloudbillingV1beta::IntraRegionEgress::Representation
750
+
751
+ end
752
+ end
753
+
565
754
  class Workload
566
755
  # @private
567
756
  class Representation < Google::Apis::Core::JsonRepresentation
757
+ property :cloud_cdn_egress_workload, as: 'cloudCdnEgressWorkload', class: Google::Apis::CloudbillingV1beta::CloudCdnEgressWorkload, decorator: Google::Apis::CloudbillingV1beta::CloudCdnEgressWorkload::Representation
758
+
759
+ property :cloud_cdn_workload, as: 'cloudCdnWorkload', class: Google::Apis::CloudbillingV1beta::CloudCdnWorkload, decorator: Google::Apis::CloudbillingV1beta::CloudCdnWorkload::Representation
760
+
761
+ property :cloud_interconnect_egress_workload, as: 'cloudInterconnectEgressWorkload', class: Google::Apis::CloudbillingV1beta::CloudInterconnectEgressWorkload, decorator: Google::Apis::CloudbillingV1beta::CloudInterconnectEgressWorkload::Representation
762
+
763
+ property :cloud_interconnect_workload, as: 'cloudInterconnectWorkload', class: Google::Apis::CloudbillingV1beta::CloudInterconnectWorkload, decorator: Google::Apis::CloudbillingV1beta::CloudInterconnectWorkload::Representation
764
+
765
+ property :cloud_storage_egress_workload, as: 'cloudStorageEgressWorkload', class: Google::Apis::CloudbillingV1beta::CloudStorageEgressWorkload, decorator: Google::Apis::CloudbillingV1beta::CloudStorageEgressWorkload::Representation
766
+
568
767
  property :cloud_storage_workload, as: 'cloudStorageWorkload', class: Google::Apis::CloudbillingV1beta::CloudStorageWorkload, decorator: Google::Apis::CloudbillingV1beta::CloudStorageWorkload::Representation
569
768
 
570
769
  property :compute_vm_workload, as: 'computeVmWorkload', class: Google::Apis::CloudbillingV1beta::ComputeVmWorkload, decorator: Google::Apis::CloudbillingV1beta::ComputeVmWorkload::Representation
571
770
 
572
771
  property :name, as: 'name'
772
+ property :premium_tier_egress_workload, as: 'premiumTierEgressWorkload', class: Google::Apis::CloudbillingV1beta::PremiumTierEgressWorkload, decorator: Google::Apis::CloudbillingV1beta::PremiumTierEgressWorkload::Representation
773
+
774
+ property :standard_tier_egress_workload, as: 'standardTierEgressWorkload', class: Google::Apis::CloudbillingV1beta::StandardTierEgressWorkload, decorator: Google::Apis::CloudbillingV1beta::StandardTierEgressWorkload::Representation
775
+
776
+ property :vm_to_vm_egress_workload, as: 'vmToVmEgressWorkload', class: Google::Apis::CloudbillingV1beta::VmToVmEgressWorkload, decorator: Google::Apis::CloudbillingV1beta::VmToVmEgressWorkload::Representation
777
+
573
778
  end
574
779
  end
575
780
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-apis-cloudbilling_v1beta
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-21 00:00:00.000000000 Z
11
+ date: 2023-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: google-apis-core
@@ -58,7 +58,7 @@ licenses:
58
58
  metadata:
59
59
  bug_tracker_uri: https://github.com/googleapis/google-api-ruby-client/issues
60
60
  changelog_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudbilling_v1beta/CHANGELOG.md
61
- documentation_uri: https://googleapis.dev/ruby/google-apis-cloudbilling_v1beta/v0.2.0
61
+ documentation_uri: https://googleapis.dev/ruby/google-apis-cloudbilling_v1beta/v0.4.0
62
62
  source_code_uri: https://github.com/googleapis/google-api-ruby-client/tree/main/generated/google-apis-cloudbilling_v1beta
63
63
  post_install_message:
64
64
  rdoc_options: []
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
- rubygems_version: 3.3.14
78
+ rubygems_version: 3.4.2
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: Simple REST client for Cloud Billing API V1beta