google-api-client 0.9.19 → 0.9.20

Sign up to get free protection for your applications and to get access to all the features.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +5 -1
  3. data/api_names.yaml +2 -0
  4. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  5. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +20 -3
  7. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +2 -0
  8. data/generated/google/apis/admin_directory_v1.rb +1 -1
  9. data/generated/google/apis/adsense_v1_4.rb +1 -1
  10. data/generated/google/apis/adsense_v1_4/classes.rb +1 -1
  11. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  12. data/generated/google/apis/adsensehost_v4_1/classes.rb +1 -2
  13. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  14. data/generated/google/apis/androidenterprise_v1/classes.rb +9 -7
  15. data/generated/google/apis/androidenterprise_v1/service.rb +7 -1
  16. data/generated/google/apis/appengine_v1beta5.rb +7 -1
  17. data/generated/google/apis/appengine_v1beta5/classes.rb +86 -25
  18. data/generated/google/apis/appengine_v1beta5/representations.rb +31 -12
  19. data/generated/google/apis/appengine_v1beta5/service.rb +33 -33
  20. data/generated/google/apis/appsactivity_v1.rb +1 -1
  21. data/generated/google/apis/appsactivity_v1/classes.rb +7 -0
  22. data/generated/google/apis/appsactivity_v1/representations.rb +1 -0
  23. data/generated/google/apis/appstate_v1.rb +1 -1
  24. data/generated/google/apis/bigquery_v2.rb +1 -1
  25. data/generated/google/apis/bigquery_v2/classes.rb +27 -18
  26. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  27. data/generated/google/apis/calendar_v3.rb +1 -1
  28. data/generated/google/apis/civicinfo_v2.rb +1 -1
  29. data/generated/google/apis/civicinfo_v2/classes.rb +243 -0
  30. data/generated/google/apis/civicinfo_v2/representations.rb +64 -0
  31. data/generated/google/apis/classroom_v1/service.rb +1 -1
  32. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  33. data/generated/google/apis/cloudbuild_v1/classes.rb +8 -0
  34. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  35. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  36. data/generated/google/apis/compute_beta.rb +1 -1
  37. data/generated/google/apis/compute_beta/classes.rb +443 -13
  38. data/generated/google/apis/compute_beta/representations.rb +155 -0
  39. data/generated/google/apis/compute_beta/service.rb +383 -2
  40. data/generated/google/apis/compute_v1.rb +1 -1
  41. data/generated/google/apis/compute_v1/classes.rb +43 -13
  42. data/generated/google/apis/compute_v1/representations.rb +13 -0
  43. data/generated/google/apis/compute_v1/service.rb +89 -1
  44. data/generated/google/apis/content_v2.rb +1 -1
  45. data/generated/google/apis/content_v2/classes.rb +48 -0
  46. data/generated/google/apis/content_v2/representations.rb +18 -0
  47. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  48. data/generated/google/apis/dataflow_v1b3/classes.rb +44 -0
  49. data/generated/google/apis/dataflow_v1b3/representations.rb +18 -0
  50. data/generated/google/apis/dataflow_v1b3/service.rb +367 -7
  51. data/generated/google/apis/dataproc_v1.rb +2 -2
  52. data/generated/google/apis/dataproc_v1/classes.rb +213 -68
  53. data/generated/google/apis/dataproc_v1/representations.rb +38 -0
  54. data/generated/google/apis/dataproc_v1/service.rb +78 -48
  55. data/generated/google/apis/datastore_v1.rb +1 -1
  56. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  57. data/generated/google/apis/deploymentmanager_v2/classes.rb +3 -3
  58. data/generated/google/apis/deploymentmanager_v2/service.rb +55 -5
  59. data/generated/google/apis/dfareporting_v2_6.rb +1 -1
  60. data/generated/google/apis/dfareporting_v2_6/classes.rb +4 -3
  61. data/generated/google/apis/dfareporting_v2_6/service.rb +48 -29
  62. data/generated/google/apis/dns_v1.rb +1 -1
  63. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  64. data/generated/google/apis/drive_v2.rb +1 -1
  65. data/generated/google/apis/drive_v2/classes.rb +7 -0
  66. data/generated/google/apis/drive_v2/representations.rb +1 -0
  67. data/generated/google/apis/drive_v3.rb +1 -1
  68. data/generated/google/apis/drive_v3/classes.rb +7 -0
  69. data/generated/google/apis/drive_v3/representations.rb +1 -0
  70. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  71. data/generated/google/apis/games_management_v1management.rb +1 -1
  72. data/generated/google/apis/games_v1.rb +1 -1
  73. data/generated/google/apis/genomics_v1.rb +1 -1
  74. data/generated/google/apis/genomics_v1/classes.rb +9 -2
  75. data/generated/google/apis/genomics_v1/representations.rb +1 -0
  76. data/generated/google/apis/genomics_v1/service.rb +2 -1
  77. data/generated/google/apis/gmail_v1.rb +4 -1
  78. data/generated/google/apis/gmail_v1/classes.rb +8 -10
  79. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  80. data/generated/google/apis/identitytoolkit_v3/classes.rb +39 -6
  81. data/generated/google/apis/identitytoolkit_v3/representations.rb +6 -1
  82. data/generated/google/apis/language_v1beta1.rb +1 -1
  83. data/generated/google/apis/language_v1beta1/classes.rb +3 -2
  84. data/generated/google/apis/language_v1beta1/service.rb +2 -2
  85. data/generated/google/apis/logging_v2beta1.rb +1 -1
  86. data/generated/google/apis/logging_v2beta1/classes.rb +22 -18
  87. data/generated/google/apis/logging_v2beta1/service.rb +17 -3
  88. data/generated/google/apis/monitoring_v3.rb +1 -1
  89. data/generated/google/apis/monitoring_v3/classes.rb +26 -24
  90. data/generated/google/apis/oauth2_v2.rb +1 -1
  91. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  92. data/generated/google/apis/plus_domains_v1.rb +1 -1
  93. data/generated/google/apis/plus_v1.rb +1 -1
  94. data/generated/google/apis/sheets_v4.rb +1 -1
  95. data/generated/google/apis/sheets_v4/classes.rb +771 -75
  96. data/generated/google/apis/sheets_v4/representations.rb +125 -10
  97. data/generated/google/apis/sheets_v4/service.rb +39 -2
  98. data/generated/google/apis/slides_v1.rb +49 -0
  99. data/generated/google/apis/slides_v1/classes.rb +3926 -0
  100. data/generated/google/apis/slides_v1/representations.rb +1722 -0
  101. data/generated/google/apis/slides_v1/service.rb +202 -0
  102. data/generated/google/apis/speech_v1beta1.rb +1 -1
  103. data/generated/google/apis/speech_v1beta1/service.rb +25 -25
  104. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  105. data/generated/google/apis/storage_v1.rb +1 -1
  106. data/generated/google/apis/vision_v1.rb +1 -1
  107. data/generated/google/apis/vision_v1/classes.rb +2 -2
  108. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  109. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  110. data/generated/google/apis/youtube_v3.rb +1 -1
  111. data/generated/google/apis/youtube_v3/classes.rb +20 -19
  112. data/generated/google/apis/youtube_v3/representations.rb +3 -4
  113. data/generated/google/apis/youtube_v3/service.rb +35 -3
  114. data/lib/google/apis/version.rb +1 -1
  115. metadata +6 -2
