google-api-client 0.9.11 → 0.9.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (135) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/Gemfile +1 -1
  4. data/README.md +1 -1
  5. data/api_names.yaml +55 -117
  6. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +76 -8
  7. data/generated/google/apis/adexchangebuyer_v1_4/representations.rb +23 -0
  8. data/generated/google/apis/adexchangebuyer_v1_4/service.rb +10 -4
  9. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  10. data/generated/google/apis/adexchangeseller_v2_0/service.rb +1 -2
  11. data/generated/google/apis/adexchangeseller_v2_0.rb +2 -3
  12. data/generated/google/apis/admin_directory_v1/classes.rb +6 -0
  13. data/generated/google/apis/admin_directory_v1/representations.rb +1 -0
  14. data/generated/google/apis/admin_directory_v1/service.rb +2 -2
  15. data/generated/google/apis/admin_directory_v1.rb +1 -1
  16. data/generated/google/apis/admin_reports_v1/service.rb +2 -2
  17. data/generated/google/apis/admin_reports_v1.rb +3 -3
  18. data/generated/google/apis/adsense_v1_4.rb +1 -1
  19. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  20. data/generated/google/apis/analytics_v3/classes.rb +371 -1
  21. data/generated/google/apis/analytics_v3/representations.rb +135 -0
  22. data/generated/google/apis/analytics_v3/service.rb +218 -0
  23. data/generated/google/apis/analytics_v3.rb +1 -1
  24. data/generated/google/apis/analyticsreporting_v4/classes.rb +18 -8
  25. data/generated/google/apis/analyticsreporting_v4.rb +1 -1
  26. data/generated/google/apis/androidenterprise_v1/classes.rb +208 -37
  27. data/generated/google/apis/androidenterprise_v1/representations.rb +83 -0
  28. data/generated/google/apis/androidenterprise_v1/service.rb +469 -20
  29. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  30. data/generated/google/apis/androidpublisher_v2/classes.rb +9 -8
  31. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  32. data/generated/google/apis/appengine_v1beta5/classes.rb +379 -297
  33. data/generated/google/apis/appengine_v1beta5/representations.rb +55 -10
  34. data/generated/google/apis/appengine_v1beta5/service.rb +281 -35
  35. data/generated/google/apis/appengine_v1beta5.rb +1 -1
  36. data/generated/google/apis/appsactivity_v1.rb +1 -1
  37. data/generated/google/apis/appstate_v1.rb +1 -1
  38. data/generated/google/apis/bigquery_v2/classes.rb +50 -2
  39. data/generated/google/apis/bigquery_v2/representations.rb +6 -0
  40. data/generated/google/apis/bigquery_v2/service.rb +8 -1
  41. data/generated/google/apis/bigquery_v2.rb +1 -1
  42. data/generated/google/apis/calendar_v3.rb +1 -1
  43. data/generated/google/apis/civicinfo_v2/classes.rb +6 -0
  44. data/generated/google/apis/civicinfo_v2/representations.rb +1 -0
  45. data/generated/google/apis/civicinfo_v2/service.rb +2 -1
  46. data/generated/google/apis/civicinfo_v2.rb +3 -2
  47. data/generated/google/apis/classroom_v1/classes.rb +176 -37
  48. data/generated/google/apis/classroom_v1/representations.rb +73 -9
  49. data/generated/google/apis/classroom_v1/service.rb +392 -37
  50. data/generated/google/apis/classroom_v1.rb +1 -1
  51. data/generated/google/apis/cloudbuild_v1/classes.rb +190 -12
  52. data/generated/google/apis/cloudbuild_v1/representations.rb +73 -2
  53. data/generated/google/apis/cloudbuild_v1/service.rb +170 -0
  54. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  55. data/generated/google/apis/clouddebugger_v2/service.rb +2 -2
  56. data/generated/google/apis/clouddebugger_v2.rb +3 -6
  57. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  58. data/generated/google/apis/compute_beta/classes.rb +599 -77
  59. data/generated/google/apis/compute_beta/representations.rb +240 -0
  60. data/generated/google/apis/compute_beta/service.rb +1999 -710
  61. data/generated/google/apis/compute_beta.rb +1 -1
  62. data/generated/google/apis/compute_v1/classes.rb +140 -58
  63. data/generated/google/apis/compute_v1/representations.rb +17 -0
  64. data/generated/google/apis/compute_v1/service.rb +462 -521
  65. data/generated/google/apis/compute_v1.rb +1 -1
  66. data/generated/google/apis/content_v2/classes.rb +689 -1
  67. data/generated/google/apis/content_v2/representations.rb +316 -0
  68. data/generated/google/apis/content_v2/service.rb +244 -0
  69. data/generated/google/apis/content_v2.rb +1 -1
  70. data/generated/google/apis/datastore_v1beta3/classes.rb +48 -0
  71. data/generated/google/apis/datastore_v1beta3/representations.rb +5 -0
  72. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  73. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  74. data/generated/google/apis/dfareporting_v2_6/classes.rb +11585 -0
  75. data/generated/google/apis/dfareporting_v2_6/representations.rb +4119 -0
  76. data/generated/google/apis/dfareporting_v2_6/service.rb +9006 -0
  77. data/generated/google/apis/dfareporting_v2_6.rb +40 -0
  78. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  79. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  80. data/generated/google/apis/drive_v2/classes.rb +1 -1
  81. data/generated/google/apis/drive_v2.rb +1 -1
  82. data/generated/google/apis/drive_v3.rb +1 -1
  83. data/generated/google/apis/fitness_v1/classes.rb +8 -0
  84. data/generated/google/apis/fitness_v1/representations.rb +1 -0
  85. data/generated/google/apis/fitness_v1/service.rb +2 -2
  86. data/generated/google/apis/fitness_v1.rb +7 -1
  87. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  88. data/generated/google/apis/games_management_v1management.rb +1 -1
  89. data/generated/google/apis/games_v1.rb +1 -1
  90. data/generated/google/apis/genomics_v1/classes.rb +13 -2
  91. data/generated/google/apis/genomics_v1/representations.rb +1 -0
  92. data/generated/google/apis/genomics_v1/service.rb +2 -3
  93. data/generated/google/apis/genomics_v1.rb +1 -1
  94. data/generated/google/apis/gmail_v1/classes.rb +8 -11
  95. data/generated/google/apis/gmail_v1/service.rb +5 -5
  96. data/generated/google/apis/gmail_v1.rb +1 -1
  97. data/generated/google/apis/identitytoolkit_v3/classes.rb +38 -0
  98. data/generated/google/apis/identitytoolkit_v3/representations.rb +6 -0
  99. data/generated/google/apis/identitytoolkit_v3.rb +1 -1
  100. data/generated/google/apis/monitoring_v3/classes.rb +340 -421
  101. data/generated/google/apis/monitoring_v3/representations.rb +0 -17
  102. data/generated/google/apis/monitoring_v3/service.rb +136 -168
  103. data/generated/google/apis/monitoring_v3.rb +1 -1
  104. data/generated/google/apis/oauth2_v2.rb +1 -1
  105. data/generated/google/apis/pagespeedonline_v2.rb +1 -1
  106. data/generated/google/apis/plus_domains_v1.rb +1 -1
  107. data/generated/google/apis/plus_v1.rb +1 -1
  108. data/generated/google/apis/qpx_express_v1/classes.rb +6 -0
  109. data/generated/google/apis/qpx_express_v1/representations.rb +1 -0
  110. data/generated/google/apis/qpx_express_v1.rb +1 -1
  111. data/generated/google/apis/script_v1/classes.rb +6 -0
  112. data/generated/google/apis/script_v1/representations.rb +1 -0
  113. data/generated/google/apis/script_v1.rb +1 -1
  114. data/generated/google/apis/sheets_v4/classes.rb +35 -0
  115. data/generated/google/apis/sheets_v4/representations.rb +16 -0
  116. data/generated/google/apis/sheets_v4/service.rb +55 -0
  117. data/generated/google/apis/sheets_v4.rb +1 -1
  118. data/generated/google/apis/sqladmin_v1beta4/classes.rb +12 -0
  119. data/generated/google/apis/sqladmin_v1beta4/representations.rb +2 -0
  120. data/generated/google/apis/sqladmin_v1beta4/service.rb +41 -0
  121. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  122. data/generated/google/apis/storage_v1/classes.rb +36 -1
  123. data/generated/google/apis/storage_v1/representations.rb +16 -0
  124. data/generated/google/apis/storage_v1/service.rb +18 -3
  125. data/generated/google/apis/storage_v1.rb +1 -1
  126. data/generated/google/apis/vision_v1.rb +1 -1
  127. data/generated/google/apis/youtube_partner_v1/classes.rb +6 -0
  128. data/generated/google/apis/youtube_partner_v1/representations.rb +2 -0
  129. data/generated/google/apis/youtube_partner_v1/service.rb +15 -3
  130. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  131. data/generated/google/apis/youtube_v3.rb +1 -1
  132. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  133. data/lib/google/apis/generator/annotator.rb +6 -0
  134. data/lib/google/apis/version.rb +1 -1
  135. metadata +6 -3
