google-api-client 0.36.1 → 0.36.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (131) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +45 -0
  3. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  4. data/generated/google/apis/androidenterprise_v1/classes.rb +29 -58
  5. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  6. data/generated/google/apis/androidmanagement_v1/classes.rb +188 -0
  7. data/generated/google/apis/androidmanagement_v1/representations.rb +67 -0
  8. data/generated/google/apis/androidmanagement_v1/service.rb +6 -1
  9. data/generated/google/apis/bigquery_v2.rb +1 -1
  10. data/generated/google/apis/bigquery_v2/classes.rb +6 -0
  11. data/generated/google/apis/bigquery_v2/representations.rb +1 -0
  12. data/generated/google/apis/bigquery_v2/service.rb +19 -2
  13. data/generated/google/apis/bigqueryreservation_v1alpha2.rb +1 -1
  14. data/generated/google/apis/bigqueryreservation_v1alpha2/classes.rb +6 -0
  15. data/generated/google/apis/bigqueryreservation_v1alpha2/representations.rb +1 -0
  16. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  17. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +6 -0
  18. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +1 -0
  19. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  20. data/generated/google/apis/cloudbuild_v1alpha1.rb +34 -0
  21. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +1174 -0
  22. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +435 -0
  23. data/generated/google/apis/cloudbuild_v1alpha1/service.rb +223 -0
  24. data/generated/google/apis/compute_alpha.rb +1 -1
  25. data/generated/google/apis/compute_alpha/classes.rb +234 -240
  26. data/generated/google/apis/compute_alpha/representations.rb +7 -47
  27. data/generated/google/apis/compute_alpha/service.rb +1233 -1068
  28. data/generated/google/apis/compute_beta.rb +1 -1
  29. data/generated/google/apis/compute_beta/classes.rb +936 -164
  30. data/generated/google/apis/compute_beta/representations.rb +371 -0
  31. data/generated/google/apis/compute_beta/service.rb +1394 -899
  32. data/generated/google/apis/compute_v1.rb +1 -1
  33. data/generated/google/apis/compute_v1/classes.rb +479 -147
  34. data/generated/google/apis/compute_v1/representations.rb +127 -0
  35. data/generated/google/apis/compute_v1/service.rb +813 -748
  36. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  37. data/generated/google/apis/datacatalog_v1beta1/classes.rb +9 -7
  38. data/generated/google/apis/datacatalog_v1beta1/representations.rb +1 -0
  39. data/generated/google/apis/datacatalog_v1beta1/service.rb +8 -3
  40. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  41. data/generated/google/apis/dataflow_v1b3/classes.rb +69 -0
  42. data/generated/google/apis/dataflow_v1b3/representations.rb +34 -0
  43. data/generated/google/apis/dataproc_v1.rb +1 -1
  44. data/generated/google/apis/dataproc_v1/classes.rb +73 -43
  45. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  46. data/generated/google/apis/dataproc_v1beta2/classes.rb +73 -43
  47. data/generated/google/apis/dialogflow_v2.rb +1 -1
  48. data/generated/google/apis/dialogflow_v2/classes.rb +44 -11
  49. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  50. data/generated/google/apis/dialogflow_v2beta1/classes.rb +44 -11
  51. data/generated/google/apis/dialogflow_v2beta1/service.rb +20 -0
  52. data/generated/google/apis/dns_v1.rb +1 -1
  53. data/generated/google/apis/dns_v1/classes.rb +70 -0
  54. data/generated/google/apis/dns_v1/representations.rb +32 -0
  55. data/generated/google/apis/dns_v2beta1.rb +1 -1
  56. data/generated/google/apis/dns_v2beta1/classes.rb +70 -0
  57. data/generated/google/apis/dns_v2beta1/representations.rb +32 -0
  58. data/generated/google/apis/docs_v1.rb +1 -1
  59. data/generated/google/apis/docs_v1/classes.rb +152 -0
  60. data/generated/google/apis/docs_v1/representations.rb +56 -0
  61. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  62. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  63. data/generated/google/apis/driveactivity_v2.rb +1 -1
  64. data/generated/google/apis/driveactivity_v2/classes.rb +6 -0
  65. data/generated/google/apis/driveactivity_v2/representations.rb +2 -0
  66. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  67. data/generated/google/apis/firestore_v1.rb +1 -1
  68. data/generated/google/apis/firestore_v1/classes.rb +1 -1
  69. data/generated/google/apis/firestore_v1/service.rb +24 -22
  70. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  71. data/generated/google/apis/firestore_v1beta1/classes.rb +1 -1
  72. data/generated/google/apis/firestore_v1beta1/service.rb +16 -14
  73. data/generated/google/apis/fitness_v1.rb +11 -11
  74. data/generated/google/apis/games_management_v1management.rb +1 -1
  75. data/generated/google/apis/games_management_v1management/service.rb +5 -7
  76. data/generated/google/apis/iam_v1.rb +1 -1
  77. data/generated/google/apis/iam_v1/classes.rb +83 -141
  78. data/generated/google/apis/iam_v1/representations.rb +0 -6
  79. data/generated/google/apis/iam_v1/service.rb +11 -21
  80. data/generated/google/apis/language_v1beta2.rb +1 -1
  81. data/generated/google/apis/language_v1beta2/classes.rb +15 -0
  82. data/generated/google/apis/language_v1beta2/representations.rb +2 -0
  83. data/generated/google/apis/logging_v2.rb +3 -2
  84. data/generated/google/apis/logging_v2/service.rb +2 -1
  85. data/generated/google/apis/{surveys_v2.rb → prod_tt_sasportal_v1alpha1.rb} +9 -15
  86. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +1084 -0
  87. data/generated/google/apis/prod_tt_sasportal_v1alpha1/representations.rb +503 -0
  88. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +1322 -0
  89. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  90. data/generated/google/apis/recommender_v1beta1/classes.rb +6 -0
  91. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  92. data/generated/google/apis/remotebuildexecution_v1/classes.rb +1 -1
  93. data/generated/google/apis/run_v1alpha1.rb +1 -1
  94. data/generated/google/apis/run_v1alpha1/classes.rb +424 -0
  95. data/generated/google/apis/run_v1alpha1/representations.rb +161 -0
  96. data/generated/google/apis/run_v1alpha1/service.rb +862 -46
  97. data/generated/google/apis/run_v1beta1.rb +1 -1
  98. data/generated/google/apis/run_v1beta1/classes.rb +1 -1
  99. data/generated/google/apis/sasportal_v1alpha1.rb +34 -0
  100. data/generated/google/apis/sasportal_v1alpha1/classes.rb +1084 -0
  101. data/generated/google/apis/sasportal_v1alpha1/representations.rb +503 -0
  102. data/generated/google/apis/sasportal_v1alpha1/service.rb +1322 -0
  103. data/generated/google/apis/securitycenter_v1.rb +1 -1
  104. data/generated/google/apis/securitycenter_v1/classes.rb +18 -0
  105. data/generated/google/apis/securitycenter_v1/representations.rb +3 -0
  106. data/generated/google/apis/securitycenter_v1/service.rb +6 -0
  107. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  108. data/generated/google/apis/servicemanagement_v1/classes.rb +16 -1
  109. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  110. data/generated/google/apis/sheets_v4.rb +1 -1
  111. data/generated/google/apis/sheets_v4/classes.rb +187 -2
  112. data/generated/google/apis/sheets_v4/representations.rb +47 -0
  113. data/generated/google/apis/spanner_v1.rb +1 -1
  114. data/generated/google/apis/spanner_v1/classes.rb +104 -51
  115. data/generated/google/apis/spanner_v1/representations.rb +1 -0
  116. data/generated/google/apis/spanner_v1/service.rb +6 -1
  117. data/generated/google/apis/sql_v1beta4.rb +1 -1
  118. data/generated/google/apis/sql_v1beta4/classes.rb +75 -4
  119. data/generated/google/apis/sql_v1beta4/representations.rb +32 -0
  120. data/generated/google/apis/sql_v1beta4/service.rb +83 -2
  121. data/generated/google/apis/toolresults_v1.rb +31 -0
  122. data/generated/google/apis/toolresults_v1/classes.rb +696 -0
  123. data/generated/google/apis/toolresults_v1/representations.rb +438 -0
  124. data/generated/google/apis/toolresults_v1/service.rb +59 -0
  125. data/generated/google/apis/vision_v1.rb +1 -1
  126. data/generated/google/apis/vision_v1/service.rb +1 -1
  127. data/lib/google/apis/version.rb +1 -1
  128. metadata +19 -7
  129. data/generated/google/apis/surveys_v2/classes.rb +0 -691
  130. data/generated/google/apis/surveys_v2/representations.rb +0 -305
  131. data/generated/google/apis/surveys_v2/service.rb +0 -348
@@ -22,6 +22,12 @@ module Google
22
22
  module Apis
23
23
  module AndroidmanagementV1
24
24
 
25
+ class AdvancedSecurityOverrides
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
25
31
  class AlwaysOnVpnPackage
26
32
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
33
 
@@ -100,6 +106,12 @@ module Google
100
106
  include Google::Apis::Core::JsonObjectSupport
101
107
  end
102
108
 
109
+ class Date
110
+ class Representation < Google::Apis::Core::JsonRepresentation; end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
103
115
  class Device
104
116
  class Representation < Google::Apis::Core::JsonRepresentation; end