@@ -136,6 +136,12 @@ module Google
136
136
  include Google::Apis::Core::JsonObjectSupport
137
137
  end
138
138
 
139
+ class PostalAddress
140
+ class Representation < Google::Apis::Core::JsonRepresentation; end
141
+
142
+ include Google::Apis::Core::JsonObjectSupport
143
+ end
144
+
139
145
  class RepresentativeInfoData
140
146
  class Representation < Google::Apis::Core::JsonRepresentation; end
141
147
 
@@ -178,6 +184,12 @@ module Google
178
184
  include Google::Apis::Core::JsonObjectSupport
179
185
  end
180
186
 
187
+ class VoterInfoSegmentResult
188
+ class Representation < Google::Apis::Core::JsonRepresentation; end
189
+
190
+ include Google::Apis::Core::JsonObjectSupport
191
+ end
192
+
181
193
  class AdministrationRegion
182
194
  # @private
183
195
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -415,6 +427,43 @@ module Google
415
427
  end
416
428
  end
417
429
 
430
+ class PostalAddress
431
+ # @private
432
+ class Representation < Google::Apis::Core::JsonRepresentation
433
+ collection :address_lines, as: 'addressLines'
434
+ property :administrative_area_name, as: 'administrativeAreaName'
435
+ property :country_name, as: 'countryName'
436
+ property :country_name_code, as: 'countryNameCode'
437
+ property :dependent_locality_name, as: 'dependentLocalityName'
438
+ property :dependent_thoroughfare_leading_type, as: 'dependentThoroughfareLeadingType'
439
+ property :dependent_thoroughfare_name, as: 'dependentThoroughfareName'
440
+ property :dependent_thoroughfare_post_direction, as: 'dependentThoroughfarePostDirection'
441
+ property :dependent_thoroughfare_pre_direction, as: 'dependentThoroughfarePreDirection'
442
+ property :dependent_thoroughfare_trailing_type, as: 'dependentThoroughfareTrailingType'
443
+ property :dependent_thoroughfares_connector, as: 'dependentThoroughfaresConnector'
444
+ property :dependent_thoroughfares_indicator, as: 'dependentThoroughfaresIndicator'
445
+ property :dependent_thoroughfares_type, as: 'dependentThoroughfaresType'
446
+ property :firm_name, as: 'firmName'
447
+ property :is_disputed, as: 'isDisputed'
448
+ property :language_code, as: 'languageCode'
449
+ property :locality_name, as: 'localityName'
450
+ property :post_box_number, as: 'postBoxNumber'
451
+ property :postal_code_number, as: 'postalCodeNumber'
452
+ property :postal_code_number_extension, as: 'postalCodeNumberExtension'
453
+ property :premise_name, as: 'premiseName'
454
+ property :recipient_name, as: 'recipientName'
455
+ property :sorting_code, as: 'sortingCode'
456
+ property :sub_administrative_area_name, as: 'subAdministrativeAreaName'
457
+ property :sub_premise_name, as: 'subPremiseName'
458
+ property :thoroughfare_leading_type, as: 'thoroughfareLeadingType'
459
+ property :thoroughfare_name, as: 'thoroughfareName'
460
+ property :thoroughfare_number, as: 'thoroughfareNumber'
461
+ property :thoroughfare_post_direction, as: 'thoroughfarePostDirection'
462
+ property :thoroughfare_pre_direction, as: 'thoroughfarePreDirection'
463
+ property :thoroughfare_trailing_type, as: 'thoroughfareTrailingType'
464
+ end
465
+ end
466
+
418
467
  class RepresentativeInfoData