@@ -46,6 +46,176 @@ module Google
46
46
  super('https://cloudbuild.googleapis.com/', '')
47
47
  end
48
48
 
49
+ # Creates a new BuildTrigger.
50
+ # This API is experimental.
51
+ # @param [String] project_id
52
+ # ID of the project for which to configure automatic builds.
53
+ # @param [Google::Apis::CloudbuildV1::BuildTrigger] build_trigger_object
54
+ # @param [String] quota_user
55
+ # Available to use for quota purposes for server-side applications. Can be any
56
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
57
+ # @param [String] fields
58
+ # Selector specifying which fields to include in a partial response.
59
+ # @param [Google::Apis::RequestOptions] options
60
+ # Request-specific options
61
+ #
62
+ # @yield [result, err] Result & error if block supplied
63
+ # @yieldparam result [Google::Apis::CloudbuildV1::BuildTrigger] parsed result object
64
+ # @yieldparam err [StandardError] error object if request failed
65
+ #
66
+ # @return [Google::Apis::CloudbuildV1::BuildTrigger]
67
+ #
68
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
69
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
70
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
71
+ def create_project_trigger(project_id, build_trigger_object = nil, quota_user: nil, fields: nil, options: nil, &block)
72
+ command = make_simple_command(:post, 'v1/projects/{projectId}/triggers', options)
73
+ command.request_representation = Google::Apis::CloudbuildV1::BuildTrigger::Representation
74
+ command.request_object = build_trigger_object
75
+ command.response_representation = Google::Apis::CloudbuildV1::BuildTrigger::Representation
76
+ command.response_class = Google::Apis::CloudbuildV1::BuildTrigger
77
+ command.params['projectId'] = project_id unless project_id.nil?
78
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
79
+ command.query['fields'] = fields unless fields.nil?
80
+ execute_or_queue_command(command, &block)
81
+ end
82
+
83
+ # Gets information about a BuildTrigger.
84
+ # This API is experimental.
85
+ # @param [String] project_id
86
+ # ID of the project that owns the trigger.
87
+ # @param [String] trigger_id
88
+ # ID of the BuildTrigger to get.
89
+ # @param [String] quota_user
90
+ # Available to use for quota purposes for server-side applications. Can be any
91
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
92
+ # @param [String] fields
93
+ # Selector specifying which fields to include in a partial response.
94
+ # @param [Google::Apis::RequestOptions] options
95
+ # Request-specific options
96
+ #
97
+ # @yield [result, err] Result & error if block supplied
98
+ # @yieldparam result [Google::Apis::CloudbuildV1::BuildTrigger] parsed result object
99
+ # @yieldparam err [StandardError] error object if request failed
100
+ #
101
+ # @return [Google::Apis::CloudbuildV1::BuildTrigger]
102
+ #
103
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
104
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
105
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
106
+ def get_project_trigger(project_id, trigger_id, quota_user: nil, fields: nil, options: nil, &block)
107
+ command = make_simple_command(:get, 'v1/projects/{projectId}/triggers/{triggerId}', options)
108
+ command.response_representation = Google::Apis::CloudbuildV1::BuildTrigger::Representation
109
+ command.response_class = Google::Apis::CloudbuildV1::BuildTrigger
110
+ command.params['projectId'] = project_id unless project_id.nil?
111
+ command.params['triggerId'] = trigger_id unless trigger_id.nil?
112
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
113
+ command.query['fields'] = fields unless fields.nil?
114
+ execute_or_queue_command(command, &block)
115
+ end
116
+
117
+ # Lists existing BuildTrigger.
118
+ # This API is experimental.
119
+ # @param [String] project_id
120
+ # ID of the project for which to list BuildTriggers.
121
+ # @param [String] quota_user
122
+ # Available to use for quota purposes for server-side applications. Can be any
123
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
124
+ # @param [String] fields
125
+ # Selector specifying which fields to include in a partial response.
126
+ # @param [Google::Apis::RequestOptions] options
127
+ # Request-specific options
128
+ #
129
+ # @yield [result, err] Result & error if block supplied
130
+ # @yieldparam result [Google::Apis::CloudbuildV1::ListBuildTriggersResponse] parsed result object
131
+ # @yieldparam err [StandardError] error object if request failed
132
+ #
133
+ # @return [Google::Apis::CloudbuildV1::ListBuildTriggersResponse]
134
+ #
135
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
136
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
137
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
138
+ def list_project_triggers(project_id, quota_user: nil, fields: nil, options: nil, &block)
139
+ command = make_simple_command(:get, 'v1/projects/{projectId}/triggers', options)
140
+ command.response_representation = Google::Apis::CloudbuildV1::ListBuildTriggersResponse::Representation
141
+ command.response_class = Google::Apis::CloudbuildV1::ListBuildTriggersResponse
142
+ command.params['projectId'] = project_id unless project_id.nil?
143
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
144
+ command.query['fields'] = fields unless fields.nil?
145
+ execute_or_queue_command(command, &block)
146
+ end
147
+
148
+ # Deletes an BuildTrigger by its project ID and trigger ID.
149
+ # This API is experimental.
150
+ # @param [String] project_id
151
+ # ID of the project that owns the trigger.
152
+ # @param [String] trigger_id
153
+ # ID of the BuildTrigger to delete.
154
+ # @param [String] quota_user
155
+ # Available to use for quota purposes for server-side applications. Can be any
156
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
157
+ # @param [String] fields
158
+ # Selector specifying which fields to include in a partial response.
159
+ # @param [Google::Apis::RequestOptions] options
160
+ # Request-specific options
161
+ #
162
+ # @yield [result, err] Result & error if block supplied
163
+ # @yieldparam result [Google::Apis::CloudbuildV1::Empty] parsed result object
164
+ # @yieldparam err [StandardError] error object if request failed
165
+ #
166
+ # @return [Google::Apis::CloudbuildV1::Empty]
167
+ #
168
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
169
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
170
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
171
+ def delete_project_trigger(project_id, trigger_id, quota_user: nil, fields: nil, options: nil, &block)
172
+ command = make_simple_command(:delete, 'v1/projects/{projectId}/triggers/{triggerId}', options)
173
+ command.response_representation = Google::Apis::CloudbuildV1::Empty::Representation
174
+ command.response_class = Google::Apis::CloudbuildV1::Empty
175
+ command.params['projectId'] = project_id unless project_id.nil?
176
+ command.params['triggerId'] = trigger_id unless trigger_id.nil?
177
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
178
+ command.query['fields'] = fields unless fields.nil?
179
+ execute_or_queue_command(command, &block)
180
+ end
181
+
182
+ # Updates an BuildTrigger by its project ID and trigger ID.
183
+ # This API is experimental.
184
+ # @param [String] project_id
185
+ # ID of the project that owns the trigger.
186
+ # @param [String] trigger_id
187
+ # ID of the BuildTrigger to update.
188
+ # @param [Google::Apis::CloudbuildV1::BuildTrigger] build_trigger_object
189
+ # @param [String] quota_user
190
+ # Available to use for quota purposes for server-side applications. Can be any
191
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
192
+ # @param [String] fields
193
+ # Selector specifying which fields to include in a partial response.
194
+ # @param [Google::Apis::RequestOptions] options
195
+ # Request-specific options
196
+ #
197
+ # @yield [result, err] Result & error if block supplied
198
+ # @yieldparam result [Google::Apis::CloudbuildV1::BuildTrigger] parsed result object
199
+ # @yieldparam err [StandardError] error object if request failed
200
+ #
201
+ # @return [Google::Apis::CloudbuildV1::BuildTrigger]
202
+ #
203
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
204
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
205
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
206
+ def patch_project_trigger(project_id, trigger_id, build_trigger_object = nil, quota_user: nil, fields: nil, options: nil, &block)
207
+ command = make_simple_command(:patch, 'v1/projects/{projectId}/triggers/{triggerId}', options)
208
+ command.request_representation = Google::Apis::CloudbuildV1::BuildTrigger::Representation
209
+ command.request_object = build_trigger_object
210
+ command.response_representation = Google::Apis::CloudbuildV1::BuildTrigger::Representation
211
+ command.response_class = Google::Apis::CloudbuildV1::BuildTrigger
212
+ command.params['projectId'] = project_id unless project_id.nil?
213
+ command.params['triggerId'] = trigger_id unless trigger_id.nil?
214
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
215
+ command.query['fields'] = fields unless fields.nil?
216
+ execute_or_queue_command(command, &block)
217
+ end
218
+
49
219
  # Starts a build with the specified configuration.