105
117
 
@@ -142,6 +154,12 @@ module Google
142
154
  include Google::Apis::Core::JsonObjectSupport
143
155
  end
144
156
 
157
+ class FreezePeriod
158
+ class Representation < Google::Apis::Core::JsonRepresentation; end
159
+
160
+ include Google::Apis::Core::JsonObjectSupport
161
+ end
162
+
145
163
  class HardwareInfo
146
164
  class Representation < Google::Apis::Core::JsonRepresentation; end
147
165
 
@@ -160,6 +178,12 @@ module Google
160
178
  include Google::Apis::Core::JsonObjectSupport
161
179
  end
162
180
 
181
+ class KioskCustomization
182
+ class Representation < Google::Apis::Core::JsonRepresentation; end
183
+
184
+ include Google::Apis::Core::JsonObjectSupport
185
+ end
186
+
163
187
  class LaunchAppAction
164
188
  class Representation < Google::Apis::Core::JsonRepresentation; end
165
189
 
@@ -388,6 +412,13 @@ module Google
388
412
  include Google::Apis::Core::JsonObjectSupport
389
413
  end
390
414
 
415
+ class AdvancedSecurityOverrides
416
+ # @private
417
+ class Representation < Google::Apis::Core::JsonRepresentation
418
+ property :untrusted_apps_policy, as: 'untrustedAppsPolicy'
419
+ end
420
+ end
421
+
391
422
  class AlwaysOnVpnPackage
392
423
  # @private
393
424
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -528,6 +559,15 @@ module Google
528
559
  end
529
560
  end
530
561
 
562
+ class Date
563
+ # @private
564
+ class Representation < Google::Apis::Core::JsonRepresentation
565
+ property :day, as: 'day'
566
+ property :month, as: 'month'
567
+ property :year, as: 'year'
568
+ end
569
+ end
570
+
531
571
  class Device
532
572
  # @private
533
573
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -654,6 +694,16 @@ module Google
654
694
  end
655
695
  end
656
696
 
697
+ class FreezePeriod
698
+ # @private
699
+ class Representation < Google::Apis::Core::JsonRepresentation
700
+ property :end_date, as: 'endDate', class: Google::Apis::AndroidmanagementV1::Date, decorator: Google::Apis::AndroidmanagementV1::Date::Representation
701
+
702
+ property :start_date, as: 'startDate', class: Google::Apis::AndroidmanagementV1::Date, decorator: Google::Apis::AndroidmanagementV1::Date::Representation
703
+
704
+ end
705
+ end
706
+
657
707
  class HardwareInfo
658
708
  # @private
659
709
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -699,6 +749,16 @@ module Google
699
749
  end
700
750
  end
701
751
 
752
+ class KioskCustomization
753
+ # @private
754
+ class Representation < Google::Apis::Core::JsonRepresentation
755
+ property :power_button_actions, as: 'powerButtonActions'
756
+ property :status_bar, as: 'statusBar'
757
+ property :system_error_warnings, as: 'systemErrorWarnings'
758
+ property :system_navigation, as: 'systemNavigation'
759
+ end
760
+ end
761
+
702
762
  class LaunchAppAction
703
763
  # @private
704
764
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -855,6 +915,7 @@ module Google
855
915
  property :password_minimum_upper_case, as: 'passwordMinimumUpperCase'
856
916
  property :password_quality, as: 'passwordQuality'
857
917
  property :password_scope, as: 'passwordScope'
918
+ property :require_password_unlock, as: 'requirePasswordUnlock'
858
919
  end
859
920
  end
860
921
 
@@ -881,6 +942,8 @@ module Google
881
942
  collection :account_types_with_management_disabled, as: 'accountTypesWithManagementDisabled'
882
943
  property :add_user_disabled, as: 'addUserDisabled'
883
944
  property :adjust_volume_disabled, as: 'adjustVolumeDisabled'
945
+ property :advanced_security_overrides, as: 'advancedSecurityOverrides', class: Google::Apis::AndroidmanagementV1::AdvancedSecurityOverrides, decorator: Google::Apis::AndroidmanagementV1::AdvancedSecurityOverrides::Representation
946
+
884
947
  property :always_on_vpn_package, as: 'alwaysOnVpnPackage', class: Google::Apis::AndroidmanagementV1::AlwaysOnVpnPackage, decorator: Google::Apis::AndroidmanagementV1::AlwaysOnVpnPackage::Representation
885
948
 
886
949
  collection :android_device_policy_tracks, as: 'androidDevicePolicyTracks'
@@ -915,6 +978,8 @@ module Google
915
978
  property :keyguard_disabled, as: 'keyguardDisabled'
916
979
  collection :keyguard_disabled_features, as: 'keyguardDisabledFeatures'
917
980
  property :kiosk_custom_launcher_enabled, as: 'kioskCustomLauncherEnabled'
981
+ property :kiosk_customization, as: 'kioskCustomization', class: Google::Apis::AndroidmanagementV1::KioskCustomization, decorator: Google::Apis::AndroidmanagementV1::KioskCustomization::Representation
982
+
918
983
  property :location_mode, as: 'locationMode'
919
984
  property :long_support_message, as: 'longSupportMessage', class: Google::Apis::AndroidmanagementV1::UserFacingMessage, decorator: Google::Apis::AndroidmanagementV1::UserFacingMessage::Representation
920
985
 
@@ -1100,6 +1165,8 @@ module Google
1100
1165
  # @private
1101
1166
  class Representation < Google::Apis::Core::JsonRepresentation
1102
1167
  property :end_minutes, as: 'endMinutes'
1168
+ collection :freeze_periods, as: 'freezePeriods', class: Google::Apis::AndroidmanagementV1::FreezePeriod, decorator: Google::Apis::AndroidmanagementV1::FreezePeriod::Representation
1169
+
1103
1170
  property :start_minutes, as: 'startMinutes'
1104
1171
  property :type, as: 'type'
1105
1172
  end
@@ -196,6 +196,10 @@ module Google
196
196
  # deviceId`.
197
197
  # @param [Array<String>, String] wipe_data_flags
198
198
  # Optional flags that control the device wiping behavior.
199
+ # @param [String] wipe_reason_message
200
+ # Optional short message displayed to the user before wiping the work profile on
201
+ # personal devices. This has no effect on company owned devices. The maximum
202
+ # message length is 200 characters.
199
203
  # @param [String] fields
200
204
  # Selector specifying which fields to include in a partial response.
201
205
  # @param [String] quota_user
@@ -213,12 +217,13 @@ module Google
213
217
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
214
218
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
215
219
  # @raise [Google::Apis::AuthorizationError] Authorization is required
216
- def delete_enterprise_device(name, wipe_data_flags: nil, fields: nil, quota_user: nil, options: nil, &block)
220
+ def delete_enterprise_device(name, wipe_data_flags: nil, wipe_reason_message: nil, fields: nil, quota_user: nil, options: nil, &block)
217
221
  command = make_simple_command(:delete, 'v1/{+name}', options)
218
222
  command.response_representation = Google::Apis::AndroidmanagementV1::Empty::Representation
219
223
  command.response_class = Google::Apis::AndroidmanagementV1::Empty
220
224
  command.params['name'] = name unless name.nil?
221
225
  command.query['wipeDataFlags'] = wipe_data_flags unless wipe_data_flags.nil?
226
+ command.query['wipeReasonMessage'] = wipe_reason_message unless wipe_reason_message.nil?
222
227
  command.query['fields'] = fields unless fields.nil?
223
228
  command.query['quotaUser'] = quota_user unless quota_user.nil?
224
229
  execute_or_queue_command(command, &block)
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/bigquery/
26
26
  module BigqueryV2
27
27
  VERSION = 'V2'
28
- REVISION = '20191201'
28
+ REVISION = '20191211'
29
29
 
30
30
  # View and manage your data in Google BigQuery
31
31
  AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'
@@ -1654,6 +1654,11 @@ module Google
1654
1654
  # @return [Fixnum]
1655
1655
  attr_accessor :shuffle_output_bytes_spilled
1656
1656
 
1657
+ # Slot-milliseconds used by the stage.
1658
+ # Corresponds to the JSON property `slotMs`
1659
+ # @return [Fixnum]
1660
+ attr_accessor :slot_ms
1661
+
1657
1662
  # Stage start time represented as milliseconds since epoch.
1658
1663
  # Corresponds to the JSON property `startMs`
1659
1664
  # @return [Fixnum]
@@ -1734,6 +1739,7 @@ module Google
1734
1739
  @records_written = args[:records_written] if args.key?(:records_written)
1735
1740
  @shuffle_output_bytes = args[:shuffle_output_bytes] if args.key?(:shuffle_output_bytes)
1736
1741
  @shuffle_output_bytes_spilled = args[:shuffle_output_bytes_spilled] if args.key?(:shuffle_output_bytes_spilled)
1742
+ @slot_ms = args[:slot_ms] if args.key?(:slot_ms)
1737
1743
  @start_ms = args[:start_ms] if args.key?(:start_ms)
1738
1744
  @status = args[:status] if args.key?(:status)
1739
1745
  @steps = args[:steps] if args.key?(:steps)
@@ -1102,6 +1102,7 @@ module Google
1102
1102
  property :records_written, :numeric_string => true, as: 'recordsWritten'