419
468
  # @private
420
469
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -476,6 +525,8 @@ module Google
476
525
  class Representation < Google::Apis::Core::JsonRepresentation
477
526
  property :context_params, as: 'contextParams', class: Google::Apis::CivicinfoV2::ContextParams, decorator: Google::Apis::CivicinfoV2::ContextParams::Representation
478
527
 
528
+ property :voter_info_segment_result, as: 'voterInfoSegmentResult', class: Google::Apis::CivicinfoV2::VoterInfoSegmentResult, decorator: Google::Apis::CivicinfoV2::VoterInfoSegmentResult::Representation
529
+
479
530
  end
480
531
  end
481
532
 
@@ -503,6 +554,19 @@ module Google
503
554
 
504
555
  end
505
556
  end
557
+
558
+ class VoterInfoSegmentResult
559
+ # @private
560
+ class Representation < Google::Apis::Core::JsonRepresentation
561
+ property :generated_millis, as: 'generatedMillis'
562
+ property :postal_address, as: 'postalAddress', class: Google::Apis::CivicinfoV2::PostalAddress, decorator: Google::Apis::CivicinfoV2::PostalAddress::Representation
563
+
564
+ property :request, as: 'request', class: Google::Apis::CivicinfoV2::VoterInfoRequest, decorator: Google::Apis::CivicinfoV2::VoterInfoRequest::Representation
565
+
566
+ property :response, as: 'response', class: Google::Apis::CivicinfoV2::VoterInfoResponse, decorator: Google::Apis::CivicinfoV2::VoterInfoResponse::Representation
567
+
568
+ end
569
+ end
506
570
  end
507
571
  end
508
572
  end
@@ -43,7 +43,7 @@ module Google
43
43
  attr_accessor :quota_user
44
44
 
45
45
  def initialize
46
- super('https://prod-day0-classroom.sandbox.googleapis.com/', '')
46
+ super('https://classroom.googleapis.com/', '')
47
47
  end
48
48
 
49
49
  # Creates a course. The user specified in `ownerId` is the owner of the created
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/container-builder/docs/
26
26
  module CloudbuildV1
27
27
  VERSION = 'V1'
28
- REVISION = '20161020'
28
+ REVISION = '20161108'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -582,6 +582,13 @@ module Google
582
582
  # @return [String]
583
583
  attr_accessor :start_time
584
584
 
585
+ # The ID of the BuildTrigger that triggered this build, if it was
586
+ # triggered automatically.
587
+ # @OutputOnly
588
+ # Corresponds to the JSON property `buildTriggerId`
589
+ # @return [String]
590
+ attr_accessor :build_trigger_id
591
+
585
592
  # Google Cloud Storage bucket where logs should be written (see
586
593
  # [Bucket Name
587
594
  # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)
@@ -617,6 +624,7 @@ module Google
617
624
  @status_detail = args[:status_detail] if args.key?(:status_detail)
618
625
  @images = args[:images] if args.key?(:images)
619
626
  @start_time = args[:start_time] if args.key?(:start_time)
627
+ @build_trigger_id = args[:build_trigger_id] if args.key?(:build_trigger_id)
620
628
  @logs_bucket = args[:logs_bucket] if args.key?(:logs_bucket)
621
629
  @project_id = args[:project_id] if args.key?(:project_id)
622
630
  end
@@ -264,6 +264,7 @@ module Google
264
264
  property :status_detail, as: 'statusDetail'
265
265
  collection :images, as: 'images'