50
220
  # The long-running Operation returned by this method will include the ID of
51
221
  # the build, which can be passed to GetBuild to determine its status (e.g.,
@@ -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 = '20160706'
28
+ REVISION = '20160817'
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'
@@ -20,7 +20,7 @@ require 'google/apis/errors'
20
20
  module Google
21
21
  module Apis
22
22
  module ClouddebuggerV2
23
- # Google Cloud Debugger API
23
+ # Stackdriver Debugger API
24
24
  #
25
25
  # Examines the call stack and variables of a running application without
26
26
  # stopping or slowing it down.
@@ -31,7 +31,7 @@ module Google
31
31
  # Clouddebugger = Google::Apis::ClouddebuggerV2 # Alias the module
32
32
  # service = Clouddebugger::CloudDebuggerService.new
33
33
  #
34
- # @see https://cloud.google.com/tools/cloud-debugger
34
+ # @see http://cloud.google.com/debugger
35
35
  class CloudDebuggerService < Google::Apis::Core::BaseService
36
36
  # @return [String]
37
37
  # API key. Your API key identifies your project and provides you with API access,
@@ -18,24 +18,21 @@ require 'google/apis/clouddebugger_v2/representations.rb'
18
18
 
19
19
  module Google
20
20
  module Apis
21
- # Google Cloud Debugger API
21
+ # Stackdriver Debugger API
22
22
  #
23
23
  # Examines the call stack and variables of a running application without
24
24
  # stopping or slowing it down.
25
25
  #
26
- # @see https://cloud.google.com/tools/cloud-debugger
26
+ # @see http://cloud.google.com/debugger
27
27
  module ClouddebuggerV2
28
28
  VERSION = 'V2'
29
- REVISION = '20160602'
29
+ REVISION = '20160810'
30
30
 
31
31
  # View and manage your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
33
 
34
34
  # Manage cloud debugger
35
35
  AUTH_CLOUD_DEBUGGER = 'https://www.googleapis.com/auth/cloud_debugger'
36
-
37
- # Manage active breakpoints in cloud debugger
38
- AUTH_CLOUD_DEBUGLETCONTROLLER = 'https://www.googleapis.com/auth/cloud_debugletcontroller'
39
36
  end
40
37
  end
41
38
  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 = '20160613'
28
+ REVISION = '20160718'
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'
@@ -22,7 +22,8 @@ module Google
22
22
  module Apis
23
23
  module ComputeBeta
24
24
 
25
- # An access configuration attached to an instance's network interface.
25
+ # An access configuration attached to an instance's network interface. Only one
26
+ # access config per instance is supported.
26
27
  class AccessConfig
27
28
  include Google::Apis::Core::Hashable
28
29
 
@@ -414,7 +415,8 @@ module Google
414
415
  attr_accessor :mode
415
416
 
416
417
  # Specifies a valid partial or full URL to an existing Persistent Disk resource.
417
- # This field is only applicable for persistent disks.
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
420
  # Corresponds to the JSON property `source`
419
421
  # @return [String]
420
422
  attr_accessor :source
@@ -480,7 +482,8 @@ module Google
480
482
  # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/
481
483
  # diskType
482
484
  # - projects/project/zones/zone/diskTypes/diskType
483
- # - zones/zone/diskTypes/diskType
485
+ # - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the
486
+ # name of the disk type, not URL.
484
487
  # Corresponds to the JSON property `diskType`
485
488
  # @return [String]
486
489
  attr_accessor :disk_type
@@ -579,12 +582,25 @@ module Google
579
582
  # @return [String]
580
583
  attr_accessor :self_link
581
584
 
585
+ # [Output Only] The status of the autoscaler configuration.
586
+ # Corresponds to the JSON property `status`
587
+ # @return [String]
588
+ attr_accessor :status
589
+
590
+ # [Output Only] Human-readable details about the current state of the autoscaler.
591
+ # Examples: ?Error when fetching replicas: Replica Pool xxx doesn?t exist.? ?
592
+ # Autoscaling capped at min_num_replicas: 2.?
593
+ # Corresponds to the JSON property `statusDetails`
594
+ # @return [Array<Google::Apis::ComputeBeta::AutoscalerStatusDetails>]
595
+ attr_accessor :status_details
596
+
582
597
  # URL of the managed instance group that this autoscaler will scale.
583
598
  # Corresponds to the JSON property `target`
584
599
  # @return [String]
585
600
  attr_accessor :target
586
601
 
587
- # [Output Only] URL of the zone where the instance group resides.
602
+ # [Output Only] URL of the zone where the instance group resides (for
603
+ # autoscalers living in zonal scope).
588
604
  # Corresponds to the JSON property `zone`
589
605
  # @return [String]
590
606
  attr_accessor :zone
@@ -603,6 +619,8 @@ module Google
603
619
  @name = args[:name] if args.key?(:name)
604
620
  @region = args[:region] if args.key?(:region)
605
621
  @self_link = args[:self_link] if args.key?(:self_link)
622
+ @status = args[:status] if args.key?(:status)
623
+ @status_details = args[:status_details] if args.key?(:status_details)
606
624
  @target = args[:target] if args.key?(:target)
607
625
  @zone = args[:zone] if args.key?(:zone)
608
626
  end
@@ -706,6 +724,31 @@ module Google
706
724
  end
707
725
  end
708
726
 
727
+ #
728
+ class AutoscalerStatusDetails
729
+ include Google::Apis::Core::Hashable
730
+
731
+ #
732
+ # Corresponds to the JSON property `message`
733
+ # @return [String]
734
+ attr_accessor :message
735
+
736
+ #
737
+ # Corresponds to the JSON property `type`
738
+ # @return [String]
739
+ attr_accessor :type
740
+
741
+ def initialize(**args)
742
+ update!(**args)
743
+ end
744
+
745
+ # Update properties of this object
746
+ def update!(**args)
747
+ @message = args[:message] if args.key?(:message)
748
+ @type = args[:type] if args.key?(:type)
749
+ end
750
+ end
751
+
709
752
  #
710
753
  class AutoscalersScopedList
711
754
  include Google::Apis::Core::Hashable
@@ -862,7 +905,7 @@ module Google
862
905
  include Google::Apis::Core::Hashable
863
906
 
864
907
  # The target CPU utilization that the autoscaler should maintain. Must be a
865
- # float value in the range (0, 1]. If not specified, the default is 0.8.
908
+ # float value in the range (0, 1]. If not specified, the default is 0.6.
866
909
  # If the CPU level is below the target utilization, the autoscaler scales down
867
910
  # the number of instances until it reaches the minimum number of instances you
868
911
  # specified or until the average CPU of your instances reaches the target
@@ -955,6 +998,7 @@ module Google
955
998
 
956
999
  # Specifies the balancing mode for this backend. For global HTTP(S) load
957
1000
  # balancing, the default is UTILIZATION. Valid values are UTILIZATION and RATE.
1001
+ # This cannot be used for internal load balancing.
958
1002
  # Corresponds to the JSON property `balancingMode`
959
1003
  # @return [String]
960
1004
  attr_accessor :balancing_mode
@@ -964,6 +1008,7 @@ module Google
964
1008
  # to 100% of its configured CPU or RPS (depending on balancingMode). A setting
965
1009
  # of 0 means the group is completely drained, offering 0% of its available CPU
966
1010
  # or RPS. Valid range is [0.0,1.0].
1011
+ # This cannot be used for internal load balancing.
967
1012
  # Corresponds to the JSON property `capacityScaler`
968
1013
  # @return [Float]
969
1014
  attr_accessor :capacity_scaler
@@ -981,6 +1026,8 @@ module Google
981
1026
  # Instance Group resource.
982
1027
  # Note that you must specify an Instance Group resource using the fully-
983
1028
  # qualified URL, rather than a partial URL.
1029
+ # When the BackendService has load balancing scheme INTERNAL, the instance group
1030
+ # must be in a zone within the same region as the BackendService.
984
1031
  # Corresponds to the JSON property `group`
985
1032
  # @return [String]
986
1033
  attr_accessor :group
@@ -988,6 +1035,7 @@ module Google
988
1035
  # The max number of simultaneous connections for the group. Can be used with
989
1036
  # either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either
990
1037
  # maxConnections or maxConnectionsPerInstance must be set.
1038
+ # This cannot be used for internal load balancing.
991
1039
  # Corresponds to the JSON property `maxConnections`