1103
1103
  property :shuffle_output_bytes, :numeric_string => true, as: 'shuffleOutputBytes'
1104
1104
  property :shuffle_output_bytes_spilled, :numeric_string => true, as: 'shuffleOutputBytesSpilled'
1105
+ property :slot_ms, :numeric_string => true, as: 'slotMs'
1105
1106
  property :start_ms, :numeric_string => true, as: 'startMs'
1106
1107
  property :status, as: 'status'
1107
1108
  collection :steps, as: 'steps', class: Google::Apis::BigqueryV2::ExplainQueryStep, decorator: Google::Apis::BigqueryV2::ExplainQueryStep::Representation
@@ -858,6 +858,9 @@ module Google
858
858
  # Required. Dataset ID of the requested routine
859
859
  # @param [String] routine_id
860
860
  # Required. Routine ID of the requested routine
861
+ # @param [String] read_mask
862
+ # If set, only the Routine fields in the field mask are returned in the
863
+ # response. If unset, all Routine fields are returned.
861
864
  # @param [String] fields
862
865
  # Selector specifying which fields to include in a partial response.
863
866
  # @param [String] quota_user
@@ -877,13 +880,14 @@ module Google
877
880
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
878
881
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
879
882
  # @raise [Google::Apis::AuthorizationError] Authorization is required