266
266
  property :start_time, as: 'startTime'
267
+ property :build_trigger_id, as: 'buildTriggerId'
267
268
  property :logs_bucket, as: 'logsBucket'
268
269
  property :project_id, as: 'projectId'
269
270
  end
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/monitoring/v2beta2/
26
26
  module CloudmonitoringV2beta2
27
27
  VERSION = 'V2beta2'
28
- REVISION = '20160718'
28
+ REVISION = '20161031'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://developers.google.com/compute/docs/reference/latest/
26
26
  module ComputeBeta
27
27
  VERSION = 'Beta'
28
- REVISION = '20161012'
28
+ REVISION = '20161019'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -415,8 +415,12 @@ module Google
415
415
  attr_accessor :mode
416
416
 
417
417
  # Specifies a valid partial or full URL to an existing Persistent Disk resource.
418
- # This field is only applicable for persistent disks. Note that for
419
- # InstanceTemplate, it is just disk name, not URL for the disk.
418
+ # When creating a new instance, one of initializeParams.sourceImage or disks.
419
+ # source is required.
420
+ # If desired, you can also attach existing non-root persistent disks using this
421
+ # property. This field is only applicable for persistent disks.
422
+ # Note that for InstanceTemplate, specify the disk name, not the URL for the
423
+ # disk.
420
424
  # Corresponds to the JSON property `source`
421
425
  # @return [String]
422
426
  attr_accessor :source
@@ -488,8 +492,8 @@ module Google
488
492
  # @return [String]
489
493
  attr_accessor :disk_type
490
494
 
491
- # The source image used to create this disk. If the source image is deleted,
492
- # this field will not be set.
495
+ # The source image to create this disk. When creating a new instance, one of
496
+ # initializeParams.sourceImage or disks.source is required.
493
497
  # To create a disk with one of the public operating system images, specify the
494
498
  # image by its family name. For example, specify family/debian-8 to use the
495
499
  # latest Debian 8 image:
@@ -503,6 +507,7 @@ module Google
503
507
  # latest version of the image in that family. Replace the image name with family/
504
508
  # family-name:
505
509
  # global/images/family/my-private-family
510
+ # If the source image is deleted later, this field will not be set.
506
511
  # Corresponds to the JSON property `sourceImage`
507
512
  # @return [String]
508
513
  attr_accessor :source_image
@@ -527,6 +532,35 @@ module Google
527
532
  end
528
533
  end
529
534
 
535
+ # Enables "data access" audit logging for a service and specifies a list of
536
+ # members that are log-exempted.
537
+ class AuditConfig
538
+ include Google::Apis::Core::Hashable
539
+
540
+ # Specifies the identities that are exempted from "data access" audit logging
541
+ # for the `service` specified above. Follows the same format of Binding.members.
542
+ # Corresponds to the JSON property `exemptedMembers`
543
+ # @return [Array<String>]
544
+ attr_accessor :exempted_members
545
+
546
+ # Specifies a service that will be enabled for "data access" audit logging. For
547
+ # example, `resourcemanager`, `storage`, `compute`. `allServices` is a special
548
+ # value that covers all services.
549
+ # Corresponds to the JSON property `service`
550
+ # @return [String]
551
+ attr_accessor :service
552
+
553
+ def initialize(**args)
554
+ update!(**args)
555
+ end
556
+
557
+ # Update properties of this object
558
+ def update!(**args)
559
+ @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
560
+ @service = args[:service] if args.key?(:service)
561
+ end
562
+ end
563
+
530
564
  # Represents an Autoscaler resource. Autoscalers allow you to automatically
531
565
  # scale virtual machine instances in managed instance groups according to an
532
566
  # autoscaling policy that you define. For more information, read Autoscaling
@@ -1092,6 +1126,117 @@ module Google
1092
1126
  end
1093
1127
  end
1094
1128
 