992
1040
  # @return [Fixnum]
993
1041
  attr_accessor :max_connections
@@ -996,6 +1044,7 @@ module Google
996
1044
  # handle. This is used to calculate the capacity of the group. Can be used in
997
1045
  # either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either
998
1046
  # maxConnections or maxConnectionsPerInstance must be set.
1047
+ # This cannot be used for internal load balancing.
999
1048
  # Corresponds to the JSON property `maxConnectionsPerInstance`
1000
1049
  # @return [Fixnum]
1001
1050
  attr_accessor :max_connections_per_instance
@@ -1003,6 +1052,7 @@ module Google
1003
1052
  # The max requests per second (RPS) of the group. Can be used with either RATE
1004
1053
  # or UTILIZATION balancing modes, but required if RATE mode. For RATE mode,
1005
1054
  # either maxRate or maxRatePerInstance must be set.
1055
+ # This cannot be used for internal load balancing.
1006
1056
  # Corresponds to the JSON property `maxRate`
1007
1057
  # @return [Fixnum]
1008
1058
  attr_accessor :max_rate
@@ -1011,12 +1061,14 @@ module Google
1011
1061
  # This is used to calculate the capacity of the group. Can be used in either
1012
1062
  # balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be
1013
1063
  # set.
1064
+ # This cannot be used for internal load balancing.
1014
1065
  # Corresponds to the JSON property `maxRatePerInstance`
1015
1066
  # @return [Float]
1016
1067
  attr_accessor :max_rate_per_instance
1017
1068
 
1018
1069
  # Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization
1019
1070
  # target for the group. The default is 0.8. Valid range is [0.0, 1.0].
1071
+ # This cannot be used for internal load balancing.
1020
1072
  # Corresponds to the JSON property `maxUtilization`
1021
1073
  # @return [Float]
1022
1074
  attr_accessor :max_utilization
@@ -1047,6 +1099,7 @@ module Google
1047
1099
  # Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set
1048
1100
  # to 0, the cookie is non-persistent and lasts only until the end of the browser
1049
1101
  # session (or equivalent). The maximum allowed value for TTL is one day.
1102
+ # When the load balancing scheme is INTERNAL, this field is not used.
1050
1103
  # Corresponds to the JSON property `affinityCookieTtlSec`
1051
1104
  # @return [Fixnum]
1052
1105
  attr_accessor :affinity_cookie_ttl_sec
@@ -1073,6 +1126,7 @@ module Google
1073
1126
  attr_accessor :description
1074
1127
 
1075
1128
  # If true, enable Cloud CDN for this BackendService.
1129
+ # When the load balancing scheme is INTERNAL, this field is not used.
1076
1130
  # Corresponds to the JSON property `enableCDN`
1077
1131
  # @return [Boolean]
1078
1132
  attr_accessor :enable_cdn
@@ -1089,6 +1143,8 @@ module Google
1089
1143
  # The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for
1090
1144
  # health checking this BackendService. Currently at most one health check can be
1091
1145
  # specified, and a health check is required.
1146
+ # For internal load balancing, a URL to a HealthCheck resource must be specified
1147
+ # instead.
1092
1148
  # Corresponds to the JSON property `healthChecks`
1093
1149
  # @return [Array<String>]
1094
1150
  attr_accessor :health_checks
@@ -1117,18 +1173,23 @@ module Google
1117
1173
 
1118
1174
  # Deprecated in favor of portName. The TCP port to connect on the backend. The
1119
1175
  # default value is 80.
1176
+ # This cannot be used for internal load balancing.
1120
1177
  # Corresponds to the JSON property `port`
1121
1178
  # @return [Fixnum]
1122
1179
  attr_accessor :port
1123
1180
 
1124
1181
  # Name of backend port. The same name should appear in the instance groups
1125
- # referenced by this service. Required.
1182
+ # referenced by this service. Required when the load balancing scheme is
1183
+ # EXTERNAL.
1184
+ # When the load balancing scheme is INTERNAL, this field is not used.
1126
1185
  # Corresponds to the JSON property `portName`
1127
1186
  # @return [String]
1128
1187
  attr_accessor :port_name
1129
1188
 
1130
1189
  # The protocol this BackendService uses to communicate with backends.
1131
- # Possible values are HTTP, HTTPS, HTTP2, TCP and SSL.
1190
+ # Possible values are HTTP, HTTPS, HTTP2, TCP and SSL. The default is HTTP.
1191
+ # For internal load balancing, the possible values are TCP and UDP, and the
1192
+ # default is TCP.
1132
1193
  # Corresponds to the JSON property `protocol`
1133
1194
  # @return [String]
1134
1195
  attr_accessor :protocol
@@ -1144,7 +1205,12 @@ module Google
1144
1205
  # @return [String]
1145
1206
  attr_accessor :self_link
1146
1207
 
1147
- # Type of session affinity to use.
1208
+ # Type of session affinity to use. The default is NONE.
1209
+ # When the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or
1210
+ # GENERATED_COOKIE.
1211
+ # When the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP,
1212
+ # CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
1213
+ # When the protocol is UDP, this field is not used.
1148
1214
  # Corresponds to the JSON property `sessionAffinity`
1149
1215
  # @return [String]
1150
1216
  attr_accessor :session_affinity
@@ -1467,7 +1533,7 @@ module Google
1467
1533
  # @return [String]
1468
1534
  attr_accessor :last_detach_timestamp
1469
1535
 
1470
- # [Output Only] Any applicable publicly visible licenses.
1536
+ # Any applicable publicly visible licenses.
1471
1537
  # Corresponds to the JSON property `licenses`
1472
1538
  # @return [Array<String>]
1473
1539
  attr_accessor :licenses
@@ -2128,8 +2194,8 @@ module Google
2128
2194
  class Firewall
2129
2195
  include Google::Apis::Core::Hashable
2130
2196
 
2131
- # The list of rules specified by this firewall. Each rule specifies a protocol
2132
- # and port-range tuple that describes a permitted connection.
2197
+ # The list of ALLOW rules specified by this firewall. Each rule specifies a
2198
+ # protocol and port-range tuple that describes a permitted connection.
2133
2199
  # Corresponds to the JSON property `allowed`
2134
2200
  # @return [Array<Google::Apis::ComputeBeta::Firewall::Allowed>]
2135
2201
  attr_accessor :allowed
@@ -2184,24 +2250,25 @@ module Google
2184
2250
  # @return [String]
2185
2251
  attr_accessor :self_link
2186
2252
 
2187
- # The IP address blocks that this rule applies to, expressed in CIDR format. One
2188
- # or both of sourceRanges and sourceTags may be set.
2189
- # If both properties are set, an inbound connection is allowed if the range
2190
- # matches the sourceRanges OR the tag of the source matches the sourceTags
2191
- # property. The connection does not need to match both properties.
2253
+ # If source ranges are specified, the firewall will apply only to traffic that
2254
+ # has source IP address in these ranges. These ranges must be expressed in CIDR
2255
+ # format. One or both of sourceRanges and sourceTags may be set. If both
2256
+ # properties are set, the firewall will apply to traffic that has source IP
2257
+ # address within sourceRanges OR the source IP that belongs to a tag listed in
2258
+ # the sourceTags property. The connection does not need to match both properties
2259
+ # for the firewall to apply.
2192
2260
  # Corresponds to the JSON property `sourceRanges`
2193
2261
  # @return [Array<String>]
2194
2262
  attr_accessor :source_ranges
2195
2263
 
2196
- # A list of instance tags which this rule applies to. One or both of
2197
- # sourceRanges and sourceTags may be set.
2198
- # If both properties are set, an inbound connection is allowed if the range
2199
- # matches the sourceRanges OR the tag of the source matches the sourceTags
2200
- # property. The connection does not need to match both properties.
2201
- # Source tags cannot be used to allow access to an instance's external IP
2202
- # address. Because tags are associated with an instance, not an IP address,
2203
- # source tags can only be used to control traffic traveling from an instance
2204
- # inside the same network as the firewall.
2264
+ # If source tags are specified, the firewall will apply only to traffic with
2265
+ # source IP that belongs to a tag listed in source tags. Source tags cannot be
2266
+ # used to control traffic to an instance's external IP address. Because tags are
2267
+ # associated with an instance, not an IP address. One or both of sourceRanges
2268
+ # and sourceTags may be set. If both properties are set, the firewall will apply
2269
+ # to traffic that has source IP address within sourceRanges OR the source IP
2270
+ # that belongs to a tag listed in the sourceTags property. The connection does
2271
+ # not need to match both properties for the firewall to apply.
2205
2272
  # Corresponds to the JSON property `sourceTags`
2206
2273
  # @return [Array<String>]
