google-apis-cloudbilling_v1beta 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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