1129
+ # A BackendBucket resource. This resource defines a Cloud Storage bucket.
1130
+ class BackendBucket
1131
+ include Google::Apis::Core::Hashable
1132
+
1133
+ # Cloud Storage bucket name.
1134
+ # Corresponds to the JSON property `bucketName`
1135
+ # @return [String]
1136
+ attr_accessor :bucket_name
1137
+
1138
+ # [Output Only] Creation timestamp in RFC3339 text format.
1139
+ # Corresponds to the JSON property `creationTimestamp`
1140
+ # @return [String]
1141
+ attr_accessor :creation_timestamp
1142
+
1143
+ # An optional textual description of the resource; provided by the client when
1144
+ # the resource is created.
1145
+ # Corresponds to the JSON property `description`
1146
+ # @return [String]
1147
+ attr_accessor :description
1148
+
1149
+ # If true, enable Cloud CDN for this BackendBucket.
1150
+ # Corresponds to the JSON property `enableCdn`
1151
+ # @return [Boolean]
1152
+ attr_accessor :enable_cdn
1153
+ alias_method :enable_cdn?, :enable_cdn
1154
+
1155
+ # [Output Only] Unique identifier for the resource; defined by the server.
1156
+ # Corresponds to the JSON property `id`
1157
+ # @return [String]
1158
+ attr_accessor :id
1159
+
1160
+ # Type of the resource.
1161
+ # Corresponds to the JSON property `kind`
1162
+ # @return [String]
1163
+ attr_accessor :kind
1164
+
1165
+ # Name of the resource. Provided by the client when the resource is created. The
1166
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
1167
+ # name must be 1-63 characters long and match the regular expression [a-z]([-a-
1168
+ # z0-9]*[a-z0-9])? which means the first character must be a lowercase letter,
1169
+ # and all following characters must be a dash, lowercase letter, or digit,
1170
+ # except the last character, which cannot be a dash.
1171
+ # Corresponds to the JSON property `name`
1172
+ # @return [String]
1173
+ attr_accessor :name
1174
+
1175
+ # [Output Only] Server-defined URL for the resource.
1176
+ # Corresponds to the JSON property `selfLink`
1177
+ # @return [String]
1178
+ attr_accessor :self_link
1179
+
1180
+ def initialize(**args)
1181
+ update!(**args)
1182
+ end
1183
+
1184
+ # Update properties of this object
1185
+ def update!(**args)
1186
+ @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
1187
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
1188
+ @description = args[:description] if args.key?(:description)
1189
+ @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
1190
+ @id = args[:id] if args.key?(:id)
1191
+ @kind = args[:kind] if args.key?(:kind)
1192
+ @name = args[:name] if args.key?(:name)
1193
+ @self_link = args[:self_link] if args.key?(:self_link)
1194
+ end
1195
+ end
1196
+
1197
+ # Contains a list of BackendBucket resources.
1198
+ class BackendBucketList
1199
+ include Google::Apis::Core::Hashable
1200
+
1201
+ # [Output Only] Unique identifier for the resource; defined by the server.
1202
+ # Corresponds to the JSON property `id`
1203
+ # @return [String]
1204
+ attr_accessor :id
1205
+
1206
+ # A list of BackendBucket resources.
1207
+ # Corresponds to the JSON property `items`
1208
+ # @return [Array<Google::Apis::ComputeBeta::BackendBucket>]
1209
+ attr_accessor :items
1210
+
1211
+ # Type of resource.
1212
+ # Corresponds to the JSON property `kind`
1213
+ # @return [String]
1214
+ attr_accessor :kind
1215
+
1216
+ # [Output Only] A token used to continue a truncated list request.
1217
+ # Corresponds to the JSON property `nextPageToken`
1218
+ # @return [String]
1219
+ attr_accessor :next_page_token
1220
+
1221
+ # [Output Only] Server-defined URL for this resource.
1222
+ # Corresponds to the JSON property `selfLink`
1223
+ # @return [String]
1224
+ attr_accessor :self_link
1225
+
1226
+ def initialize(**args)
1227
+ update!(**args)
1228
+ end
1229
+
1230
+ # Update properties of this object
1231
+ def update!(**args)
1232
+ @id = args[:id] if args.key?(:id)
1233
+ @items = args[:items] if args.key?(:items)
1234
+ @kind = args[:kind] if args.key?(:kind)
1235
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
1236
+ @self_link = args[:self_link] if args.key?(:self_link)
1237
+ end
1238
+ end
1239
+
1095
1240
  # A BackendService resource. This resource defines a group of backend virtual
1096
1241
  # machines and their serving capacity.
1097
1242
  class BackendService
@@ -1459,10 +1604,55 @@ module Google
1459
1604
  end
1460
1605
  end
1461
1606
 
1607
+ # Associates `members` with a `role`.
1608
+ class Binding
1609
+ include Google::Apis::Core::Hashable
1610
+
1611
+ # Specifies the identities requesting access for a Cloud Platform resource. `
1612
+ # members` can have the following values:
1613
+ # * `allUsers`: A special identifier that represents anyone who is on the
1614
+ # internet; with or without a Google account.
1615
+ # * `allAuthenticatedUsers`: A special identifier that represents anyone who is
1616
+ # authenticated with a Google account or a service account.
1617
+ # * `user:`emailid``: An email address that represents a specific Google account.
1618
+ # For example, `alice@gmail.com` or `joe@example.com`.
1619
+ # * `serviceAccount:`emailid``: An email address that represents a service
1620
+ # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1621
+ # * `group:`emailid``: An email address that represents a Google group. For
1622
+ # example, `admins@example.com`.
1623
+ # * `domain:`domain``: A Google Apps domain name that represents all the users
1624
+ # of that domain. For example, `google.com` or `example.com`.
1625
+ # Corresponds to the JSON property `members`
1626
+ # @return [Array<String>]
1627
+ attr_accessor :members
1628
+
1629
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
1630
+ # , or `roles/owner`.
1631
+ # Corresponds to the JSON property `role`
1632
+ # @return [String]
1633
+ attr_accessor :role
1634
+
1635
+ def initialize(**args)
1636
+ update!(**args)
1637
+ end
1638
+
1639
+ # Update properties of this object
1640
+ def update!(**args)
1641
+ @members = args[:members] if args.key?(:members)
1642
+ @role = args[:role] if args.key?(:role)
1643
+ end
1644
+ end
1645
+
1462
1646
  #