2207
2274
  attr_accessor :source_tags
@@ -2237,17 +2304,17 @@ module Google
2237
2304
  class Allowed
2238
2305
  include Google::Apis::Core::Hashable
2239
2306
 
2240
- # The IP protocol that is allowed for this rule. The protocol type is required
2241
- # when creating a firewall rule. This value can either be one of the following
2242
- # well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP
2243
- # protocol number.
2307
+ # The IP protocol to which this rule applies. The protocol type is required when
2308
+ # creating a firewall rule. This value can either be one of the following well
2309
+ # known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol
2310
+ # number.
2244
2311
  # Corresponds to the JSON property `IPProtocol`
2245
2312
  # @return [String]
2246
2313
  attr_accessor :ip_protocol
2247
2314
 
2248
- # An optional list of ports which are allowed. This field is only applicable for
2249
- # UDP or TCP protocol. Each entry must be either an integer or a range. If not
2250
- # specified, connections through any port are allowed
2315
+ # An optional list of ports to which this rule applies. This field is only
2316
+ # applicable for UDP or TCP protocol. Each entry must be either an integer or a
2317
+ # range. If not specified, this rule applies to connections through any port.
2251
2318
  # Example inputs include: ["22"], ["80","443"], and ["12345-12349"].
2252
2319
  # Corresponds to the JSON property `ports`
2253
2320
  # @return [Array<String>]
@@ -2320,17 +2387,23 @@ module Google
2320
2387
  class ForwardingRule
2321
2388
  include Google::Apis::Core::Hashable
2322
2389
 
2323
- # Value of the reserved IP address that this forwarding rule is serving on
2324
- # behalf of. For global forwarding rules, the address must be a global IP; for
2325
- # regional forwarding rules, the address must live in the same region as the
2326
- # forwarding rule. If left empty (default value), an ephemeral IP from the same
2327
- # scope (global or regional) will be assigned.
2390
+ # The IP address that this forwarding rule is serving on behalf of.
2391
+ # For global forwarding rules, the address must be a global IP; for regional
2392
+ # forwarding rules, the address must live in the same region as the forwarding
2393
+ # rule. By default, this field is empty and an ephemeral IP from the same scope (
2394
+ # global or regional) will be assigned.
2395
+ # When the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP
2396
+ # address belonging to the network/subnetwork configured for the forwarding rule.
2397
+ # A reserved address cannot be used. If the field is empty, the IP address will
2398
+ # be automatically allocated from the internal IP range of the subnetwork or
2399
+ # network configured for this forwarding rule.
2328
2400
  # Corresponds to the JSON property `IPAddress`
2329
2401
  # @return [String]
2330
2402
  attr_accessor :ip_address
2331
2403
 
2332
2404
  # The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP,
2333
2405
  # AH, SCTP or ICMP.
2406
+ # When the load balancing scheme is INTERNAL</code, only TCP and UDP are valid.
2334
2407
  # Corresponds to the JSON property `IPProtocol`
2335
2408
  # @return [String]
2336
2409
  attr_accessor :ip_protocol
@@ -2371,6 +2444,7 @@ module Google
2371
2444
  # Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed
2372
2445
  # to ports in the specified range will be forwarded to target. Forwarding rules
2373
2446
  # with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.
2447
+ # This field is not used for internal load balancing.
2374
2448
  # Corresponds to the JSON property `portRange`
2375
2449
  # @return [String]
2376
2450
  attr_accessor :port_range
@@ -2392,6 +2466,7 @@ module Google
2392
2466
  # TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be of
2393
2467
  # a type appropriate to the target object. For example, TargetHttpProxy requires
2394
2468
  # HTTP traffic, and TargetHttpsProxy requires HTTPS traffic.
2469
+ # This field is not used for internal load balancing.
2395
2470
  # Corresponds to the JSON property `target`
2396
2471
  # @return [String]
2397
2472
  attr_accessor :target
@@ -2865,9 +2940,9 @@ module Google
2865
2940
  # @return [Fixnum]
2866
2941
  attr_accessor :timeout_sec
2867
2942
 
2868
- # Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2.
2869
- # If not specified, the default is TCP. Exactly one of the protocol-specific
2870
- # health check field must be specified, which must match type field.
2943
+ # Specifies the type of the healthCheck, either TCP, UDP, SSL, HTTP, HTTPS or
2944
+ # HTTP2. If not specified, the default is TCP. Exactly one of the protocol-
2945
+ # specific health check field must be specified, which must match type field.
2871
2946
  # Corresponds to the JSON property `type`
2872
2947
  # @return [String]
2873
2948
  attr_accessor :type
@@ -3386,7 +3461,8 @@ module Google
3386
3461
 
3387
3462
  # The name of the image family to which this image belongs. You can create disks
3388
3463
  # by specifying an image family instead of a specific image name. The image
3389
- # family always returns its latest image that is not deprecated.
3464
+ # family always returns its latest image that is not deprecated. The name of the
3465
+ # image family must comply with RFC1035.
3390
3466
  # Corresponds to the JSON property `family`
3391
3467
  # @return [String]
3392
3468
  attr_accessor :family
@@ -3694,7 +3770,7 @@ module Google
3694
3770
 
3695
3771
  # An array of configurations for this interface. This specifies how this
3696
3772
  # interface is configured to interact with other network services, such as
3697
- # connecting to the internet.
3773
+ # connecting to the internet. Only one interface is supported per instance.
3698
3774
  # Corresponds to the JSON property `networkInterfaces`
3699
3775
  # @return [Array<Google::Apis::ComputeBeta::NetworkInterface>]
3700
3776
  attr_accessor :network_interfaces
@@ -3872,7 +3948,8 @@ module Google
3872
3948
  # @return [String]
3873
3949
  attr_accessor :network
3874
3950
 
3875
- # The URL of the region where the instance group is located.
3951
+ # The URL of the region where the instance group is located (for regional
3952
+ # resources).
3876
3953
  # Corresponds to the JSON property `region`
3877
3954
  # @return [String]
3878
3955
  attr_accessor :region
@@ -3892,7 +3969,8 @@ module Google
3892
3969
  # @return [String]
3893
3970
  attr_accessor :subnetwork
3894
3971
 
3895
- # [Output Only] The URL of the zone where the instance group is located.
3972
+ # [Output Only] The URL of the zone where the instance group is located (for
3973
+ # zonal resources).
3896
3974
  # Corresponds to the JSON property `zone`
3897
3975
  # @return [String]
3898
3976
  attr_accessor :zone
@@ -4017,7 +4095,7 @@ module Google
4017
4095
  end
4018
4096
  end
4019
4097
 
4020
- # An Instance Template Manager resource.
4098
+ # An Instance Group Manager resource.
4021
4099
  class InstanceGroupManager
4022
4100
  include Google::Apis::Core::Hashable
4023
4101
 
@@ -4101,7 +4179,8 @@ module Google
4101
4179
  # @return [Array<Google::Apis::ComputeBeta::NamedPort>]
4102
4180
  attr_accessor :named_ports
4103
4181
 
4104
- # [Output Only] URL of the region where the managed instance group resides.
4182
+ # [Output Only] The URL of the region where the managed instance group resides (
4183
+ # for regional resources).
4105
4184
  # Corresponds to the JSON property `region`
4106
4185
  # @return [String]
4107
4186
  attr_accessor :region
@@ -4126,7 +4205,8 @@ module Google
4126
4205
  # @return [Fixnum]
4127
4206
  attr_accessor :target_size
4128
4207
 
4129
- # The name of the zone where the managed instance group is located.
4208
+ # [Output Only] The URL of the zone where the managed instance group is located (
4209
+ # for zonal resources).
4130
4210
  # Corresponds to the JSON property `zone`
4131
4211
  # @return [String]
4132
4212
  attr_accessor :zone
@@ -4171,15 +4251,17 @@ module Google
4171
4251
 
4172
4252
  # [Output Only] The number of instances in the managed instance group that are
4173
4253
  # scheduled to be created or are currently being created. If the group fails to
4174
- # create one of these instances, it tries again until it creates the instance
4254
+ # create any of these instances, it tries again until it creates the instance
4175
4255
  # successfully.
4256
+ # If you have disabled creation retries, this field will not be populated;
4257
+ # instead, the creatingWithoutRetries field will be populated.
4176
4258
  # Corresponds to the JSON property `creating`
4177
4259
  # @return [Fixnum]
4178
4260
  attr_accessor :creating
4179
4261
 
4180
4262
  # [Output Only] The number of instances that the managed instance group will
4181
4263
  # attempt to create. The group attempts to create each instance only once. If
4182
- # the group fails to create one of these instances, it decreases the group's
4264
+ # the group fails to create any of these instances, it decreases the group's
4183
4265
  # target_size value accordingly.