880
- def get_routine(project_id, dataset_id, routine_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
883
+ def get_routine(project_id, dataset_id, routine_id, read_mask: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
881
884
  command = make_simple_command(:get, 'projects/{+projectId}/datasets/{+datasetId}/routines/{+routineId}', options)
882
885
  command.response_representation = Google::Apis::BigqueryV2::Routine::Representation
883
886
  command.response_class = Google::Apis::BigqueryV2::Routine
884
887
  command.params['projectId'] = project_id unless project_id.nil?
885
888
  command.params['datasetId'] = dataset_id unless dataset_id.nil?
886
889
  command.params['routineId'] = routine_id unless routine_id.nil?
890
+ command.query['readMask'] = read_mask unless read_mask.nil?
887
891
  command.query['fields'] = fields unless fields.nil?
888
892
  command.query['quotaUser'] = quota_user unless quota_user.nil?
889
893
  command.query['userIp'] = user_ip unless user_ip.nil?
@@ -935,12 +939,23 @@ module Google
935
939
  # Required. Project ID of the routines to list
936
940
  # @param [String] dataset_id
937
941
  # Required. Dataset ID of the routines to list
942
+ # @param [String] filter
943
+ # If set, then only the Routines matching this filter are returned.
944
+ # The current supported form is either "routine_type:<RoutineType>" or
945
+ # "routineType:<RoutineType>", where <RoutineType> is a RoutineType enum.
946
+ # Example: "routineType:SCALAR_FUNCTION".
938
947
  # @param [Fixnum] max_results
939
948
  # The maximum number of results to return in a single response page.
940
949
  # Leverage the page tokens to iterate through the entire collection.
941
950
  # @param [String] page_token
942
951
  # Page token, returned by a previous call, to request the next page of
943
952
  # results
953
+ # @param [String] read_mask
954
+ # If set, then only the Routine fields in the field mask, as well as
955
+ # project_id, dataset_id and routine_id, are returned in the response.
956
+ # If unset, then the following Routine fields are returned:
957
+ # etag, project_id, dataset_id, routine_id, routine_type, creation_time,
958
+ # last_modified_time, and language.
944
959
  # @param [String] fields
945
960
  # Selector specifying which fields to include in a partial response.
946
961
  # @param [String] quota_user
@@ -960,14 +975,16 @@ module Google
960
975
  # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
961
976
  # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
962
977
  # @raise [Google::Apis::AuthorizationError] Authorization is required
963
- def list_routines(project_id, dataset_id, max_results: nil, page_token: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
978
+ def list_routines(project_id, dataset_id, filter: nil, max_results: nil, page_token: nil, read_mask: nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block)
964
979
  command = make_simple_command(:get, 'projects/{+projectId}/datasets/{+datasetId}/routines', options)
965
980
  command.response_representation = Google::Apis::BigqueryV2::ListRoutinesResponse::Representation
966
981
  command.response_class = Google::Apis::BigqueryV2::ListRoutinesResponse
967
982
  command.params['projectId'] = project_id unless project_id.nil?
968
983
  command.params['datasetId'] = dataset_id unless dataset_id.nil?
984
+ command.query['filter'] = filter unless filter.nil?
969
985
  command.query['maxResults'] = max_results unless max_results.nil?
970
986
  command.query['pageToken'] = page_token unless page_token.nil?
987
+ command.query['readMask'] = read_mask unless read_mask.nil?
971
988
  command.query['fields'] = fields unless fields.nil?
972
989
  command.query['quotaUser'] = quota_user unless quota_user.nil?
973
990
  command.query['userIp'] = user_ip unless user_ip.nil?
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/bigquery/
26
26
  module BigqueryreservationV1alpha2
27
27
  VERSION = 'V1alpha2'
28
- REVISION = '20191029'
28
+ REVISION = '20191211'
29
29
 
30
30
  # View and manage your data in Google BigQuery
31
31
  AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'
@@ -306,6 +306,11 @@ module Google
306
306
  # @return [String]
307
307
  attr_accessor :reservation
308
308
 
309
+ # Output only. State of the ReservationGrant.
310
+ # Corresponds to the JSON property `state`
311
+ # @return [String]
312
+ attr_accessor :state
313
+
309
314
  def initialize(**args)
310
315
  update!(**args)
311
316
  end
@@ -316,6 +321,7 @@ module Google
316
321
  @job_type = args[:job_type] if args.key?(:job_type)
317
322
  @name = args[:name] if args.key?(:name)
318
323
  @reservation = args[:reservation] if args.key?(:reservation)
324
+ @state = args[:state] if args.key?(:state)
319
325
  end
320
326
  end
321
327
 
@@ -169,6 +169,7 @@ module Google
169
169
  property :job_type, as: 'jobType'
170
170
  property :name, as: 'name'
171
171
  property :reservation, as: 'reservation'
172
+ property :state, as: 'state'
172
173
  end
173
174
  end
174
175
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/bigquery/
26
26
  module BigqueryreservationV1beta1
27
27
  VERSION = 'V1beta1'
28
- REVISION = '20191203'
28
+ REVISION = '20191211'
29
29
 
30
30
  # View and manage your data in Google BigQuery
31
31
  AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery'
@@ -44,6 +44,11 @@ module Google
44
44
  # @return [String]
45
45
  attr_accessor :name
46
46
 
47
+ # Output only. State of the assignment.
48
+ # Corresponds to the JSON property `state`
49
+ # @return [String]
50
+ attr_accessor :state
51
+
47
52
  def initialize(**args)
48
53
  update!(**args)
49
54
  end
@@ -53,6 +58,7 @@ module Google
53
58
  @assignee = args[:assignee] if args.key?(:assignee)
54
59
  @job_type = args[:job_type] if args.key?(:job_type)
55
60
  @name = args[:name] if args.key?(:name)
61
+ @state = args[:state] if args.key?(:state)
56
62
  end
57
63
  end
58
64
 
@@ -112,6 +112,7 @@ module Google
112
112
  property :assignee, as: 'assignee'
113
113
  property :job_type, as: 'jobType'
114
114
  property :name, as: 'name'
115
+ property :state, as: 'state'
115
116
  end
116
117
  end
117
118
 
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/binary-authorization/
27
27
  module BinaryauthorizationV1
28
28
  VERSION = 'V1'
29
- REVISION = '20191206'
29
+ REVISION = '20191213'
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'
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/cloudbuild_v1alpha1/service.rb'
16
+ require 'google/apis/cloudbuild_v1alpha1/classes.rb'
17
+ require 'google/apis/cloudbuild_v1alpha1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud Build API
22
+ #
23
+ # Creates and manages builds on Google Cloud Platform.
24
+ #
25
+ # @see https://cloud.google.com/cloud-build/docs/
26
+ module CloudbuildV1alpha1
27
+ VERSION = 'V1alpha1'
28
+ REVISION = '20191212'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,1174 @@
1
+ # Copyright 2015 Google Inc.
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module CloudbuildV1alpha1
24
+
25
+ # Files in the workspace to upload to Cloud Storage upon successful
26
+ # completion of all build steps.
27
+ class ArtifactObjects
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # Cloud Storage bucket and optional object path, in the form
31
+ # "gs://bucket/path/to/somewhere/". (see [Bucket Name
32
+ # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)
33
+ # ).
34
+ # Files in the workspace matching any path pattern will be uploaded to
35
+ # Cloud Storage with this location as a prefix.
36
+ # Corresponds to the JSON property `location`
37
+ # @return [String]
38
+ attr_accessor :location
39
+
40
+ # Path globs used to match files in the build's workspace.
41
+ # Corresponds to the JSON property `paths`
42
+ # @return [Array<String>]
43
+ attr_accessor :paths
44
+
45
+ # Start and end times for a build execution phase.
46
+ # Corresponds to the JSON property `timing`
47
+ # @return [Google::Apis::CloudbuildV1alpha1::TimeSpan]
48
+ attr_accessor :timing
49
+
50
+ def initialize(**args)
51
+ update!(**args)
52
+ end
53
+
54
+ # Update properties of this object
55
+ def update!(**args)
56
+ @location = args[:location] if args.key?(:location)
57
+ @paths = args[:paths] if args.key?(:paths)
58
+ @timing = args[:timing] if args.key?(:timing)
59
+ end
60
+ end
61
+
62
+ # An artifact that was uploaded during a build. This
63
+ # is a single record in the artifact manifest JSON file.
64
+ class ArtifactResult
65
+ include Google::Apis::Core::Hashable
66
+
67
+ # The file hash of the artifact.
68
+ # Corresponds to the JSON property `fileHash`
69
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::FileHashes>]
70
+ attr_accessor :file_hash
71
+
72
+ # The path of an artifact in a Google Cloud Storage bucket, with the
73
+ # generation number. For example,
74
+ # `gs://mybucket/path/to/output.jar#generation`.
75
+ # Corresponds to the JSON property `location`
76
+ # @return [String]
77
+ attr_accessor :location
78
+
79
+ def initialize(**args)
80
+ update!(**args)
81
+ end
82
+
83
+ # Update properties of this object
84
+ def update!(**args)
85
+ @file_hash = args[:file_hash] if args.key?(:file_hash)
86
+ @location = args[:location] if args.key?(:location)
87
+ end
88
+ end
89
+
90
+ # Artifacts produced by a build that should be uploaded upon
91
+ # successful completion of all build steps.
92
+ class Artifacts
93
+ include Google::Apis::Core::Hashable
94
+
95
+ # A list of images to be pushed upon the successful completion of all build
96
+ # steps.
97
+ # The images will be pushed using the builder service account's credentials.
98
+ # The digests of the pushed images will be stored in the Build resource's
99
+ # results field.
100
+ # If any of the images fail to be pushed, the build is marked FAILURE.
101
+ # Corresponds to the JSON property `images`
102
+ # @return [Array<String>]
103
+ attr_accessor :images
104
+
105
+ # Files in the workspace to upload to Cloud Storage upon successful
106
+ # completion of all build steps.
107
+ # Corresponds to the JSON property `objects`
108
+ # @return [Google::Apis::CloudbuildV1alpha1::ArtifactObjects]
109
+ attr_accessor :objects
110
+
111
+ def initialize(**args)
112
+ update!(**args)
113
+ end
114
+
115
+ # Update properties of this object
116
+ def update!(**args)
117
+ @images = args[:images] if args.key?(:images)
118
+ @objects = args[:objects] if args.key?(:objects)
119
+ end
120
+ end
121
+
122
+ # A build resource in the Cloud Build API.
123
+ # At a high level, a `Build` describes where to find source code, how to build
124
+ # it (for example, the builder image to run on the source), and where to store
125
+ # the built artifacts.
126
+ # Fields can include the following variables, which will be expanded when the
127
+ # build is created:
128
+ # - $PROJECT_ID: the project ID of the build.
129
+ # - $BUILD_ID: the autogenerated ID of the build.
130
+ # - $REPO_NAME: the source repository name specified by RepoSource.
131
+ # - $BRANCH_NAME: the branch name specified by RepoSource.
132
+ # - $TAG_NAME: the tag name specified by RepoSource.
133
+ # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
134
+ # resolved from the specified branch or tag.
135
+ # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
136
+ class Build
137
+ include Google::Apis::Core::Hashable
138
+
139
+ # Artifacts produced by a build that should be uploaded upon
140
+ # successful completion of all build steps.
141
+ # Corresponds to the JSON property `artifacts`
142
+ # @return [Google::Apis::CloudbuildV1alpha1::Artifacts]
143
+ attr_accessor :artifacts
144
+
145
+ # Output only. The ID of the `BuildTrigger` that triggered this build, if it
146
+ # was triggered automatically.
147
+ # Corresponds to the JSON property `buildTriggerId`
148
+ # @return [String]
149
+ attr_accessor :build_trigger_id
150
+
151
+ # Output only. Time at which the request to create the build was received.
152
+ # Corresponds to the JSON property `createTime`
153
+ # @return [String]
154
+ attr_accessor :create_time
155
+
156
+ # Output only. Time at which execution of the build was finished.
157
+ # The difference between finish_time and start_time is the duration of the
158
+ # build's execution.
159
+ # Corresponds to the JSON property `finishTime`
160
+ # @return [String]
161
+ attr_accessor :finish_time
162
+
163
+ # Output only. Unique identifier of the build.
164
+ # Corresponds to the JSON property `id`
165
+ # @return [String]
166
+ attr_accessor :id
167
+
168
+ # A list of images to be pushed upon the successful completion of all build
169
+ # steps.
170
+ # The images are pushed using the builder service account's credentials.
171
+ # The digests of the pushed images will be stored in the `Build` resource's
172
+ # results field.
173
+ # If any of the images fail to be pushed, the build status is marked
174
+ # `FAILURE`.
175
+ # Corresponds to the JSON property `images`
176
+ # @return [Array<String>]
177
+ attr_accessor :images
178
+
179
+ # Output only. URL to logs for this build in Google Cloud Console.
180
+ # Corresponds to the JSON property `logUrl`
181
+ # @return [String]
182
+ attr_accessor :log_url
183
+
184
+ # Google Cloud Storage bucket where logs should be written (see
185
+ # [Bucket Name
186
+ # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)
187
+ # ).
188
+ # Logs file names will be of the format `$`logs_bucket`/log-$`build_id`.txt`.
189
+ # Corresponds to the JSON property `logsBucket`
190
+ # @return [String]
191
+ attr_accessor :logs_bucket
192
+
193
+ # Optional arguments to enable specific features of builds.
194
+ # Corresponds to the JSON property `options`
195
+ # @return [Google::Apis::CloudbuildV1alpha1::BuildOptions]
196
+ attr_accessor :options
197
+
198
+ # Output only. ID of the project.
199
+ # Corresponds to the JSON property `projectId`
200
+ # @return [String]
201
+ attr_accessor :project_id
202
+
203
+ # Artifacts created by the build pipeline.
204
+ # Corresponds to the JSON property `results`
205
+ # @return [Google::Apis::CloudbuildV1alpha1::Results]
206
+ attr_accessor :results
207
+
208
+ # Secrets to decrypt using Cloud Key Management Service.
209
+ # Corresponds to the JSON property `secrets`
210
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::Secret>]
211
+ attr_accessor :secrets
212
+
213
+ # Location of the source in a supported storage service.
214
+ # Corresponds to the JSON property `source`
215
+ # @return [Google::Apis::CloudbuildV1alpha1::Source]
216
+ attr_accessor :source
217
+
218
+ # Provenance of the source. Ways to find the original source, or verify that
219
+ # some source was used for this build.
220
+ # Corresponds to the JSON property `sourceProvenance`
221
+ # @return [Google::Apis::CloudbuildV1alpha1::SourceProvenance]
222
+ attr_accessor :source_provenance
223
+
224
+ # Output only. Time at which execution of the build was started.
225
+ # Corresponds to the JSON property `startTime`
226
+ # @return [String]
227
+ attr_accessor :start_time
228
+
229
+ # Output only. Status of the build.
230
+ # Corresponds to the JSON property `status`
231
+ # @return [String]
232
+ attr_accessor :status
233
+
234
+ # Output only. Customer-readable message about the current status.
235
+ # Corresponds to the JSON property `statusDetail`
236
+ # @return [String]
237
+ attr_accessor :status_detail
238
+
239
+ # Required. The operations to be performed on the workspace.
240
+ # Corresponds to the JSON property `steps`
241
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::BuildStep>]
242
+ attr_accessor :steps
243
+
244
+ # Substitutions data for `Build` resource.
245
+ # Corresponds to the JSON property `substitutions`
246
+ # @return [Hash<String,String>]
247
+ attr_accessor :substitutions
248
+
249
+ # Tags for annotation of a `Build`. These are not docker tags.
250
+ # Corresponds to the JSON property `tags`
251
+ # @return [Array<String>]
252
+ attr_accessor :tags
253
+
254
+ # Amount of time that this build should be allowed to run, to second
255
+ # granularity. If this amount of time elapses, work on the build will cease
256
+ # and the build status will be `TIMEOUT`.
257
+ # Default time is ten minutes.
258
+ # Corresponds to the JSON property `timeout`
259
+ # @return [String]
260
+ attr_accessor :timeout
261
+
262
+ # Output only. Stores timing information for phases of the build. Valid keys
263
+ # are:
264
+ # * BUILD: time to execute all build steps
265
+ # * PUSH: time to push all specified images.
266
+ # * FETCHSOURCE: time to fetch source.
267
+ # If the build does not specify source or images,
268
+ # these keys will not be included.
269
+ # Corresponds to the JSON property `timing`
270
+ # @return [Hash<String,Google::Apis::CloudbuildV1alpha1::TimeSpan>]
271
+ attr_accessor :timing
272
+
273
+ def initialize(**args)
274
+ update!(**args)
275
+ end
276
+
277
+ # Update properties of this object
278
+ def update!(**args)
279
+ @artifacts = args[:artifacts] if args.key?(:artifacts)
280
+ @build_trigger_id = args[:build_trigger_id] if args.key?(:build_trigger_id)
281
+ @create_time = args[:create_time] if args.key?(:create_time)
282
+ @finish_time = args[:finish_time] if args.key?(:finish_time)
283
+ @id = args[:id] if args.key?(:id)
284
+ @images = args[:images] if args.key?(:images)
285
+ @log_url = args[:log_url] if args.key?(:log_url)
286
+ @logs_bucket = args[:logs_bucket] if args.key?(:logs_bucket)
287
+ @options = args[:options] if args.key?(:options)
288
+ @project_id = args[:project_id] if args.key?(:project_id)
289
+ @results = args[:results] if args.key?(:results)
290
+ @secrets = args[:secrets] if args.key?(:secrets)
291
+ @source = args[:source] if args.key?(:source)
292
+ @source_provenance = args[:source_provenance] if args.key?(:source_provenance)
293
+ @start_time = args[:start_time] if args.key?(:start_time)
294
+ @status = args[:status] if args.key?(:status)
295
+ @status_detail = args[:status_detail] if args.key?(:status_detail)
296
+ @steps = args[:steps] if args.key?(:steps)
297
+ @substitutions = args[:substitutions] if args.key?(:substitutions)
298
+ @tags = args[:tags] if args.key?(:tags)
299
+ @timeout = args[:timeout] if args.key?(:timeout)
300
+ @timing = args[:timing] if args.key?(:timing)
301
+ end
302
+ end
303
+
304
+ # Metadata for build operations.
305
+ class BuildOperationMetadata
306
+ include Google::Apis::Core::Hashable
307
+
308
+ # A build resource in the Cloud Build API.
309
+ # At a high level, a `Build` describes where to find source code, how to build
310
+ # it (for example, the builder image to run on the source), and where to store
311
+ # the built artifacts.
312
+ # Fields can include the following variables, which will be expanded when the
313
+ # build is created:
314
+ # - $PROJECT_ID: the project ID of the build.
315
+ # - $BUILD_ID: the autogenerated ID of the build.
316
+ # - $REPO_NAME: the source repository name specified by RepoSource.
317
+ # - $BRANCH_NAME: the branch name specified by RepoSource.
318
+ # - $TAG_NAME: the tag name specified by RepoSource.
319
+ # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or
320
+ # resolved from the specified branch or tag.
321
+ # - $SHORT_SHA: first 7 characters of $REVISION_ID or $COMMIT_SHA.
322
+ # Corresponds to the JSON property `build`
323
+ # @return [Google::Apis::CloudbuildV1alpha1::Build]
324
+ attr_accessor :build
325
+
326
+ def initialize(**args)
327
+ update!(**args)
328
+ end
329
+
330
+ # Update properties of this object
331
+ def update!(**args)
332
+ @build = args[:build] if args.key?(:build)
333
+ end
334
+ end
335
+
336
+ # Optional arguments to enable specific features of builds.
337
+ class BuildOptions
338
+ include Google::Apis::Core::Hashable
339
+
340
+ # Requested disk size for the VM that runs the build. Note that this is *NOT*
341
+ # "disk free"; some of the space will be used by the operating system and
342
+ # build utilities. Also note that this is the minimum disk size that will be
343
+ # allocated for the build -- the build may run with a larger disk than
344
+ # requested. At present, the maximum disk size is 1000GB; builds that request
345
+ # more than the maximum are rejected with an error.
346
+ # Corresponds to the JSON property `diskSizeGb`
347
+ # @return [Fixnum]
348
+ attr_accessor :disk_size_gb
349
+
350
+ # A list of global environment variable definitions that will exist for all
351
+ # build steps in this build. If a variable is defined in both globally and in
352
+ # a build step, the variable will use the build step value.
353
+ # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
354
+ # being given the value "VALUE".
355
+ # Corresponds to the JSON property `env`
356
+ # @return [Array<String>]
357
+ attr_accessor :env
358
+
359
+ # Option to define build log streaming behavior to Google Cloud
360
+ # Storage.
361
+ # Corresponds to the JSON property `logStreamingOption`
362
+ # @return [String]
363
+ attr_accessor :log_streaming_option
364
+
365
+ # Option to specify the logging mode, which determines where the logs are
366
+ # stored.
367
+ # Corresponds to the JSON property `logging`
368
+ # @return [String]
369
+ attr_accessor :logging
370
+
371
+ # Compute Engine machine type on which to run the build.
372
+ # Corresponds to the JSON property `machineType`
373
+ # @return [String]
374
+ attr_accessor :machine_type
375
+
376
+ # Requested verifiability options.
377
+ # Corresponds to the JSON property `requestedVerifyOption`
378
+ # @return [String]
379
+ attr_accessor :requested_verify_option
380
+
381
+ # A list of global environment variables, which are encrypted using a Cloud
382
+ # Key Management Service crypto key. These values must be specified in the
383
+ # build's `Secret`. These variables will be available to all build steps
384
+ # in this build.
385
+ # Corresponds to the JSON property `secretEnv`
386
+ # @return [Array<String>]
387
+ attr_accessor :secret_env
388
+
389
+ # Requested hash for SourceProvenance.
390
+ # Corresponds to the JSON property `sourceProvenanceHash`
391
+ # @return [Array<String>]
392
+ attr_accessor :source_provenance_hash
393
+
394
+ # Option to specify behavior when there is an error in the substitution
395
+ # checks.
396
+ # Corresponds to the JSON property `substitutionOption`
397
+ # @return [String]
398
+ attr_accessor :substitution_option
399
+
400
+ # Global list of volumes to mount for ALL build steps
401
+ # Each volume is created as an empty volume prior to starting the build
402
+ # process. Upon completion of the build, volumes and their contents are
403
+ # discarded. Global volume names and paths cannot conflict with the volumes
404
+ # defined a build step.
405
+ # Using a global volume in a build with only one step is not valid as
406
+ # it is indicative of a build request with an incorrect configuration.
407
+ # Corresponds to the JSON property `volumes`
408
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::Volume>]
409
+ attr_accessor :volumes
410
+
411
+ # Option to specify a `WorkerPool` for the build.
412
+ # Format: projects/`project`/workerPools/`workerPool`
413
+ # This field is experimental.
414
+ # Corresponds to the JSON property `workerPool`
415
+ # @return [String]
416
+ attr_accessor :worker_pool
417
+
418
+ def initialize(**args)
419
+ update!(**args)
420
+ end
421
+
422
+ # Update properties of this object
423
+ def update!(**args)
424
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
425
+ @env = args[:env] if args.key?(:env)
426
+ @log_streaming_option = args[:log_streaming_option] if args.key?(:log_streaming_option)
427
+ @logging = args[:logging] if args.key?(:logging)
428
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
429
+ @requested_verify_option = args[:requested_verify_option] if args.key?(:requested_verify_option)
430
+ @secret_env = args[:secret_env] if args.key?(:secret_env)
431
+ @source_provenance_hash = args[:source_provenance_hash] if args.key?(:source_provenance_hash)
432
+ @substitution_option = args[:substitution_option] if args.key?(:substitution_option)
433
+ @volumes = args[:volumes] if args.key?(:volumes)
434
+ @worker_pool = args[:worker_pool] if args.key?(:worker_pool)
435
+ end
436
+ end
437
+
438
+ # A step in the build pipeline.
439
+ class BuildStep
440
+ include Google::Apis::Core::Hashable
441
+
442
+ # A list of arguments that will be presented to the step when it is started.
443
+ # If the image used to run the step's container has an entrypoint, the `args`
444
+ # are used as arguments to that entrypoint. If the image does not define
445
+ # an entrypoint, the first element in args is used as the entrypoint,
446
+ # and the remainder will be used as arguments.
447
+ # Corresponds to the JSON property `args`
448
+ # @return [Array<String>]
449
+ attr_accessor :args
450
+
451
+ # Working directory to use when running this step's container.
452
+ # If this value is a relative path, it is relative to the build's working
453
+ # directory. If this value is absolute, it may be outside the build's working
454
+ # directory, in which case the contents of the path may not be persisted
455
+ # across build step executions, unless a `volume` for that path is specified.
456
+ # If the build specifies a `RepoSource` with `dir` and a step with a `dir`,
457
+ # which specifies an absolute path, the `RepoSource` `dir` is ignored for
458
+ # the step's execution.
459
+ # Corresponds to the JSON property `dir`
460
+ # @return [String]
461
+ attr_accessor :dir
462
+
463
+ # Entrypoint to be used instead of the build step image's default entrypoint.
464
+ # If unset, the image's default entrypoint is used.
465
+ # Corresponds to the JSON property `entrypoint`
466
+ # @return [String]
467
+ attr_accessor :entrypoint
468
+
469
+ # A list of environment variable definitions to be used when running a step.
470
+ # The elements are of the form "KEY=VALUE" for the environment variable "KEY"
471
+ # being given the value "VALUE".
472
+ # Corresponds to the JSON property `env`
473
+ # @return [Array<String>]
474
+ attr_accessor :env
475
+
476
+ # Unique identifier for this build step, used in `wait_for` to
477
+ # reference this build step as a dependency.
478
+ # Corresponds to the JSON property `id`
479
+ # @return [String]
480
+ attr_accessor :id
481
+
482
+ # Required. The name of the container image that will run this particular
483
+ # build step.
484
+ # If the image is available in the host's Docker daemon's cache, it
485
+ # will be run directly. If not, the host will attempt to pull the image
486
+ # first, using the builder service account's credentials if necessary.
487
+ # The Docker daemon's cache will already have the latest versions of all of
488
+ # the officially supported build steps
489
+ # ([https://github.com/GoogleCloudPlatform/cloud-builders](https://github.com/
490
+ # GoogleCloudPlatform/cloud-builders)).
491
+ # The Docker daemon will also have cached many of the layers for some popular
492
+ # images, like "ubuntu", "debian", but they will be refreshed at the time you
493
+ # attempt to use them.
494
+ # If you built an image in a previous build step, it will be stored in the
495
+ # host's Docker daemon's cache and is available to use as the name for a
496
+ # later build step.
497
+ # Corresponds to the JSON property `name`
498
+ # @return [String]
499
+ attr_accessor :name
500
+
501
+ # Start and end times for a build execution phase.
502
+ # Corresponds to the JSON property `pullTiming`
503
+ # @return [Google::Apis::CloudbuildV1alpha1::TimeSpan]
504
+ attr_accessor :pull_timing
505
+
506
+ # A list of environment variables which are encrypted using a Cloud Key
507
+ # Management Service crypto key. These values must be specified in the
508
+ # build's `Secret`.
509
+ # Corresponds to the JSON property `secretEnv`
510
+ # @return [Array<String>]
511
+ attr_accessor :secret_env
512
+
513
+ # Output only. Status of the build step. At this time, build step status is
514
+ # only updated on build completion; step status is not updated in real-time
515
+ # as the build progresses.
516
+ # Corresponds to the JSON property `status`
517
+ # @return [String]
518
+ attr_accessor :status
519
+
520
+ # Time limit for executing this build step. If not defined, the step has no
521
+ # time limit and will be allowed to continue to run until either it completes
522
+ # or the build itself times out.
523
+ # Corresponds to the JSON property `timeout`
524
+ # @return [String]
525
+ attr_accessor :timeout
526
+
527
+ # Start and end times for a build execution phase.
528
+ # Corresponds to the JSON property `timing`
529
+ # @return [Google::Apis::CloudbuildV1alpha1::TimeSpan]
530
+ attr_accessor :timing
531
+
532
+ # List of volumes to mount into the build step.
533
+ # Each volume is created as an empty volume prior to execution of the
534
+ # build step. Upon completion of the build, volumes and their contents are
535
+ # discarded.
536
+ # Using a named volume in only one step is not valid as it is indicative
537
+ # of a build request with an incorrect configuration.
538
+ # Corresponds to the JSON property `volumes`
539
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::Volume>]
540
+ attr_accessor :volumes
541
+
542
+ # The ID(s) of the step(s) that this build step depends on.
543
+ # This build step will not start until all the build steps in `wait_for`
544
+ # have completed successfully. If `wait_for` is empty, this build step will
545
+ # start when all previous build steps in the `Build.Steps` list have
546
+ # completed successfully.
547
+ # Corresponds to the JSON property `waitFor`
548
+ # @return [Array<String>]
549
+ attr_accessor :wait_for
550
+
551
+ def initialize(**args)
552
+ update!(**args)
553
+ end
554
+
555
+ # Update properties of this object
556
+ def update!(**args)
557
+ @args = args[:args] if args.key?(:args)
558
+ @dir = args[:dir] if args.key?(:dir)
559
+ @entrypoint = args[:entrypoint] if args.key?(:entrypoint)
560
+ @env = args[:env] if args.key?(:env)
561
+ @id = args[:id] if args.key?(:id)
562
+ @name = args[:name] if args.key?(:name)
563
+ @pull_timing = args[:pull_timing] if args.key?(:pull_timing)
564
+ @secret_env = args[:secret_env] if args.key?(:secret_env)
565
+ @status = args[:status] if args.key?(:status)
566
+ @timeout = args[:timeout] if args.key?(:timeout)
567
+ @timing = args[:timing] if args.key?(:timing)
568
+ @volumes = args[:volumes] if args.key?(:volumes)
569
+ @wait_for = args[:wait_for] if args.key?(:wait_for)
570
+ end
571
+ end
572
+
573
+ # An image built by the pipeline.
574
+ class BuiltImage
575
+ include Google::Apis::Core::Hashable
576
+
577
+ # Docker Registry 2.0 digest.
578
+ # Corresponds to the JSON property `digest`
579
+ # @return [String]
580
+ attr_accessor :digest
581
+
582
+ # Name used to push the container image to Google Container Registry, as
583
+ # presented to `docker push`.
584
+ # Corresponds to the JSON property `name`
585
+ # @return [String]
586
+ attr_accessor :name
587
+
588
+ # Start and end times for a build execution phase.
589
+ # Corresponds to the JSON property `pushTiming`
590
+ # @return [Google::Apis::CloudbuildV1alpha1::TimeSpan]
591
+ attr_accessor :push_timing
592
+
593
+ def initialize(**args)
594
+ update!(**args)
595
+ end
596
+
597
+ # Update properties of this object
598
+ def update!(**args)
599
+ @digest = args[:digest] if args.key?(:digest)
600
+ @name = args[:name] if args.key?(:name)
601
+ @push_timing = args[:push_timing] if args.key?(:push_timing)
602
+ end
603
+ end
604
+
605
+ # A generic empty message that you can re-use to avoid defining duplicated
606
+ # empty messages in your APIs. A typical example is to use it as the request
607
+ # or the response type of an API method. For instance:
608
+ # service Foo `
609
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
610
+ # `
611
+ # The JSON representation for `Empty` is empty JSON object ````.
612
+ class Empty
613
+ include Google::Apis::Core::Hashable
614
+
615
+ def initialize(**args)
616
+ update!(**args)
617
+ end
618
+
619
+ # Update properties of this object
620
+ def update!(**args)
621
+ end
622
+ end
623
+
624
+ # Container message for hashes of byte content of files, used in
625
+ # SourceProvenance messages to verify integrity of source input to the build.
626
+ class FileHashes
627
+ include Google::Apis::Core::Hashable
628
+
629
+ # Collection of file hashes.
630
+ # Corresponds to the JSON property `fileHash`
631
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::HashProp>]
632
+ attr_accessor :file_hash
633
+
634
+ def initialize(**args)
635
+ update!(**args)
636
+ end
637
+
638
+ # Update properties of this object
639
+ def update!(**args)
640
+ @file_hash = args[:file_hash] if args.key?(:file_hash)
641
+ end
642
+ end
643
+
644
+ # Container message for hash values.
645
+ class HashProp
646
+ include Google::Apis::Core::Hashable
647
+
648
+ # The type of hash that was performed.
649
+ # Corresponds to the JSON property `type`
650
+ # @return [String]
651
+ attr_accessor :type
652
+
653
+ # The hash value.
654
+ # Corresponds to the JSON property `value`
655
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
656
+ # @return [String]
657
+ attr_accessor :value
658
+
659
+ def initialize(**args)
660
+ update!(**args)
661
+ end
662
+
663
+ # Update properties of this object
664
+ def update!(**args)
665
+ @type = args[:type] if args.key?(:type)
666
+ @value = args[:value] if args.key?(:value)
667
+ end
668
+ end
669
+
670
+ # Response containing existing `WorkerPools`.
671
+ class ListWorkerPoolsResponse
672
+ include Google::Apis::Core::Hashable
673
+
674
+ # `WorkerPools` for the project.
675
+ # Corresponds to the JSON property `workerPools`
676
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::WorkerPool>]
677
+ attr_accessor :worker_pools
678
+
679
+ def initialize(**args)
680
+ update!(**args)
681
+ end
682
+
683
+ # Update properties of this object
684
+ def update!(**args)
685
+ @worker_pools = args[:worker_pools] if args.key?(:worker_pools)
686
+ end
687
+ end
688
+
689
+ # Network describes the GCP network used to create workers in.
690
+ class Network
691
+ include Google::Apis::Core::Hashable
692
+
693
+ # Network on which the workers are created.
694
+ # "default" network is used if empty.
695
+ # Corresponds to the JSON property `network`
696
+ # @return [String]
697
+ attr_accessor :network
698
+
699
+ # Project id containing the defined network and subnetwork. For a peered VPC,
700
+ # this will be the same as the project_id in which the workers are created.
701
+ # For a shared VPC, this will be the project sharing the network with the
702
+ # project_id project in which workers will be created. For custom workers
703
+ # with no VPC, this will be the same as project_id.
704
+ # Corresponds to the JSON property `projectId`
705
+ # @return [String]
706
+ attr_accessor :project_id
707
+
708
+ # Subnetwork on which the workers are created.
709
+ # "default" subnetwork is used if empty.
710
+ # Corresponds to the JSON property `subnetwork`
711
+ # @return [String]
712
+ attr_accessor :subnetwork
713
+
714
+ def initialize(**args)
715
+ update!(**args)
716
+ end
717
+
718
+ # Update properties of this object
719
+ def update!(**args)
720
+ @network = args[:network] if args.key?(:network)
721
+ @project_id = args[:project_id] if args.key?(:project_id)
722
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
723
+ end
724
+ end
725
+
726
+ # Location of the source in a Google Cloud Source Repository.
727
+ class RepoSource
728
+ include Google::Apis::Core::Hashable
729
+
730
+ # Regex matching branches to build.
731
+ # The syntax of the regular expressions accepted is the syntax accepted by
732
+ # RE2 and described at https://github.com/google/re2/wiki/Syntax
733
+ # Corresponds to the JSON property `branchName`
734
+ # @return [String]
735
+ attr_accessor :branch_name
736
+
737
+ # Explicit commit SHA to build.
738
+ # Corresponds to the JSON property `commitSha`
739
+ # @return [String]
740
+ attr_accessor :commit_sha
741
+
742
+ # Directory, relative to the source root, in which to run the build.
743
+ # This must be a relative path. If a step's `dir` is specified and is an
744
+ # absolute path, this value is ignored for that step's execution.
745
+ # Corresponds to the JSON property `dir`
746
+ # @return [String]
747
+ attr_accessor :dir
748
+
749
+ # ID of the project that owns the Cloud Source Repository. If omitted, the
750
+ # project ID requesting the build is assumed.
751
+ # Corresponds to the JSON property `projectId`
752
+ # @return [String]
753
+ attr_accessor :project_id
754
+
755
+ # Required. Name of the Cloud Source Repository.
756
+ # Corresponds to the JSON property `repoName`
757
+ # @return [String]
758
+ attr_accessor :repo_name
759
+
760
+ # Substitutions to use in a triggered build.
761
+ # Should only be used with RunBuildTrigger
762
+ # Corresponds to the JSON property `substitutions`
763
+ # @return [Hash<String,String>]
764
+ attr_accessor :substitutions
765
+
766
+ # Regex matching tags to build.
767
+ # The syntax of the regular expressions accepted is the syntax accepted by
768
+ # RE2 and described at https://github.com/google/re2/wiki/Syntax
769
+ # Corresponds to the JSON property `tagName`
770
+ # @return [String]
771
+ attr_accessor :tag_name
772
+
773
+ def initialize(**args)
774
+ update!(**args)
775
+ end
776
+
777
+ # Update properties of this object
778
+ def update!(**args)
779
+ @branch_name = args[:branch_name] if args.key?(:branch_name)
780
+ @commit_sha = args[:commit_sha] if args.key?(:commit_sha)
781
+ @dir = args[:dir] if args.key?(:dir)
782
+ @project_id = args[:project_id] if args.key?(:project_id)
783
+ @repo_name = args[:repo_name] if args.key?(:repo_name)
784
+ @substitutions = args[:substitutions] if args.key?(:substitutions)
785
+ @tag_name = args[:tag_name] if args.key?(:tag_name)
786
+ end
787
+ end
788
+
789
+ # Artifacts created by the build pipeline.
790
+ class Results
791
+ include Google::Apis::Core::Hashable
792
+
793
+ # Path to the artifact manifest. Only populated when artifacts are uploaded.
794
+ # Corresponds to the JSON property `artifactManifest`
795
+ # @return [String]
796
+ attr_accessor :artifact_manifest
797
+
798
+ # Start and end times for a build execution phase.
799
+ # Corresponds to the JSON property `artifactTiming`
800
+ # @return [Google::Apis::CloudbuildV1alpha1::TimeSpan]
801
+ attr_accessor :artifact_timing
802
+
803
+ # List of build step digests, in the order corresponding to build step
804
+ # indices.
805
+ # Corresponds to the JSON property `buildStepImages`
806
+ # @return [Array<String>]
807
+ attr_accessor :build_step_images
808
+
809
+ # List of build step outputs, produced by builder images, in the order
810
+ # corresponding to build step indices.
811
+ # [Cloud Builders](https://cloud.google.com/cloud-build/docs/cloud-builders)
812
+ # can produce this output by writing to `$BUILDER_OUTPUT/output`.
813
+ # Only the first 4KB of data is stored.
814
+ # Corresponds to the JSON property `buildStepOutputs`
815
+ # @return [Array<String>]
816
+ attr_accessor :build_step_outputs
817
+
818
+ # Container images that were built as a part of the build.
819
+ # Corresponds to the JSON property `images`
820
+ # @return [Array<Google::Apis::CloudbuildV1alpha1::BuiltImage>]
821
+ attr_accessor :images
822
+
823
+ # Number of artifacts uploaded. Only populated when artifacts are uploaded.
824
+ # Corresponds to the JSON property `numArtifacts`
825
+ # @return [Fixnum]
826
+ attr_accessor :num_artifacts
827
+
828
+ def initialize(**args)
829
+ update!(**args)
830
+ end
831
+
832
+ # Update properties of this object
833
+ def update!(**args)
834
+ @artifact_manifest = args[:artifact_manifest] if args.key?(:artifact_manifest)
835
+ @artifact_timing = args[:artifact_timing] if args.key?(:artifact_timing)
836
+ @build_step_images = args[:build_step_images] if args.key?(:build_step_images)
837
+ @build_step_outputs = args[:build_step_outputs] if args.key?(:build_step_outputs)
838
+ @images = args[:images] if args.key?(:images)
839
+ @num_artifacts = args[:num_artifacts] if args.key?(:num_artifacts)
840
+ end
841
+ end
842
+
843
+ # Pairs a set of secret environment variables containing encrypted
844
+ # values with the Cloud KMS key to use to decrypt the value.
845
+ class Secret
846
+ include Google::Apis::Core::Hashable
847
+
848
+ # Cloud KMS key name to use to decrypt these envs.
849
+ # Corresponds to the JSON property `kmsKeyName`
850
+ # @return [String]
851
+ attr_accessor :kms_key_name
852
+
853
+ # Map of environment variable name to its encrypted value.
854
+ # Secret environment variables must be unique across all of a build's
855
+ # secrets, and must be used by at least one build step. Values can be at most
856
+ # 64 KB in size. There can be at most 100 secret values across all of a
857
+ # build's secrets.
858
+ # Corresponds to the JSON property `secretEnv`
859
+ # @return [Hash<String,String>]
860
+ attr_accessor :secret_env
861
+
862
+ def initialize(**args)
863
+ update!(**args)
864
+ end
865
+
866
+ # Update properties of this object
867
+ def update!(**args)
868
+ @kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
869
+ @secret_env = args[:secret_env] if args.key?(:secret_env)
870
+ end
871
+ end
872
+
873
+ # Location of the source in a supported storage service.
874
+ class Source
875
+ include Google::Apis::Core::Hashable
876
+
877
+ # Location of the source in a Google Cloud Source Repository.
878
+ # Corresponds to the JSON property `repoSource`
879
+ # @return [Google::Apis::CloudbuildV1alpha1::RepoSource]
880
+ attr_accessor :repo_source
881
+
882
+ # Location of the source in an archive file in Google Cloud Storage.
883
+ # Corresponds to the JSON property `storageSource`
884
+ # @return [Google::Apis::CloudbuildV1alpha1::StorageSource]
885
+ attr_accessor :storage_source
886
+
887
+ def initialize(**args)
888
+ update!(**args)
889
+ end
890
+
891
+ # Update properties of this object
892
+ def update!(**args)
893
+ @repo_source = args[:repo_source] if args.key?(:repo_source)
894
+ @storage_source = args[:storage_source] if args.key?(:storage_source)
895
+ end
896
+ end
897
+
898
+ # Provenance of the source. Ways to find the original source, or verify that
899
+ # some source was used for this build.
900
+ class SourceProvenance
901
+ include Google::Apis::Core::Hashable
902
+
903
+ # Output only. Hash(es) of the build source, which can be used to verify that
904
+ # the original source integrity was maintained in the build. Note that
905
+ # `FileHashes` will only be populated if `BuildOptions` has requested a
906
+ # `SourceProvenanceHash`.
907
+ # The keys to this map are file paths used as build source and the values
908
+ # contain the hash values for those files.
909
+ # If the build source came in a single package such as a gzipped tarfile
910
+ # (`.tar.gz`), the `FileHash` will be for the single path to that file.
911
+ # Corresponds to the JSON property `fileHashes`
912
+ # @return [Hash<String,Google::Apis::CloudbuildV1alpha1::FileHashes>]
913
+ attr_accessor :file_hashes
914
+
915
+ # Location of the source in a Google Cloud Source Repository.
916
+ # Corresponds to the JSON property `resolvedRepoSource`
917
+ # @return [Google::Apis::CloudbuildV1alpha1::RepoSource]
918
+ attr_accessor :resolved_repo_source
919
+
920
+ # Location of the source in an archive file in Google Cloud Storage.
921
+ # Corresponds to the JSON property `resolvedStorageSource`
922
+ # @return [Google::Apis::CloudbuildV1alpha1::StorageSource]
923
+ attr_accessor :resolved_storage_source
924
+
925
+ def initialize(**args)
926
+ update!(**args)
927
+ end
928
+
929
+ # Update properties of this object
930
+ def update!(**args)
931
+ @file_hashes = args[:file_hashes] if args.key?(:file_hashes)
932
+ @resolved_repo_source = args[:resolved_repo_source] if args.key?(:resolved_repo_source)
933
+ @resolved_storage_source = args[:resolved_storage_source] if args.key?(:resolved_storage_source)
934
+ end
935
+ end
936
+
937
+ # Location of the source in an archive file in Google Cloud Storage.
938
+ class StorageSource
939
+ include Google::Apis::Core::Hashable
940
+
941
+ # Google Cloud Storage bucket containing the source (see
942
+ # [Bucket Name
943
+ # Requirements](https://cloud.google.com/storage/docs/bucket-naming#requirements)
944
+ # ).
945
+ # Corresponds to the JSON property `bucket`
946
+ # @return [String]
947
+ attr_accessor :bucket
948
+
949
+ # Google Cloud Storage generation for the object. If the generation is
950
+ # omitted, the latest generation will be used.
951
+ # Corresponds to the JSON property `generation`
952
+ # @return [Fixnum]
953
+ attr_accessor :generation
954
+
955
+ # Google Cloud Storage object containing the source.
956
+ # This object must be a gzipped archive file (`.tar.gz`) containing source to
957
+ # build.
958
+ # Corresponds to the JSON property `object`
959
+ # @return [String]
960
+ attr_accessor :object
961
+
962
+ def initialize(**args)
963
+ update!(**args)
964
+ end
965
+
966
+ # Update properties of this object
967
+ def update!(**args)
968
+ @bucket = args[:bucket] if args.key?(:bucket)
969
+ @generation = args[:generation] if args.key?(:generation)
970
+ @object = args[:object] if args.key?(:object)
971
+ end
972
+ end
973
+
974
+ # Start and end times for a build execution phase.
975
+ class TimeSpan
976
+ include Google::Apis::Core::Hashable
977
+
978
+ # End of time span.
979
+ # Corresponds to the JSON property `endTime`
980
+ # @return [String]
981
+ attr_accessor :end_time
982
+
983
+ # Start of time span.
984
+ # Corresponds to the JSON property `startTime`
985
+ # @return [String]
986
+ attr_accessor :start_time
987
+
988
+ def initialize(**args)
989
+ update!(**args)
990
+ end
991
+
992
+ # Update properties of this object
993
+ def update!(**args)
994
+ @end_time = args[:end_time] if args.key?(:end_time)
995
+ @start_time = args[:start_time] if args.key?(:start_time)
996
+ end
997
+ end
998
+
999
+ # Volume describes a Docker container volume which is mounted into build steps
1000
+ # in order to persist files across build step execution.
1001
+ class Volume
1002
+ include Google::Apis::Core::Hashable
1003
+
1004
+ # Name of the volume to mount.
1005
+ # Volume names must be unique per build step and must be valid names for
1006
+ # Docker volumes. Each named volume must be used by at least two build steps.
1007
+ # Corresponds to the JSON property `name`
1008
+ # @return [String]
1009
+ attr_accessor :name
1010
+
1011
+ # Path at which to mount the volume.
1012
+ # Paths must be absolute and cannot conflict with other volume paths on the
1013
+ # same build step or with certain reserved volume paths.
1014
+ # Corresponds to the JSON property `path`
1015
+ # @return [String]
1016
+ attr_accessor :path
1017
+
1018
+ def initialize(**args)
1019
+ update!(**args)
1020
+ end
1021
+
1022
+ # Update properties of this object
1023
+ def update!(**args)
1024
+ @name = args[:name] if args.key?(:name)
1025
+ @path = args[:path] if args.key?(:path)
1026
+ end
1027
+ end
1028
+
1029
+ # WorkerConfig defines the configuration to be used for a creating workers in
1030
+ # the pool.
1031
+ class WorkerConfig
1032
+ include Google::Apis::Core::Hashable
1033
+
1034
+ # Size of the disk attached to the worker, in GB.
1035
+ # See https://cloud.google.com/compute/docs/disks/
1036
+ # If `0` is specified, Cloud Build will use a standard disk size.
1037
+ # `disk_size` is overridden if you specify a different disk size in
1038
+ # `build_options`. In this case, a VM with a disk size specified in the
1039
+ # `build_options` will be created on demand at build time. For more
1040
+ # information see
1041
+ # https://cloud.google.com/cloud-build/docs/api/reference/rest/v1/projects.
1042
+ # builds#buildoptions
1043
+ # Corresponds to the JSON property `diskSizeGb`
1044
+ # @return [Fixnum]
1045
+ attr_accessor :disk_size_gb
1046
+
1047
+ # Machine Type of the worker, such as n1-standard-1.
1048
+ # See https://cloud.google.com/compute/docs/machine-types.
1049
+ # If left blank, Cloud Build will use a standard unspecified machine to
1050
+ # create the worker pool.
1051
+ # `machine_type` is overridden if you specify a different machine type in
1052
+ # `build_options`. In this case, the VM specified in the `build_options`
1053
+ # will be created on demand at build time. For more information see
1054
+ # https://cloud.google.com/cloud-build/docs/speeding-up-builds#
1055
+ # using_custom_virtual_machine_sizes
1056
+ # Corresponds to the JSON property `machineType`
1057
+ # @return [String]
1058
+ attr_accessor :machine_type
1059
+
1060
+ # Network describes the GCP network used to create workers in.
1061
+ # Corresponds to the JSON property `network`
1062
+ # @return [Google::Apis::CloudbuildV1alpha1::Network]
1063
+ attr_accessor :network
1064
+
1065
+ # The tag applied to the worker, and the same tag used by the firewall rule.
1066
+ # It is used to identify the Cloud Build workers among other VMs.
1067
+ # The default value for tag is `worker`.
1068
+ # Corresponds to the JSON property `tag`
1069
+ # @return [String]
1070
+ attr_accessor :tag
1071
+
1072
+ def initialize(**args)
1073
+ update!(**args)
1074
+ end
1075
+
1076
+ # Update properties of this object
1077
+ def update!(**args)
1078
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
1079
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
1080
+ @network = args[:network] if args.key?(:network)
1081
+ @tag = args[:tag] if args.key?(:tag)
1082
+ end
1083
+ end
1084
+
1085
+ # Configuration for a WorkerPool to run the builds.
1086
+ # Workers are machines that Cloud Build uses to run your builds. By default,
1087
+ # all workers run in a project owned by Cloud Build. To have full control over
1088
+ # the workers that execute your builds -- such as enabling them to access
1089
+ # private resources on your private network -- you can request Cloud Build to
1090
+ # run the workers in your own project by creating a custom workers pool.
1091
+ class WorkerPool
1092
+ include Google::Apis::Core::Hashable
1093
+
1094
+ # Output only. Time at which the request to create the `WorkerPool` was
1095
+ # received.
1096
+ # Corresponds to the JSON property `createTime`
1097
+ # @return [String]
1098
+ attr_accessor :create_time
1099
+
1100
+ # Output only. Time at which the request to delete the `WorkerPool` was
1101
+ # received.
1102
+ # Corresponds to the JSON property `deleteTime`
1103
+ # @return [String]
1104
+ attr_accessor :delete_time
1105
+
1106
+ # User-defined name of the `WorkerPool`.
1107
+ # Corresponds to the JSON property `name`
1108
+ # @return [String]
1109
+ attr_accessor :name
1110
+
1111
+ # The project ID of the GCP project for which the `WorkerPool` is created.
1112
+ # Corresponds to the JSON property `projectId`
1113
+ # @return [String]
1114
+ attr_accessor :project_id
1115
+
1116
+ # List of regions to create the `WorkerPool`. Regions can't be empty.
1117
+ # If Cloud Build adds a new GCP region in the future, the existing
1118
+ # `WorkerPool` will not be enabled in the new region automatically;
1119
+ # you must add the new region to the `regions` field to enable the
1120
+ # `WorkerPool` in that region.
1121
+ # Corresponds to the JSON property `regions`
1122
+ # @return [Array<String>]
1123
+ attr_accessor :regions
1124
+
1125
+ # Output only. The service account used to manage the `WorkerPool`. The
1126
+ # service account must have the Compute Instance Admin (Beta) permission at
1127
+ # the project level.
1128
+ # Corresponds to the JSON property `serviceAccountEmail`
1129
+ # @return [String]
1130
+ attr_accessor :service_account_email
1131
+
1132
+ # Output only. WorkerPool Status.
1133
+ # Corresponds to the JSON property `status`
1134
+ # @return [String]
1135
+ attr_accessor :status
1136
+
1137
+ # Output only. Time at which the request to update the `WorkerPool` was
1138
+ # received.
1139
+ # Corresponds to the JSON property `updateTime`
1140
+ # @return [String]
1141
+ attr_accessor :update_time
1142
+
1143
+ # WorkerConfig defines the configuration to be used for a creating workers in
1144
+ # the pool.
1145
+ # Corresponds to the JSON property `workerConfig`
1146
+ # @return [Google::Apis::CloudbuildV1alpha1::WorkerConfig]
1147
+ attr_accessor :worker_config
1148
+
1149
+ # Total number of workers to be created across all requested regions.
1150
+ # Corresponds to the JSON property `workerCount`
1151
+ # @return [Fixnum]
1152
+ attr_accessor :worker_count
1153
+
1154
+ def initialize(**args)
1155
+ update!(**args)
1156
+ end
1157
+
1158
+ # Update properties of this object
1159
+ def update!(**args)
1160
+ @create_time = args[:create_time] if args.key?(:create_time)
1161
+ @delete_time = args[:delete_time] if args.key?(:delete_time)
1162
+ @name = args[:name] if args.key?(:name)
1163
+ @project_id = args[:project_id] if args.key?(:project_id)
1164
+ @regions = args[:regions] if args.key?(:regions)
1165
+ @service_account_email = args[:service_account_email] if args.key?(:service_account_email)
1166
+ @status = args[:status] if args.key?(:status)
1167
+ @update_time = args[:update_time] if args.key?(:update_time)
1168
+ @worker_config = args[:worker_config] if args.key?(:worker_config)
1169
+ @worker_count = args[:worker_count] if args.key?(:worker_count)
1170
+ end
1171
+ end
1172
+ end
1173
+ end
1174
+ end