1463
1647
  class CacheInvalidationRule
1464
1648
  include Google::Apis::Core::Hashable
1465
1649
 
1650
+ # If set, this invalidation rule will only apply to requests with a Host header
1651
+ # matching host.
1652
+ # Corresponds to the JSON property `host`
1653
+ # @return [String]
1654
+ attr_accessor :host
1655
+
1466
1656
  #
1467
1657
  # Corresponds to the JSON property `path`
1468
1658
  # @return [String]
@@ -1474,10 +1664,61 @@ module Google
1474
1664
 
1475
1665
  # Update properties of this object
1476
1666
  def update!(**args)
1667
+ @host = args[:host] if args.key?(:host)
1477
1668
  @path = args[:path] if args.key?(:path)
1478
1669
  end
1479
1670
  end
1480
1671
 
1672
+ # A condition to be met.
1673
+ class Condition
1674
+ include Google::Apis::Core::Hashable
1675
+
1676
+ # Trusted attributes supplied by the IAM system.
1677
+ # Corresponds to the JSON property `iam`
1678
+ # @return [String]
1679
+ attr_accessor :iam
1680
+
1681
+ # An operator to apply the subject with.
1682
+ # Corresponds to the JSON property `op`
1683
+ # @return [String]
1684
+ attr_accessor :op
1685
+
1686
+ # Trusted attributes discharged by the service.
1687
+ # Corresponds to the JSON property `svc`
1688
+ # @return [String]
1689
+ attr_accessor :svc
1690
+
1691
+ # Trusted attributes supplied by any service that owns resources and uses the
1692
+ # IAM system for access control.
1693
+ # Corresponds to the JSON property `sys`
1694
+ # @return [String]
1695
+ attr_accessor :sys
1696
+
1697
+ # DEPRECATED. Use 'values' instead.
1698
+ # Corresponds to the JSON property `value`
1699
+ # @return [String]
1700
+ attr_accessor :value
1701
+
1702
+ # The objects of the condition. This is mutually exclusive with 'value'.
1703
+ # Corresponds to the JSON property `values`
1704
+ # @return [Array<String>]
1705
+ attr_accessor :values
1706
+
1707
+ def initialize(**args)
1708
+ update!(**args)
1709
+ end
1710
+
1711
+ # Update properties of this object
1712
+ def update!(**args)
1713
+ @iam = args[:iam] if args.key?(:iam)
1714
+ @op = args[:op] if args.key?(:op)
1715
+ @svc = args[:svc] if args.key?(:svc)
1716
+ @sys = args[:sys] if args.key?(:sys)
1717
+ @value = args[:value] if args.key?(:value)
1718
+ @values = args[:values] if args.key?(:values)
1719
+ end
1720
+ end
1721
+
1481
1722
  # Message containing connection draining configuration.
1482
1723
  class ConnectionDraining
1483
1724
  include Google::Apis::Core::Hashable
@@ -1568,20 +1809,23 @@ module Google
1568
1809
  class DeprecationStatus
1569
1810
  include Google::Apis::Core::Hashable
1570
1811
 
1571
- # An optional RFC3339 timestamp on or after which the deprecation state of this
1572
- # resource will be changed to DELETED.
1812
+ # An optional RFC3339 timestamp on or after which the state of this resource is
1813
+ # intended to change to DELETED. This is only informational and the status will
1814
+ # not change unless the client explicitly changes it.
1573
1815
  # Corresponds to the JSON property `deleted`
1574
1816
  # @return [String]
1575
1817
  attr_accessor :deleted
1576
1818
 
1577
- # An optional RFC3339 timestamp on or after which the deprecation state of this
1578
- # resource will be changed to DEPRECATED.
1819
+ # An optional RFC3339 timestamp on or after which the state of this resource is
1820
+ # intended to change to DEPRECATED. This is only informational and the status
1821
+ # will not change unless the client explicitly changes it.
1579
1822
  # Corresponds to the JSON property `deprecated`
1580
1823
  # @return [String]
1581
1824
  attr_accessor :deprecated
1582
1825
 