4184
4266
  # Corresponds to the JSON property `creatingWithoutRetries`
4185
4267
  # @return [Fixnum]
@@ -4298,7 +4380,8 @@ module Google
4298
4380
  # autohealing policies to new instances or recently recreated instances. This
4299
4381
  # initial delay allows instances to initialize and run their startup scripts
4300
4382
  # before the instance group determines that they are UNHEALTHY. This prevents
4301
- # the managed instance group from recreating its instances prematurely.
4383
+ # the managed instance group from recreating its instances prematurely. This
4384
+ # value must be from range [0, 3600].
4302
4385
  # Corresponds to the JSON property `initialDelaySec`
4303
4386
  # @return [Fixnum]
4304
4387
  attr_accessor :initial_delay_sec
@@ -4444,19 +4527,22 @@ module Google
4444
4527
  class InstanceGroupManagersResizeAdvancedRequest
4445
4528
  include Google::Apis::Core::Hashable
4446
4529
 
4447
- # If this flag is true, we will attempt to create all instances resized up with
4448
- # this request only once. In case of an error during creation, we will not
4449
- # create this instance, and we will decrease the target_size. If the flag is
4450
- # false, we will keep trying to create each instance until we succeed.
4451
- # This flag matters only in the first attempt of creation of an instance. If an
4452
- # instance creation with this flag succeeds, the instance behaves the same way
4453
- # as all the other instances created with the flag set to false. In particular,
4454
- # consecutive instance creations (in case an instance dies and needs to be
4455
- # recreated) will not fail after the first attempt.
4530
+ # If this flag is true, the managed instance group attempts to create all
4531
+ # instances initiated by this resize request only once. If there is an error
4532
+ # during creation, the managed instance group does not retry create this
4533
+ # instance, and we will decrease the targetSize of the request instead. If the
4534
+ # flag is false, the group attemps to recreate each instance continuously until
4535
+ # it succeeds.
4536
+ # This flag matters only in the first attempt of creation of an instance. After
4537
+ # an instance is successfully created while this flag is enabled, the instance
4538
+ # behaves the same way as all the other instances created with a regular resize
4539
+ # request. In particular, if a running instance dies unexpectedly at a later
4540
+ # time and needs to be recreated, this mode does not affect the recreation
4541
+ # behavior in that scenario.
4456
4542
  # This flag is applicable only to the current resize request. It does not
4457
4543
  # influence other resize requests in any way.
4458
- # You can see which instances is being creating in which mode by calling the
4459
- # listManagedInstances API.
4544
+ # You can see which instances is being creating in which mode by calling the get
4545
+ # or listManagedInstances API.
4460
4546
  # Corresponds to the JSON property `noCreationRetries`
4461
4547
  # @return [Boolean]
4462
4548
  attr_accessor :no_creation_retries
@@ -4667,8 +4753,8 @@ module Google
4667
4753
  class InstanceGroupsListInstances
4668
4754
  include Google::Apis::Core::Hashable
4669
4755
 
4670
- # [Output Only] A unique identifier for this list of instance groups. The server
4671
- # generates this identifier.
4756
+ # [Output Only] A unique identifier for this list of instances in the specified
4757
+ # instance group. The server generates this identifier.
4672
4758
  # Corresponds to the JSON property `id`
4673
4759
  # @return [String]
4674
4760
  attr_accessor :id
@@ -4680,7 +4766,8 @@ module Google
4680
4766
  attr_accessor :items
4681
4767
 
4682
4768
  # [Output Only] The resource type, which is always compute#
4683
- # instanceGroupsListInstances for lists of instance groups.
4769
+ # instanceGroupsListInstances for the list of instances in the specified
4770
+ # instance group.
4684
4771
  # Corresponds to the JSON property `kind`
4685
4772
  # @return [String]
4686
4773
  attr_accessor :kind
@@ -4694,8 +4781,8 @@ module Google
4694
4781
  # @return [String]
4695
4782
  attr_accessor :next_page_token
4696
4783
 
4697
- # [Output Only] The URL for this list of instance groups. The server generates
4698
- # this URL.
4784
+ # [Output Only] The URL for this list of instances in the specified instance
4785
+ # groups. The server generates this URL.
4699
4786
  # Corresponds to the JSON property `selfLink`
4700
4787
  # @return [String]
4701
4788
  attr_accessor :self_link
@@ -4985,6 +5072,12 @@ module Google
4985
5072
  # @return [Array<Google::Apis::ComputeBeta::AttachedDisk>]
4986
5073
  attr_accessor :disks
4987
5074
 
5075
+ # Labels to apply to instances that are created from this template. Each label
5076
+ # key/value pair must comply with RFC1035. Label values may be empty.
5077
+ # Corresponds to the JSON property `labels`
5078
+ # @return [Hash<String,String>]
5079
+ attr_accessor :labels
5080
+
4988
5081
  # The machine type to use for instances that are created from this template.
4989
5082
  # Corresponds to the JSON property `machineType`
4990
5083
  # @return [String]
@@ -5026,6 +5119,7 @@ module Google
5026
5119
  @can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
5027
5120
  @description = args[:description] if args.key?(:description)
5028
5121
  @disks = args[:disks] if args.key?(:disks)
5122
+ @labels = args[:labels] if args.key?(:labels)
5029
5123
  @machine_type = args[:machine_type] if args.key?(:machine_type)
5030
5124
  @metadata = args[:metadata] if args.key?(:metadata)
5031
5125
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
@@ -5707,7 +5801,7 @@ module Google
5707
5801
  # fails to create this instance, it will try again until it is successful.
5708
5802
  # - CREATING_WITHOUT_RETRIES The managed instance group is attempting to create
5709
5803
  # this instance only once. If the group fails to create this instance, it does
5710
- # not try again and the group's target_size value is decreased.
5804
+ # not try again and the group's targetSize value is decreased instead.
5711
5805
  # - RECREATING The managed instance group is recreating this instance.
5712
5806
  # - DELETING The managed instance group is permanently deleting this instance.
5713
5807
  # - ABANDONING The managed instance group is abandoning this instance. The
@@ -6018,8 +6112,8 @@ module Google
6018
6112
  class NetworkInterface
6019
6113
  include Google::Apis::Core::Hashable
6020
6114
 
6021
- # An array of configurations for this interface. Currently, ONE_TO_ONE_NAT is
6022
- # the only access config supported. If there are no accessConfigs specified,
6115
+ # An array of configurations for this interface. Currently, only one access
6116
+ # config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified,
6023
6117
  # then this instance will have no external internet access.
6024
6118
  # Corresponds to the JSON property `accessConfigs`
6025
6119
  # @return [Array<Google::Apis::ComputeBeta::AccessConfig>]
@@ -6870,6 +6964,393 @@ module Google
6870
6964
  end
6871
6965
  end
6872
6966
 