1583
- # An optional RFC3339 timestamp on or after which the deprecation state of this
1584
- # resource will be changed to OBSOLETE.
1826
+ # An optional RFC3339 timestamp on or after which the state of this resource is
1827
+ # intended to change to OBSOLETE. This is only informational and the status will
1828
+ # not change unless the client explicitly changes it.
1585
1829
  # Corresponds to the JSON property `obsolete`
1586
1830
  # @return [String]
1587
1831
  attr_accessor :obsolete
@@ -5723,6 +5967,50 @@ module Google
5723
5967
  end
5724
5968
  end
5725
5969
 
5970
+ # Specifies what kind of log the caller must write
5971
+ class LogConfig
5972
+ include Google::Apis::Core::Hashable
5973
+
5974
+ # Options for counters
5975
+ # Corresponds to the JSON property `counter`
5976
+ # @return [Google::Apis::ComputeBeta::LogConfigCounterOptions]
5977
+ attr_accessor :counter
5978
+
5979
+ def initialize(**args)
5980
+ update!(**args)
5981
+ end
5982
+
5983
+ # Update properties of this object
5984
+ def update!(**args)
5985
+ @counter = args[:counter] if args.key?(:counter)
5986
+ end
5987
+ end
5988
+
5989
+ # Options for counters
5990
+ class LogConfigCounterOptions
5991
+ include Google::Apis::Core::Hashable
5992
+
5993
+ # The field value to attribute.
5994
+ # Corresponds to the JSON property `field`
5995
+ # @return [String]
5996
+ attr_accessor :field
5997
+
5998
+ # The metric to update.
5999
+ # Corresponds to the JSON property `metric`
6000
+ # @return [String]
6001
+ attr_accessor :metric
6002
+
6003
+ def initialize(**args)
6004
+ update!(**args)
6005
+ end
6006
+
6007
+ # Update properties of this object
6008
+ def update!(**args)
6009
+ @field = args[:field] if args.key?(:field)
6010
+ @metric = args[:metric] if args.key?(:metric)
6011
+ end
6012
+ end
6013
+
5726
6014
  # A Machine Type resource.
5727
6015
  class MachineType
5728
6016
  include Google::Apis::Core::Hashable
@@ -6559,9 +6847,9 @@ module Google
6559
6847
  # @return [String]
6560
6848
  attr_accessor :target_id
6561
6849
 
6562
- # [Output Only] The URL of the resource that the operation modifies. If creating
6563
- # a persistent disk snapshot, this points to the persistent disk that the
6564
- # snapshot was created from.
6850
+ # [Output Only] The URL of the resource that the operation modifies. For
6851
+ # operations related to creating a snapshot, this points to the persistent disk
6852
+ # that the snapshot was created from.
6565
6853
  # Corresponds to the JSON property `targetLink`
6566
6854
  # @return [String]
6567
6855
  attr_accessor :target_link
@@ -6996,6 +7284,88 @@ module Google
6996
7284
  end
6997
7285
  end
6998
7286
 
7287
+ # Defines an Identity and Access Management (IAM) policy. It is used to specify
7288
+ # access control policies for Cloud Platform resources.
7289
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of `
7290
+ # members` to a `role`, where the members can be user accounts, Google groups,
7291
+ # Google domains, and service accounts. A `role` is a named list of permissions
7292
+ # defined by IAM.
7293
+ # **Example**
7294
+ # ` "bindings": [ ` "role": "roles/owner", "members": [ "user:mike@example.com",
7295
+ # "group:admins@example.com", "domain:google.com", "serviceAccount:my-other-app@
7296
+ # appspot.gserviceaccount.com", ] `, ` "role": "roles/viewer", "members": ["user:
7297
+ # sean@example.com"] ` ] `
7298
+ # For a description of IAM and its features, see the [IAM developer's guide](
7299
+ # https://cloud.google.com/iam).
7300
+ class Policy
7301
+ include Google::Apis::Core::Hashable
7302
+
7303
+ # Specifies audit logging configs for "data access". "data access": generally
7304
+ # refers to data reads/writes and admin reads. "admin activity": generally
7305
+ # refers to admin writes.
7306
+ # Note: `AuditConfig` doesn't apply to "admin activity", which always enables
7307
+ # audit logging.
7308
+ # Corresponds to the JSON property `auditConfigs`
7309
+ # @return [Array<Google::Apis::ComputeBeta::AuditConfig>]
7310
+ attr_accessor :audit_configs
7311
+
7312
+ # Associates a list of `members` to a `role`. Multiple `bindings` must not be
7313
+ # specified for the same `role`. `bindings` with no members will result in an
7314
+ # error.
7315
+ # Corresponds to the JSON property `bindings`
7316
+ # @return [Array<Google::Apis::ComputeBeta::Binding>]
7317
+ attr_accessor :bindings
7318
+
7319
+ # `etag` is used for optimistic concurrency control as a way to help prevent
7320
+ # simultaneous updates of a policy from overwriting each other. It is strongly
7321
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
7322
+ # to perform policy updates in order to avoid race conditions: An `etag` is
7323
+ # returned in the response to `getIamPolicy`, and systems are expected to put
7324
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
7325
+ # applied to the same version of the policy.
7326
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
7327
+ # policy is overwritten blindly.
7328
+ # Corresponds to the JSON property `etag`
7329
+ # @return [String]
7330
+ attr_accessor :etag
7331
+
7332
+ #
7333
+ # Corresponds to the JSON property `iamOwned`
7334
+ # @return [Boolean]
7335
+ attr_accessor :iam_owned
7336
+ alias_method :iam_owned?, :iam_owned
7337
+
7338
+ # If more than one rule is specified, the rules are applied in the following
7339
+ # manner: - All matching LOG rules are always applied. - If any DENY/
7340
+ # DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if
7341
+ # one or more matching rule requires logging. - Otherwise, if any ALLOW/
7342
+ # ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if
7343
+ # one or more matching rule requires logging. - Otherwise, if no rule applies,
7344
+ # permission is denied.
7345
+ # Corresponds to the JSON property `rules`
7346
+ # @return [Array<Google::Apis::ComputeBeta::Rule>]
7347
+ attr_accessor :rules
7348
+
7349
+ # Version of the `Policy`. The default version is 0.
7350
+ # Corresponds to the JSON property `version`
7351
+ # @return [Fixnum]
7352
+ attr_accessor :version
7353
+
7354
+ def initialize(**args)
7355
+ update!(**args)
7356
+ end
7357
+
7358
+ # Update properties of this object
7359
+ def update!(**args)
7360
+ @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
7361
+ @bindings = args[:bindings] if args.key?(:bindings)
7362
+ @etag = args[:etag] if args.key?(:etag)
7363
+ @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
7364
+ @rules = args[:rules] if args.key?(:rules)
7365
+ @version = args[:version] if args.key?(:version)
7366
+ end
7367
+ end
7368
+
6999
7369
  # A Project resource. Projects can only be created in the Google Cloud Platform
7000
7370
  # Console. Unless marked otherwise, values can only be modified in the console.
7001
7371
  class Project
@@ -8430,6 +8800,66 @@ module Google
8430
8800
  end
8431
8801
  end
8432
8802
 
8803
+ # A rule to be applied in a Policy.
8804
+ class Rule
8805
+ include Google::Apis::Core::Hashable
8806
+
8807
+ # Required
8808
+ # Corresponds to the JSON property `action`
8809
+ # @return [String]
8810
+ attr_accessor :action
8811
+
8812
+ # Additional restrictions that must be met
8813
+ # Corresponds to the JSON property `conditions`
8814
+ # @return [Array<Google::Apis::ComputeBeta::Condition>]
8815
+ attr_accessor :conditions
8816
+
8817
+ # Human-readable description of the rule.
8818
+ # Corresponds to the JSON property `description`
8819
+ # @return [String]
8820
+ attr_accessor :description
8821
+
8822
+ # If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/
8823
+ # AUTHORITY_SELECTOR is in at least one of these entries.
8824
+ # Corresponds to the JSON property `ins`
8825
+ # @return [Array<String>]
8826
+ attr_accessor :ins
8827
+
8828
+ # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries
8829
+ # that match the LOG action.
8830
+ # Corresponds to the JSON property `logConfigs`
8831
+ # @return [Array<Google::Apis::ComputeBeta::LogConfig>]
8832
+ attr_accessor :log_configs
8833
+
8834
+ # If one or more 'not_in' clauses are specified, the rule matches if the
8835
+ # PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.
8836
+ # Corresponds to the JSON property `notIns`
8837
+ # @return [Array<String>]
8838
+ attr_accessor :not_ins
8839
+
8840
+ # A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value
8841
+ # of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.
8842
+ # *') matches all verbs.
8843
+ # Corresponds to the JSON property `permissions`
8844
+ # @return [Array<String>]
8845
+ attr_accessor :permissions
8846
+
8847
+ def initialize(**args)
8848
+ update!(**args)
8849
+ end
8850
+
8851
+ # Update properties of this object
8852
+ def update!(**args)
8853
+ @action = args[:action] if args.key?(:action)
8854
+ @conditions = args[:conditions] if args.key?(:conditions)
8855
+ @description = args[:description] if args.key?(:description)
8856
+ @ins = args[:ins] if args.key?(:ins)
8857
+ @log_configs = args[:log_configs] if args.key?(:log_configs)
8858
+ @not_ins = args[:not_ins] if args.key?(:not_ins)
8859
+ @permissions = args[:permissions] if args.key?(:permissions)
8860
+ end
8861
+ end
8862
+
8433
8863
  #
8434
8864
  class SslHealthCheck
8435
8865
  include Google::Apis::Core::Hashable