6967
+ # Contains a list of autoscalers.
6968
+ class RegionAutoscalerList
6969
+ include Google::Apis::Core::Hashable
6970
+
6971
+ # [Output Only] The unique identifier for the resource. This identifier is
6972
+ # defined by the server.
6973
+ # Corresponds to the JSON property `id`
6974
+ # @return [String]
6975
+ attr_accessor :id
6976
+
6977
+ # A list of autoscalers.
6978
+ # Corresponds to the JSON property `items`
6979
+ # @return [Array<Google::Apis::ComputeBeta::Autoscaler>]
6980
+ attr_accessor :items
6981
+
6982
+ # Type of resource.
6983
+ # Corresponds to the JSON property `kind`
6984
+ # @return [String]
6985
+ attr_accessor :kind
6986
+
6987
+ # [Output Only] A token used to continue a truncated list request.
6988
+ # Corresponds to the JSON property `nextPageToken`
6989
+ # @return [String]
6990
+ attr_accessor :next_page_token
6991
+
6992
+ # [Output Only] Server-defined URL for this resource.
6993
+ # Corresponds to the JSON property `selfLink`
6994
+ # @return [String]
6995
+ attr_accessor :self_link
6996
+
6997
+ def initialize(**args)
6998
+ update!(**args)
6999
+ end
7000
+
7001
+ # Update properties of this object
7002
+ def update!(**args)
7003
+ @id = args[:id] if args.key?(:id)
7004
+ @items = args[:items] if args.key?(:items)
7005
+ @kind = args[:kind] if args.key?(:kind)
7006
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
7007
+ @self_link = args[:self_link] if args.key?(:self_link)
7008
+ end
7009
+ end
7010
+
7011
+ # Contains a list of InstanceGroup resources.
7012
+ class RegionInstanceGroupList
7013
+ include Google::Apis::Core::Hashable
7014
+
7015
+ # [Output Only] The unique identifier for the resource. This identifier is
7016
+ # defined by the server.
7017
+ # Corresponds to the JSON property `id`
7018
+ # @return [String]
7019
+ attr_accessor :id
7020
+
7021
+ # A list of InstanceGroup resources.
7022
+ # Corresponds to the JSON property `items`
7023
+ # @return [Array<Google::Apis::ComputeBeta::InstanceGroup>]
7024
+ attr_accessor :items
7025
+
7026
+ # The resource type.
7027
+ # Corresponds to the JSON property `kind`
7028
+ # @return [String]
7029
+ attr_accessor :kind
7030
+
7031
+ # [Output Only] This token allows you to get the next page of results for list
7032
+ # requests. If the number of results is larger than maxResults, use the
7033
+ # nextPageToken as a value for the query parameter pageToken in the next list
7034
+ # request. Subsequent list requests will have their own nextPageToken to
7035
+ # continue paging through the results.
7036
+ # Corresponds to the JSON property `nextPageToken`
7037
+ # @return [String]
7038
+ attr_accessor :next_page_token
7039
+
7040
+ # [Output Only] The URL for this resource type. The server generates this URL.
7041
+ # Corresponds to the JSON property `selfLink`
7042
+ # @return [String]
7043
+ attr_accessor :self_link
7044
+
7045
+ def initialize(**args)
7046
+ update!(**args)
7047
+ end
7048
+
7049
+ # Update properties of this object
7050
+ def update!(**args)
7051
+ @id = args[:id] if args.key?(:id)
7052
+ @items = args[:items] if args.key?(:items)
7053
+ @kind = args[:kind] if args.key?(:kind)
7054
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
7055
+ @self_link = args[:self_link] if args.key?(:self_link)
7056
+ end
7057
+ end
7058
+
7059
+ # Contains a list of managed instance groups.
7060
+ class RegionInstanceGroupManagerList
7061
+ include Google::Apis::Core::Hashable
7062
+
7063
+ # [Output Only] The unique identifier for the resource. This identifier is
7064
+ # defined by the server.
7065
+ # Corresponds to the JSON property `id`
7066
+ # @return [String]
7067
+ attr_accessor :id
7068
+
7069
+ # A list of managed instance groups.
7070
+ # Corresponds to the JSON property `items`
7071
+ # @return [Array<Google::Apis::ComputeBeta::InstanceGroupManager>]
7072
+ attr_accessor :items
7073
+
7074
+ # [Output Only] The resource type, which is always compute#
7075
+ # instanceGroupManagerList for a list of managed instance groups that exist in
7076
+ # th regional scope.
7077
+ # Corresponds to the JSON property `kind`
7078
+ # @return [String]
7079
+ attr_accessor :kind
7080
+
7081
+ # [Output only] A token used to continue a truncated list request.
7082
+ # Corresponds to the JSON property `nextPageToken`
7083
+ # @return [String]
7084
+ attr_accessor :next_page_token
7085
+
7086
+ # [Output only] The URL for this resource type. The server generates this URL.
7087
+ # Corresponds to the JSON property `selfLink`
7088
+ # @return [String]
7089
+ attr_accessor :self_link
7090
+
7091
+ def initialize(**args)
7092
+ update!(**args)
7093
+ end
7094
+
7095
+ # Update properties of this object
7096
+ def update!(**args)
7097
+ @id = args[:id] if args.key?(:id)
7098
+ @items = args[:items] if args.key?(:items)
7099
+ @kind = args[:kind] if args.key?(:kind)
7100
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
7101
+ @self_link = args[:self_link] if args.key?(:self_link)
7102
+ end
7103
+ end
7104
+
7105
+ #
7106
+ class RegionInstanceGroupManagersAbandonInstancesRequest
7107
+ include Google::Apis::Core::Hashable
7108
+
7109
+ # The names of one or more instances to abandon.
7110
+ # Corresponds to the JSON property `instances`
7111
+ # @return [Array<String>]
7112
+ attr_accessor :instances
7113
+
7114
+ def initialize(**args)
7115
+ update!(**args)
7116
+ end
7117
+
7118
+ # Update properties of this object
7119
+ def update!(**args)
7120
+ @instances = args[:instances] if args.key?(:instances)
7121
+ end
7122
+ end
7123
+
7124
+ #
7125
+ class RegionInstanceGroupManagersDeleteInstancesRequest
7126
+ include Google::Apis::Core::Hashable
7127
+
7128
+ # The names of one or more instances to delete.
7129
+ # Corresponds to the JSON property `instances`
7130
+ # @return [Array<String>]
7131
+ attr_accessor :instances
7132
+
7133
+ def initialize(**args)
7134
+ update!(**args)
7135
+ end
7136
+
7137
+ # Update properties of this object
7138
+ def update!(**args)
7139
+ @instances = args[:instances] if args.key?(:instances)
7140
+ end
7141
+ end
7142
+
7143
+ #
7144
+ class RegionInstanceGroupManagersListInstancesResponse
7145
+ include Google::Apis::Core::Hashable
7146
+
7147
+ # List of managed instances.
7148
+ # Corresponds to the JSON property `managedInstances`
7149
+ # @return [Array<Google::Apis::ComputeBeta::ManagedInstance>]
7150
+ attr_accessor :managed_instances
7151
+
7152
+ def initialize(**args)
7153
+ update!(**args)
7154
+ end
7155
+
7156
+ # Update properties of this object
7157
+ def update!(**args)
7158
+ @managed_instances = args[:managed_instances] if args.key?(:managed_instances)
7159
+ end
7160
+ end
7161
+
7162
+ #
7163
+ class RegionInstanceGroupManagersRecreateRequest
7164
+ include Google::Apis::Core::Hashable
7165
+
7166
+ # The URL for one or more instances to recreate.
7167
+ # Corresponds to the JSON property `instances`
7168
+ # @return [Array<String>]
7169
+ attr_accessor :instances
7170
+
7171
+ def initialize(**args)
7172
+ update!(**args)
7173
+ end
7174
+
7175
+ # Update properties of this object
7176
+ def update!(**args)
7177
+ @instances = args[:instances] if args.key?(:instances)
7178
+ end
7179
+ end
7180
+
7181
+ #
7182
+ class RegionInstanceGroupManagersSetAutoHealingRequest
7183
+ include Google::Apis::Core::Hashable
7184
+
7185
+ #
7186
+ # Corresponds to the JSON property `autoHealingPolicies`
7187
+ # @return [Array<Google::Apis::ComputeBeta::InstanceGroupManagerAutoHealingPolicy>]
7188
+ attr_accessor :auto_healing_policies
7189
+
7190
+ def initialize(**args)
7191
+ update!(**args)
7192
+ end
7193
+
7194
+ # Update properties of this object
7195
+ def update!(**args)
7196
+ @auto_healing_policies = args[:auto_healing_policies] if args.key?(:auto_healing_policies)
7197
+ end
7198
+ end
7199
+
7200
+ #
7201
+ class RegionInstanceGroupManagersSetTargetPoolsRequest
7202
+ include Google::Apis::Core::Hashable
7203
+
7204
+ # Fingerprint of the target pools information, which is a hash of the contents.
7205
+ # This field is used for optimistic locking when you update the target pool
7206
+ # entries. This field is optional.
7207
+ # Corresponds to the JSON property `fingerprint`
7208
+ # @return [String]
7209
+ attr_accessor :fingerprint
7210
+
7211
+ # The URL of all TargetPool resources to which instances in the instanceGroup
7212
+ # field are added. The target pools automatically apply to all of the instances
7213
+ # in the managed instance group.
7214
+ # Corresponds to the JSON property `targetPools`
7215
+ # @return [Array<String>]
7216
+ attr_accessor :target_pools
7217
+
7218
+ def initialize(**args)
7219
+ update!(**args)
7220
+ end
7221
+
7222
+ # Update properties of this object
7223
+ def update!(**args)
7224
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
7225
+ @target_pools = args[:target_pools] if args.key?(:target_pools)
7226
+ end
7227
+ end
7228
+
7229
+ #
7230
+ class RegionInstanceGroupManagersSetTemplateRequest
7231
+ include Google::Apis::Core::Hashable
7232
+
7233
+ # URL of the InstanceTemplate resource from which all new instances will be
7234
+ # created.
7235
+ # Corresponds to the JSON property `instanceTemplate`
7236
+ # @return [String]
7237
+ attr_accessor :instance_template
7238
+
7239
+ def initialize(**args)
7240
+ update!(**args)
7241
+ end
7242
+
7243
+ # Update properties of this object
7244
+ def update!(**args)
7245
+ @instance_template = args[:instance_template] if args.key?(:instance_template)
7246
+ end
7247
+ end
7248
+
7249
+ #
7250
+ class RegionInstanceGroupsListInstances
7251
+ include Google::Apis::Core::Hashable
7252
+
7253
+ # [Output Only] Unique identifier for the resource. Defined by the server.
7254
+ # Corresponds to the JSON property `id`
7255
+ # @return [String]
7256
+ attr_accessor :id
7257
+
7258
+ # A list of instances and any named ports that are assigned to those instances.
7259
+ # Corresponds to the JSON property `items`
7260
+ # @return [Array<Google::Apis::ComputeBeta::InstanceWithNamedPorts>]
7261
+ attr_accessor :items
7262
+
7263
+ # The resource type.
7264
+ # Corresponds to the JSON property `kind`
7265
+ # @return [String]
7266
+ attr_accessor :kind
7267
+
7268
+ # [Output Only] This token allows you to get the next page of results for list
7269
+ # requests. If the number of results is larger than maxResults, use the
7270
+ # nextPageToken as a value for the query parameter pageToken in the next list
7271
+ # request. Subsequent list requests will have their own nextPageToken to
7272
+ # continue paging through the results.
7273
+ # Corresponds to the JSON property `nextPageToken`
7274
+ # @return [String]
7275
+ attr_accessor :next_page_token
7276
+
7277
+ # [Output Only] Server-defined URL for the resource.
7278
+ # Corresponds to the JSON property `selfLink`
7279
+ # @return [String]
7280
+ attr_accessor :self_link
7281
+
7282
+ def initialize(**args)
7283
+ update!(**args)
7284
+ end
7285
+
7286
+ # Update properties of this object
7287
+ def update!(**args)
7288
+ @id = args[:id] if args.key?(:id)
7289
+ @items = args[:items] if args.key?(:items)
7290
+ @kind = args[:kind] if args.key?(:kind)
7291
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
7292
+ @self_link = args[:self_link] if args.key?(:self_link)
7293
+ end
7294
+ end
7295
+
7296
+ #
7297
+ class RegionInstanceGroupsListInstancesRequest
7298
+ include Google::Apis::Core::Hashable
7299
+
7300
+ # Instances in which state should be returned. Valid options are: 'ALL', '
7301
+ # RUNNING'. By default, it lists all instances.
7302
+ # Corresponds to the JSON property `instanceState`
7303
+ # @return [String]
7304
+ attr_accessor :instance_state
7305
+
7306
+ # Name of port user is interested in. It is optional. If it is set, only
7307
+ # information about this ports will be returned. If it is not set, all the named
7308
+ # ports will be returned. Always lists all instances.
7309
+ # Corresponds to the JSON property `portName`
7310
+ # @return [String]
7311
+ attr_accessor :port_name
7312
+
7313
+ def initialize(**args)
7314
+ update!(**args)
7315
+ end
7316
+
7317
+ # Update properties of this object
7318
+ def update!(**args)
7319
+ @instance_state = args[:instance_state] if args.key?(:instance_state)
7320
+ @port_name = args[:port_name] if args.key?(:port_name)
7321
+ end
7322
+ end
7323
+
7324
+ #
7325
+ class RegionInstanceGroupsSetNamedPortsRequest
7326
+ include Google::Apis::Core::Hashable
7327
+
7328
+ # The fingerprint of the named ports information for this instance group. Use
7329
+ # this optional property to prevent conflicts when multiple users change the
7330
+ # named ports settings concurrently. Obtain the fingerprint with the
7331
+ # instanceGroups.get method. Then, include the fingerprint in your request to
7332
+ # ensure that you do not overwrite changes that were applied from another
7333
+ # concurrent request.
7334
+ # Corresponds to the JSON property `fingerprint`
7335
+ # @return [String]
7336
+ attr_accessor :fingerprint
7337
+
7338
+ # The list of named ports to set for this instance group.
7339
+ # Corresponds to the JSON property `namedPorts`
7340
+ # @return [Array<Google::Apis::ComputeBeta::NamedPort>]
7341
+ attr_accessor :named_ports
7342
+
7343
+ def initialize(**args)
7344
+ update!(**args)
7345
+ end
7346
+
7347
+ # Update properties of this object
7348
+ def update!(**args)
7349
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
7350
+ @named_ports = args[:named_ports] if args.key?(:named_ports)
7351
+ end
7352
+ end
7353
+
6873
7354
  # Contains a list of region resources.
6874
7355
  class RegionList
6875
7356
  include Google::Apis::Core::Hashable
@@ -7189,12 +7670,14 @@ module Google
7189
7670
  class Router
7190
7671
  include Google::Apis::Core::Hashable
7191
7672
 
7192
- #
7673
+ # BGP information specific to this router.
7193
7674
  # Corresponds to the JSON property `bgp`
7194
7675
  # @return [Google::Apis::ComputeBeta::RouterBgp]
7195
7676
  attr_accessor :bgp
7196
7677
 
7197
- #
7678
+ # BGP information that needs to be configured into the routing stack to
7679
+ # establish the BGP peering. It must specify peer ASN and either interface name,
7680
+ # IP, or peer IP. Please refer to RFC4273.
7198
7681
  # Corresponds to the JSON property `bgpPeers`
7199
7682
  # @return [Array<Google::Apis::ComputeBeta::RouterBgpPeer>]
7200
7683
  attr_accessor :bgp_peers
@@ -7216,7 +7699,8 @@ module Google
7216
7699
  # @return [String]
7217
7700
  attr_accessor :id
7218
7701
 
7219
- #
7702
+ # Router interfaces. Each interface requires either one linked resource (e.g.
7703
+ # linkedVpnTunnel) or IP address and IP address range (e.g. ipRange).
7220
7704
  # Corresponds to the JSON property `interfaces`
7221
7705
  # @return [Array<Google::Apis::ComputeBeta::RouterInterface>]
7222
7706
  attr_accessor :interfaces
@@ -7340,9 +7824,7 @@ module Google
7340
7824
  end
7341
7825
  end
7342
7826
 
7343
- # BGP information that needs to be configured into the routing stack to
7344
- # establish the BGP peering. It must specify peer ASN and either interface name,
7345
- # IP, or peer IP. Reference: https://tools.ietf.org/html/rfc4273
7827
+ #
7346
7828
  class RouterBgpPeer
7347
7829
  include Google::Apis::Core::Hashable
7348
7830
 
@@ -7395,8 +7877,7 @@ module Google
7395
7877
  end
7396
7878
  end
7397
7879
 
7398
- # Router interfaces. Each interface requires either one linked resource (e.g.
7399
- # linked_vpn_tunnel) or IP address + range (specified in ip_range).
7880
+ #
7400
7881
  class RouterInterface
7401
7882
  include Google::Apis::Core::Hashable
7402
7883
 
@@ -7610,6 +8091,25 @@ module Google
7610
8091
  end
7611
8092
  end
7612
8093
 
8094
+ #
8095
+ class RoutersPreviewResponse
8096
+ include Google::Apis::Core::Hashable
8097
+
8098
+ # Router resource.
8099
+ # Corresponds to the JSON property `resource`
8100
+ # @return [Google::Apis::ComputeBeta::Router]
8101
+ attr_accessor :resource
8102
+
8103
+ def initialize(**args)
8104
+ update!(**args)
8105
+ end
8106
+
8107
+ # Update properties of this object
8108
+ def update!(**args)
8109
+ @resource = args[:resource] if args.key?(:resource)
8110
+ end
8111
+ end
8112
+
7613
8113
  #
7614
8114
  class RoutersScopedList
7615
8115
  include Google::Apis::Core::Hashable
@@ -8356,6 +8856,28 @@ module Google
8356
8856
  end
8357
8857
  end
8358
8858
 
8859
+ #
8860
+ class SubnetworksExpandIpCidrRangeRequest
8861
+ include Google::Apis::Core::Hashable
8862
+
8863
+ # The IP (in CIDR format or netmask) of internal addresses that are legal on
8864
+ # this Subnetwork. This range should be disjoint from other subnetworks within
8865
+ # this network. This range can only be larger than (i.e. a superset of) the
8866
+ # range previously defined before the update.
8867
+ # Corresponds to the JSON property `ipCidrRange`
8868
+ # @return [String]
8869
+ attr_accessor :ip_cidr_range
8870
+
8871
+ def initialize(**args)
8872
+ update!(**args)
8873
+ end
8874
+
8875
+ # Update properties of this object
8876
+ def update!(**args)
8877
+ @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
8878
+ end
8879
+ end
8880
+
8359
8881
  #
8360
8882
  class SubnetworksScopedList
8361
8883
  include Google::Apis::Core::Hashable