google-api-client 0.32.1 → 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +159 -0
  3. data/README.md +1 -1
  4. data/generated/google/apis/accessapproval_v1beta1/classes.rb +35 -2
  5. data/generated/google/apis/accessapproval_v1beta1/representations.rb +13 -0
  6. data/generated/google/apis/accessapproval_v1beta1/service.rb +108 -6
  7. data/generated/google/apis/accessapproval_v1beta1.rb +1 -1
  8. data/generated/google/apis/accesscontextmanager_v1/classes.rb +1 -1
  9. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  10. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +1 -73
  11. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +0 -32
  12. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  14. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +15 -2
  15. data/generated/google/apis/adexchangebuyer_v1_3.rb +1 -1
  16. data/generated/google/apis/adexchangebuyer_v1_4/classes.rb +16 -3
  17. data/generated/google/apis/adexchangebuyer_v1_4.rb +1 -1
  18. data/generated/google/apis/admin_datatransfer_v1/classes.rb +5 -5
  19. data/generated/google/apis/admin_datatransfer_v1/service.rb +2 -2
  20. data/generated/google/apis/admin_datatransfer_v1.rb +1 -1
  21. data/generated/google/apis/admin_directory_v1/classes.rb +4 -3
  22. data/generated/google/apis/admin_directory_v1.rb +4 -1
  23. data/generated/google/apis/admin_reports_v1/classes.rb +87 -44
  24. data/generated/google/apis/admin_reports_v1/service.rb +310 -64
  25. data/generated/google/apis/admin_reports_v1.rb +2 -2
  26. data/generated/google/apis/androidpublisher_v3/classes.rb +12 -0
  27. data/generated/google/apis/androidpublisher_v3/representations.rb +2 -0
  28. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  29. data/generated/google/apis/appengine_v1/service.rb +10 -6
  30. data/generated/google/apis/appengine_v1.rb +1 -1
  31. data/generated/google/apis/appengine_v1beta/service.rb +10 -6
  32. data/generated/google/apis/appengine_v1beta.rb +1 -1
  33. data/generated/google/apis/bigquery_v2/classes.rb +25 -19
  34. data/generated/google/apis/bigquery_v2/representations.rb +2 -0
  35. data/generated/google/apis/bigquery_v2.rb +1 -1
  36. data/generated/google/apis/bigqueryconnection_v1beta1/service.rb +3 -2
  37. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  38. data/generated/google/apis/bigtableadmin_v2/classes.rb +62 -29
  39. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  40. data/generated/google/apis/binaryauthorization_v1/service.rb +2 -0
  41. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  42. data/generated/google/apis/binaryauthorization_v1beta1/service.rb +2 -0
  43. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  44. data/generated/google/apis/civicinfo_v2/representations.rb +2 -2
  45. data/generated/google/apis/civicinfo_v2.rb +1 -1
  46. data/generated/google/apis/cloudasset_v1/classes.rb +14 -15
  47. data/generated/google/apis/cloudasset_v1/service.rb +1 -2
  48. data/generated/google/apis/cloudasset_v1.rb +1 -1
  49. data/generated/google/apis/cloudbilling_v1/classes.rb +65 -36
  50. data/generated/google/apis/cloudbilling_v1/representations.rb +0 -1
  51. data/generated/google/apis/cloudbilling_v1/service.rb +5 -3
  52. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  53. data/generated/google/apis/clouddebugger_v2/service.rb +14 -14
  54. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  55. data/generated/google/apis/cloudfunctions_v1/service.rb +7 -3
  56. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  57. data/generated/google/apis/cloudfunctions_v1beta2/classes.rb +7 -0
  58. data/generated/google/apis/cloudfunctions_v1beta2/representations.rb +1 -0
  59. data/generated/google/apis/cloudfunctions_v1beta2/service.rb +10 -4
  60. data/generated/google/apis/cloudfunctions_v1beta2.rb +1 -1
  61. data/generated/google/apis/cloudidentity_v1/classes.rb +11 -8
  62. data/generated/google/apis/cloudidentity_v1/service.rb +2 -1
  63. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  64. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +13 -10
  65. data/generated/google/apis/cloudidentity_v1beta1/service.rb +2 -1
  66. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  67. data/generated/google/apis/cloudkms_v1/service.rb +3 -0
  68. data/generated/google/apis/cloudkms_v1.rb +1 -1
  69. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +12 -12
  70. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  71. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +4 -8
  72. data/generated/google/apis/cloudresourcemanager_v2/service.rb +11 -13
  73. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  74. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +4 -8
  75. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +11 -13
  76. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  77. data/generated/google/apis/cloudsearch_v1/classes.rb +5 -2
  78. data/generated/google/apis/cloudsearch_v1/service.rb +5 -2
  79. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  80. data/generated/google/apis/cloudshell_v1/classes.rb +22 -0
  81. data/generated/google/apis/cloudshell_v1/representations.rb +3 -0
  82. data/generated/google/apis/cloudshell_v1.rb +1 -1
  83. data/generated/google/apis/cloudshell_v1alpha1/classes.rb +22 -0
  84. data/generated/google/apis/cloudshell_v1alpha1/representations.rb +3 -0
  85. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  86. data/generated/google/apis/compute_alpha/classes.rb +519 -152
  87. data/generated/google/apis/compute_alpha/representations.rb +108 -2
  88. data/generated/google/apis/compute_alpha/service.rb +1035 -640
  89. data/generated/google/apis/compute_alpha.rb +1 -1
  90. data/generated/google/apis/compute_beta/classes.rb +1016 -266
  91. data/generated/google/apis/compute_beta/representations.rb +284 -0
  92. data/generated/google/apis/compute_beta/service.rb +1242 -532
  93. data/generated/google/apis/compute_beta.rb +1 -1
  94. data/generated/google/apis/compute_v1/classes.rb +283 -125
  95. data/generated/google/apis/compute_v1/representations.rb +24 -0
  96. data/generated/google/apis/compute_v1/service.rb +759 -473
  97. data/generated/google/apis/compute_v1.rb +1 -1
  98. data/generated/google/apis/container_v1/classes.rb +207 -5
  99. data/generated/google/apis/container_v1/representations.rb +85 -0
  100. data/generated/google/apis/container_v1.rb +1 -1
  101. data/generated/google/apis/container_v1beta1/classes.rb +125 -3
  102. data/generated/google/apis/container_v1beta1/representations.rb +22 -0
  103. data/generated/google/apis/container_v1beta1.rb +1 -1
  104. data/generated/google/apis/content_v2/classes.rb +23 -220
  105. data/generated/google/apis/content_v2/representations.rb +0 -115
  106. data/generated/google/apis/content_v2/service.rb +0 -160
  107. data/generated/google/apis/content_v2.rb +1 -1
  108. data/generated/google/apis/content_v2_1/classes.rb +57 -18
  109. data/generated/google/apis/content_v2_1/representations.rb +3 -0
  110. data/generated/google/apis/content_v2_1.rb +1 -1
  111. data/generated/google/apis/dataflow_v1b3/classes.rb +6 -9
  112. data/generated/google/apis/dataflow_v1b3/representations.rb +1 -1
  113. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  114. data/generated/google/apis/datafusion_v1beta1/classes.rb +156 -46
  115. data/generated/google/apis/datafusion_v1beta1/representations.rb +33 -0
  116. data/generated/google/apis/datafusion_v1beta1/service.rb +10 -1
  117. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  118. data/generated/google/apis/datastore_v1/service.rb +85 -1
  119. data/generated/google/apis/datastore_v1.rb +1 -1
  120. data/generated/google/apis/datastore_v1beta3/service.rb +1 -1
  121. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  122. data/generated/google/apis/dialogflow_v2/classes.rb +25 -7
  123. data/generated/google/apis/dialogflow_v2/representations.rb +2 -0
  124. data/generated/google/apis/dialogflow_v2.rb +1 -1
  125. data/generated/google/apis/dialogflow_v2beta1/classes.rb +33 -7
  126. data/generated/google/apis/dialogflow_v2beta1/representations.rb +3 -0
  127. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  128. data/generated/google/apis/dlp_v2/classes.rb +19 -11
  129. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  130. data/generated/google/apis/dlp_v2/service.rb +43 -0
  131. data/generated/google/apis/dlp_v2.rb +1 -1
  132. data/generated/google/apis/docs_v1/classes.rb +175 -0
  133. data/generated/google/apis/docs_v1/representations.rb +77 -0
  134. data/generated/google/apis/docs_v1.rb +1 -1
  135. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  136. data/generated/google/apis/drive_v2/classes.rb +2 -1
  137. data/generated/google/apis/drive_v2/service.rb +3 -3
  138. data/generated/google/apis/drive_v2.rb +1 -1
  139. data/generated/google/apis/drive_v3.rb +1 -1
  140. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +37 -0
  141. data/generated/google/apis/firebasehosting_v1beta1/representations.rb +16 -0
  142. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  143. data/generated/google/apis/firestore_v1.rb +1 -1
  144. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  145. data/generated/google/apis/fitness_v1/service.rb +1 -1
  146. data/generated/google/apis/fitness_v1.rb +1 -1
  147. data/generated/google/apis/games_management_v1management/classes.rb +6 -26
  148. data/generated/google/apis/games_management_v1management/representations.rb +1 -14
  149. data/generated/google/apis/games_management_v1management/service.rb +0 -158
  150. data/generated/google/apis/games_management_v1management.rb +1 -1
  151. data/generated/google/apis/games_v1/classes.rb +6 -292
  152. data/generated/google/apis/games_v1/representations.rb +1 -98
  153. data/generated/google/apis/games_v1/service.rb +0 -123
  154. data/generated/google/apis/games_v1.rb +1 -1
  155. data/generated/google/apis/healthcare_v1beta1/classes.rb +205 -9
  156. data/generated/google/apis/healthcare_v1beta1/representations.rb +101 -0
  157. data/generated/google/apis/healthcare_v1beta1/service.rb +198 -104
  158. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  159. data/generated/google/apis/iam_v1/classes.rb +9 -2
  160. data/generated/google/apis/iam_v1/representations.rb +1 -0
  161. data/generated/google/apis/iam_v1.rb +1 -1
  162. data/generated/google/apis/iap_v1/classes.rb +187 -2
  163. data/generated/google/apis/iap_v1/representations.rb +102 -0
  164. data/generated/google/apis/iap_v1/service.rb +72 -0
  165. data/generated/google/apis/iap_v1.rb +1 -1
  166. data/generated/google/apis/iap_v1beta1/classes.rb +2 -2
  167. data/generated/google/apis/iap_v1beta1.rb +1 -1
  168. data/generated/google/apis/jobs_v2/classes.rb +167 -0
  169. data/generated/google/apis/jobs_v2/representations.rb +40 -0
  170. data/generated/google/apis/jobs_v2.rb +1 -1
  171. data/generated/google/apis/jobs_v3/classes.rb +179 -0
  172. data/generated/google/apis/jobs_v3/representations.rb +41 -0
  173. data/generated/google/apis/jobs_v3.rb +1 -1
  174. data/generated/google/apis/jobs_v3p1beta1/classes.rb +179 -0
  175. data/generated/google/apis/jobs_v3p1beta1/representations.rb +41 -0
  176. data/generated/google/apis/jobs_v3p1beta1.rb +1 -1
  177. data/generated/google/apis/licensing_v1/classes.rb +15 -7
  178. data/generated/google/apis/licensing_v1/service.rb +81 -37
  179. data/generated/google/apis/licensing_v1.rb +4 -4
  180. data/generated/google/apis/lifesciences_v2beta/classes.rb +1329 -0
  181. data/generated/google/apis/lifesciences_v2beta/representations.rb +533 -0
  182. data/generated/google/apis/lifesciences_v2beta/service.rb +303 -0
  183. data/generated/google/apis/{urlshortener_v1.rb → lifesciences_v2beta.rb} +12 -11
  184. data/generated/google/apis/logging_v2/classes.rb +12 -0
  185. data/generated/google/apis/logging_v2/representations.rb +2 -0
  186. data/generated/google/apis/logging_v2/service.rb +10 -5
  187. data/generated/google/apis/logging_v2.rb +1 -1
  188. data/generated/google/apis/ml_v1/classes.rb +66 -23
  189. data/generated/google/apis/ml_v1/representations.rb +1 -0
  190. data/generated/google/apis/ml_v1/service.rb +7 -3
  191. data/generated/google/apis/ml_v1.rb +2 -2
  192. data/generated/google/apis/monitoring_v1/classes.rb +260 -0
  193. data/generated/google/apis/monitoring_v1/representations.rb +123 -0
  194. data/generated/google/apis/monitoring_v1/service.rb +64 -0
  195. data/generated/google/apis/monitoring_v1.rb +36 -0
  196. data/generated/google/apis/monitoring_v3/classes.rb +27 -13
  197. data/generated/google/apis/monitoring_v3/representations.rb +1 -0
  198. data/generated/google/apis/monitoring_v3/service.rb +2 -2
  199. data/generated/google/apis/monitoring_v3.rb +1 -1
  200. data/generated/google/apis/oslogin_v1/classes.rb +1 -1
  201. data/generated/google/apis/oslogin_v1/service.rb +10 -6
  202. data/generated/google/apis/oslogin_v1.rb +1 -1
  203. data/generated/google/apis/oslogin_v1beta/classes.rb +1 -1
  204. data/generated/google/apis/oslogin_v1beta/service.rb +9 -5
  205. data/generated/google/apis/oslogin_v1beta.rb +1 -1
  206. data/generated/google/apis/people_v1/classes.rb +67 -63
  207. data/generated/google/apis/people_v1/service.rb +53 -44
  208. data/generated/google/apis/people_v1.rb +1 -1
  209. data/generated/google/apis/policytroubleshooter_v1beta/classes.rb +5 -4
  210. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  211. data/generated/google/apis/pubsub_v1/service.rb +3 -0
  212. data/generated/google/apis/pubsub_v1.rb +1 -1
  213. data/generated/google/apis/pubsub_v1beta2/service.rb +2 -0
  214. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  215. data/generated/google/apis/remotebuildexecution_v1/classes.rb +24 -0
  216. data/generated/google/apis/remotebuildexecution_v1/representations.rb +4 -0
  217. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  218. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +24 -0
  219. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +4 -0
  220. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  221. data/generated/google/apis/remotebuildexecution_v2/classes.rb +24 -0
  222. data/generated/google/apis/remotebuildexecution_v2/representations.rb +4 -0
  223. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  224. data/generated/google/apis/reseller_v1/service.rb +1 -1
  225. data/generated/google/apis/reseller_v1.rb +1 -1
  226. data/generated/google/apis/run_v1/classes.rb +0 -7
  227. data/generated/google/apis/run_v1/service.rb +156 -94
  228. data/generated/google/apis/run_v1.rb +1 -1
  229. data/generated/google/apis/run_v1alpha1/classes.rb +319 -0
  230. data/generated/google/apis/run_v1alpha1/representations.rb +126 -0
  231. data/generated/google/apis/run_v1alpha1/service.rb +408 -0
  232. data/generated/google/apis/run_v1alpha1.rb +1 -1
  233. data/generated/google/apis/securitycenter_v1/classes.rb +2 -2
  234. data/generated/google/apis/securitycenter_v1.rb +1 -1
  235. data/generated/google/apis/securitycenter_v1beta1/classes.rb +2 -2
  236. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  237. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +63 -0
  238. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +30 -0
  239. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  240. data/generated/google/apis/servicecontrol_v1/classes.rb +0 -11
  241. data/generated/google/apis/servicecontrol_v1/representations.rb +0 -1
  242. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  243. data/generated/google/apis/servicemanagement_v1/classes.rb +33 -7
  244. data/generated/google/apis/servicemanagement_v1/representations.rb +24 -0
  245. data/generated/google/apis/servicemanagement_v1/service.rb +31 -17
  246. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  247. data/generated/google/apis/serviceusage_v1/classes.rb +55 -0
  248. data/generated/google/apis/serviceusage_v1/representations.rb +29 -0
  249. data/generated/google/apis/serviceusage_v1.rb +1 -1
  250. data/generated/google/apis/serviceusage_v1beta1/classes.rb +55 -0
  251. data/generated/google/apis/serviceusage_v1beta1/representations.rb +29 -0
  252. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  253. data/generated/google/apis/sheets_v4/classes.rb +389 -0
  254. data/generated/google/apis/sheets_v4/representations.rb +79 -0
  255. data/generated/google/apis/sheets_v4.rb +1 -1
  256. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/classes.rb +9 -8
  257. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/representations.rb +6 -6
  258. data/generated/google/apis/{speech_v2beta → speech_v2beta1}/service.rb +13 -13
  259. data/generated/google/apis/{speech_v2beta.rb → speech_v2beta1.rb} +6 -6
  260. data/generated/google/apis/sql_v1beta4/classes.rb +2752 -0
  261. data/generated/google/apis/sql_v1beta4/representations.rb +1131 -0
  262. data/generated/google/apis/sql_v1beta4/service.rb +1791 -0
  263. data/generated/google/apis/sql_v1beta4.rb +37 -0
  264. data/generated/google/apis/storage_v1.rb +1 -1
  265. data/generated/google/apis/testing_v1/classes.rb +142 -1
  266. data/generated/google/apis/testing_v1/representations.rb +76 -0
  267. data/generated/google/apis/testing_v1.rb +1 -1
  268. data/generated/google/apis/videointelligence_v1/classes.rb +35 -36
  269. data/generated/google/apis/videointelligence_v1.rb +1 -1
  270. data/generated/google/apis/videointelligence_v1beta2/classes.rb +35 -36
  271. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  272. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +35 -36
  273. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  274. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +35 -36
  275. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  276. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +35 -36
  277. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  278. data/generated/google/apis/vision_v1.rb +1 -1
  279. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  280. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  281. data/generated/google/apis/youtube_partner_v1/service.rb +2 -2
  282. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  283. data/google-api-client.gemspec +6 -3
  284. data/lib/google/apis/version.rb +1 -1
  285. metadata +28 -30
  286. data/generated/google/apis/dfareporting_v3_2/classes.rb +0 -12299
  287. data/generated/google/apis/dfareporting_v3_2/representations.rb +0 -4397
  288. data/generated/google/apis/dfareporting_v3_2/service.rb +0 -8793
  289. data/generated/google/apis/dfareporting_v3_2.rb +0 -40
  290. data/generated/google/apis/urlshortener_v1/classes.rb +0 -246
  291. data/generated/google/apis/urlshortener_v1/representations.rb +0 -121
  292. data/generated/google/apis/urlshortener_v1/service.rb +0 -169
@@ -22,6 +22,60 @@ module Google
22
22
  module Apis
23
23
  module IapV1
24
24
 
25
+ # Access related settings for IAP protected apps.
26
+ class AccessSettings
27
+ include Google::Apis::Core::Hashable
28
+
29
+ # Allows customers to configure HTTP request paths that'll allow HTTP OPTIONS
30
+ # call to bypass authentication and authorization.
31
+ # Corresponds to the JSON property `corsSettings`
32
+ # @return [Google::Apis::IapV1::CorsSettings]
33
+ attr_accessor :cors_settings
34
+
35
+ # Allows customers to configure tenant_id for GCIP instance per-app.
36
+ # Corresponds to the JSON property `gcipSettings`
37
+ # @return [Google::Apis::IapV1::GcipSettings]
38
+ attr_accessor :gcip_settings
39
+
40
+ # Configuration for OAuth login&consent flow behavior.
41
+ # Corresponds to the JSON property `oauthSettings`
42
+ # @return [Google::Apis::IapV1::OAuthSettings]
43
+ attr_accessor :oauth_settings
44
+
45
+ def initialize(**args)
46
+ update!(**args)
47
+ end
48
+
49
+ # Update properties of this object
50
+ def update!(**args)
51
+ @cors_settings = args[:cors_settings] if args.key?(:cors_settings)
52
+ @gcip_settings = args[:gcip_settings] if args.key?(:gcip_settings)
53
+ @oauth_settings = args[:oauth_settings] if args.key?(:oauth_settings)
54
+ end
55
+ end
56
+
57
+ # Wrapper over application specific settings for IAP.
58
+ class ApplicationSettings
59
+ include Google::Apis::Core::Hashable
60
+
61
+ # Configuration for RCTokens generated for CSM workloads protected by IAP.
62
+ # RCTokens are IAP generated JWTs that can be verified at the application. The
63
+ # RCToken is primarily used for ISTIO deployments, and can be scoped to a
64
+ # single mesh by configuring the audience field accordingly
65
+ # Corresponds to the JSON property `csmSettings`
66
+ # @return [Google::Apis::IapV1::CsmSettings]
67
+ attr_accessor :csm_settings
68
+
69
+ def initialize(**args)
70
+ update!(**args)
71
+ end
72
+
73
+ # Update properties of this object
74
+ def update!(**args)
75
+ @csm_settings = args[:csm_settings] if args.key?(:csm_settings)
76
+ end
77
+ end
78
+
25
79
  # Associates `members` with a `role`.
26
80
  class Binding
27
81
  include Google::Apis::Core::Hashable
@@ -70,6 +124,51 @@ module Google
70
124
  end
71
125
  end
72
126
 
127
+ # Allows customers to configure HTTP request paths that'll allow HTTP OPTIONS
128
+ # call to bypass authentication and authorization.
129
+ class CorsSettings
130
+ include Google::Apis::Core::Hashable
131
+
132
+ # Configuration to allow HTTP OPTIONS calls to skip authorization. If
133
+ # undefined, IAP will not apply any special logic to OPTIONS requests.
134
+ # Corresponds to the JSON property `allowHttpOptions`
135
+ # @return [Boolean]
136
+ attr_accessor :allow_http_options
137
+ alias_method :allow_http_options?, :allow_http_options
138
+
139
+ def initialize(**args)
140
+ update!(**args)
141
+ end
142
+
143
+ # Update properties of this object
144
+ def update!(**args)
145
+ @allow_http_options = args[:allow_http_options] if args.key?(:allow_http_options)
146
+ end
147
+ end
148
+
149
+ # Configuration for RCTokens generated for CSM workloads protected by IAP.
150
+ # RCTokens are IAP generated JWTs that can be verified at the application. The
151
+ # RCToken is primarily used for ISTIO deployments, and can be scoped to a
152
+ # single mesh by configuring the audience field accordingly
153
+ class CsmSettings
154
+ include Google::Apis::Core::Hashable
155
+
156
+ # Audience claim set in the generated RCToken. This value is not validated by
157
+ # IAP.
158
+ # Corresponds to the JSON property `rctokenAud`
159
+ # @return [String]
160
+ attr_accessor :rctoken_aud
161
+
162
+ def initialize(**args)
163
+ update!(**args)
164
+ end
165
+
166
+ # Update properties of this object
167
+ def update!(**args)
168
+ @rctoken_aud = args[:rctoken_aud] if args.key?(:rctoken_aud)
169
+ end
170
+ end
171
+
73
172
  # Represents an expression text. Example:
74
173
  # title: "User account presence"
75
174
  # description: "Determines whether the request has a user account"
@@ -117,6 +216,38 @@ module Google
117
216
  end
118
217
  end
119
218
 
219
+ # Allows customers to configure tenant_id for GCIP instance per-app.
220
+ class GcipSettings
221
+ include Google::Apis::Core::Hashable
222
+
223
+ # Login page URI associated with the GCIP tenants.
224
+ # Typically, all resources within the same project share the same login page,
225
+ # though it could be overridden at the sub resource level.
226
+ # Corresponds to the JSON property `loginPageUri`
227
+ # @return [String]
228
+ attr_accessor :login_page_uri
229
+
230
+ # GCIP tenant ids that are linked to the IAP resource.
231
+ # tenant_ids could be a string beginning with a number character to indicate
232
+ # authenticating with GCIP tenant flow, or in the format of _<ProjectNumber>
233
+ # to indicate authenticating with GCIP agent flow.
234
+ # If agent flow is used, tenant_ids should only contain one single element,
235
+ # while for tenant flow, tenant_ids can contain multiple elements.
236
+ # Corresponds to the JSON property `tenantIds`
237
+ # @return [Array<String>]
238
+ attr_accessor :tenant_ids
239
+
240
+ def initialize(**args)
241
+ update!(**args)
242
+ end
243
+
244
+ # Update properties of this object
245
+ def update!(**args)
246
+ @login_page_uri = args[:login_page_uri] if args.key?(:login_page_uri)
247
+ @tenant_ids = args[:tenant_ids] if args.key?(:tenant_ids)
248
+ end
249
+ end
250
+
120
251
  # Request message for `GetIamPolicy` method.
121
252
  class GetIamPolicyRequest
122
253
  include Google::Apis::Core::Hashable
@@ -160,6 +291,60 @@ module Google
160
291
  end
161
292
  end
162
293
 
294
+ # The IAP configurable settings.
295
+ class IapSettings
296
+ include Google::Apis::Core::Hashable
297
+
298
+ # Access related settings for IAP protected apps.
299
+ # Corresponds to the JSON property `accessSettings`
300
+ # @return [Google::Apis::IapV1::AccessSettings]
301
+ attr_accessor :access_settings
302
+
303
+ # Wrapper over application specific settings for IAP.
304
+ # Corresponds to the JSON property `applicationSettings`
305
+ # @return [Google::Apis::IapV1::ApplicationSettings]
306
+ attr_accessor :application_settings
307
+
308
+ # Required. The resource name of the IAP protected resource.
309
+ # Corresponds to the JSON property `name`
310
+ # @return [String]
311
+ attr_accessor :name
312
+
313
+ def initialize(**args)
314
+ update!(**args)
315
+ end
316
+
317
+ # Update properties of this object
318
+ def update!(**args)
319
+ @access_settings = args[:access_settings] if args.key?(:access_settings)
320
+ @application_settings = args[:application_settings] if args.key?(:application_settings)
321
+ @name = args[:name] if args.key?(:name)
322
+ end
323
+ end
324
+
325
+ # Configuration for OAuth login&consent flow behavior.
326
+ class OAuthSettings
327
+ include Google::Apis::Core::Hashable
328
+
329
+ # Domain hint to send as hd=? parameter in OAuth request flow. Enables
330
+ # redirect to primary IDP by skipping Google's login screen.
331
+ # https://developers.google.com/identity/protocols/OpenIDConnect#hd-param
332
+ # Note: IAP does not verify that the id token's hd claim matches this value
333
+ # since access behavior is managed by IAM policies.
334
+ # Corresponds to the JSON property `loginHint`
335
+ # @return [String]
336
+ attr_accessor :login_hint
337
+
338
+ def initialize(**args)
339
+ update!(**args)
340
+ end
341
+
342
+ # Update properties of this object
343
+ def update!(**args)
344
+ @login_hint = args[:login_hint] if args.key?(:login_hint)
345
+ end
346
+ end
347
+
163
348
  # Defines an Identity and Access Management (IAM) policy. It is used to
164
349
  # specify access control policies for Cloud Platform resources.
165
350
  # A `Policy` is a collection of `bindings`. A `binding` binds one or more
@@ -173,7 +358,7 @@ module Google
173
358
  # `
174
359
  # "bindings": [
175
360
  # `
176
- # "role": "role/resourcemanager.organizationAdmin",
361
+ # "role": "roles/resourcemanager.organizationAdmin",
177
362
  # "members": [
178
363
  # "user:mike@example.com",
179
364
  # "group:admins@example.com",
@@ -279,7 +464,7 @@ module Google
279
464
  # `
280
465
  # "bindings": [
281
466
  # `
282
- # "role": "role/resourcemanager.organizationAdmin",
467
+ # "role": "roles/resourcemanager.organizationAdmin",
283
468
  # "members": [
284
469
  # "user:mike@example.com",
285
470
  # "group:admins@example.com",
@@ -22,18 +22,48 @@ module Google
22
22
  module Apis
23
23
  module IapV1
24
24
 
25
+ class AccessSettings
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class ApplicationSettings
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
25
37
  class Binding
26
38
  class Representation < Google::Apis::Core::JsonRepresentation; end
27
39
 
28
40
  include Google::Apis::Core::JsonObjectSupport
29
41
  end
30
42
 
43
+ class CorsSettings
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class CsmSettings
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
31
55
  class Expr
32
56
  class Representation < Google::Apis::Core::JsonRepresentation; end
33
57
 
34
58
  include Google::Apis::Core::JsonObjectSupport
35
59
  end
36
60
 
61
+ class GcipSettings
62
+ class Representation < Google::Apis::Core::JsonRepresentation; end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
37
67
  class GetIamPolicyRequest
38
68
  class Representation < Google::Apis::Core::JsonRepresentation; end
39
69
 
@@ -46,6 +76,18 @@ module Google
46
76
  include Google::Apis::Core::JsonObjectSupport
47
77
  end
48
78
 
79
+ class IapSettings
80
+ class Representation < Google::Apis::Core::JsonRepresentation; end
81
+
82
+ include Google::Apis::Core::JsonObjectSupport
83
+ end
84
+
85
+ class OAuthSettings
86
+ class Representation < Google::Apis::Core::JsonRepresentation; end
87
+
88
+ include Google::Apis::Core::JsonObjectSupport
89
+ end
90
+
49
91
  class Policy
50
92
  class Representation < Google::Apis::Core::JsonRepresentation; end
51
93
 
@@ -70,6 +112,26 @@ module Google
70
112
  include Google::Apis::Core::JsonObjectSupport
71
113
  end
72
114
 
115
+ class AccessSettings
116
+ # @private
117
+ class Representation < Google::Apis::Core::JsonRepresentation
118
+ property :cors_settings, as: 'corsSettings', class: Google::Apis::IapV1::CorsSettings, decorator: Google::Apis::IapV1::CorsSettings::Representation
119
+
120
+ property :gcip_settings, as: 'gcipSettings', class: Google::Apis::IapV1::GcipSettings, decorator: Google::Apis::IapV1::GcipSettings::Representation
121
+
122
+ property :oauth_settings, as: 'oauthSettings', class: Google::Apis::IapV1::OAuthSettings, decorator: Google::Apis::IapV1::OAuthSettings::Representation
123
+
124
+ end
125
+ end
126
+
127
+ class ApplicationSettings
128
+ # @private
129
+ class Representation < Google::Apis::Core::JsonRepresentation
130
+ property :csm_settings, as: 'csmSettings', class: Google::Apis::IapV1::CsmSettings, decorator: Google::Apis::IapV1::CsmSettings::Representation
131
+
132
+ end
133
+ end
134
+
73
135
  class Binding
74
136
  # @private
75
137
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -80,6 +142,20 @@ module Google
80
142
  end
81
143
  end
82
144
 
145
+ class CorsSettings
146
+ # @private
147
+ class Representation < Google::Apis::Core::JsonRepresentation
148
+ property :allow_http_options, as: 'allowHttpOptions'
149
+ end
150
+ end
151
+
152
+ class CsmSettings
153
+ # @private
154
+ class Representation < Google::Apis::Core::JsonRepresentation
155
+ property :rctoken_aud, as: 'rctokenAud'
156
+ end
157
+ end
158
+
83
159
  class Expr
84
160
  # @private
85
161
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -90,6 +166,14 @@ module Google
90
166
  end
91
167
  end
92
168
 
169
+ class GcipSettings
170
+ # @private
171
+ class Representation < Google::Apis::Core::JsonRepresentation
172
+ property :login_page_uri, as: 'loginPageUri'
173
+ collection :tenant_ids, as: 'tenantIds'
174
+ end
175
+ end
176
+
93
177
  class GetIamPolicyRequest
94
178
  # @private
95
179
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -105,6 +189,24 @@ module Google
105
189
  end
106
190
  end
107
191
 
192
+ class IapSettings
193
+ # @private
194
+ class Representation < Google::Apis::Core::JsonRepresentation
195
+ property :access_settings, as: 'accessSettings', class: Google::Apis::IapV1::AccessSettings, decorator: Google::Apis::IapV1::AccessSettings::Representation
196
+
197
+ property :application_settings, as: 'applicationSettings', class: Google::Apis::IapV1::ApplicationSettings, decorator: Google::Apis::IapV1::ApplicationSettings::Representation
198
+
199
+ property :name, as: 'name'
200
+ end
201
+ end
202
+
203
+ class OAuthSettings
204
+ # @private
205
+ class Representation < Google::Apis::Core::JsonRepresentation
206
+ property :login_hint, as: 'loginHint'
207
+ end
208
+ end
209
+
108
210
  class Policy
109
211
  # @private
110
212
  class Representation < Google::Apis::Core::JsonRepresentation
@@ -84,6 +84,38 @@ module Google
84
84
  execute_or_queue_command(command, &block)
85
85
  end
86
86
 
87
+ # Gets the IAP settings on a particular IAP protected resource.
88
+ # @param [String] name
89
+ # Required. The resource name for which to retrieve the settings.
90
+ # Authorization: Requires the `getSettings` permission for the associated
91
+ # resource.
92
+ # @param [String] fields
93
+ # Selector specifying which fields to include in a partial response.
94
+ # @param [String] quota_user
95
+ # Available to use for quota purposes for server-side applications. Can be any
96
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
97
+ # @param [Google::Apis::RequestOptions] options
98
+ # Request-specific options
99
+ #
100
+ # @yield [result, err] Result & error if block supplied
101
+ # @yieldparam result [Google::Apis::IapV1::IapSettings] parsed result object
102
+ # @yieldparam err [StandardError] error object if request failed
103
+ #
104
+ # @return [Google::Apis::IapV1::IapSettings]
105
+ #
106
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
107
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
108
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
109
+ def get_iap_settings(name, fields: nil, quota_user: nil, options: nil, &block)
110
+ command = make_simple_command(:get, 'v1/{+name}:iapSettings', options)
111
+ command.response_representation = Google::Apis::IapV1::IapSettings::Representation
112
+ command.response_class = Google::Apis::IapV1::IapSettings
113
+ command.params['name'] = name unless name.nil?
114
+ command.query['fields'] = fields unless fields.nil?
115
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
116
+ execute_or_queue_command(command, &block)
117
+ end
118
+
87
119
  # Sets the access control policy for an Identity-Aware Proxy protected
88
120
  # resource. Replaces any existing policy.
89
121
  # More information about managing access via IAP can be found at:
@@ -157,6 +189,46 @@ module Google
157
189
  command.query['quotaUser'] = quota_user unless quota_user.nil?
158
190
  execute_or_queue_command(command, &block)
159
191
  end
192
+
193
+ # Updates the IAP settings on a particular IAP protected resource. It
194
+ # replaces all fields unless the `update_mask` is set.
195
+ # @param [String] name
196
+ # Required. The resource name of the IAP protected resource.
197
+ # @param [Google::Apis::IapV1::IapSettings] iap_settings_object
198
+ # @param [String] update_mask
199
+ # The field mask specifying which IAP settings should be updated.
200
+ # If omitted, the all of the settings are updated. See
201
+ # https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#
202
+ # fieldmask
203
+ # @param [String] fields
204
+ # Selector specifying which fields to include in a partial response.
205
+ # @param [String] quota_user
206
+ # Available to use for quota purposes for server-side applications. Can be any
207
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
208
+ # @param [Google::Apis::RequestOptions] options
209
+ # Request-specific options
210
+ #
211
+ # @yield [result, err] Result & error if block supplied
212
+ # @yieldparam result [Google::Apis::IapV1::IapSettings] parsed result object
213
+ # @yieldparam err [StandardError] error object if request failed
214
+ #
215
+ # @return [Google::Apis::IapV1::IapSettings]
216
+ #
217
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
218
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
219
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
220
+ def update_iap_settings(name, iap_settings_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
221
+ command = make_simple_command(:patch, 'v1/{+name}:iapSettings', options)
222
+ command.request_representation = Google::Apis::IapV1::IapSettings::Representation
223
+ command.request_object = iap_settings_object
224
+ command.response_representation = Google::Apis::IapV1::IapSettings::Representation
225
+ command.response_class = Google::Apis::IapV1::IapSettings
226
+ command.params['name'] = name unless name.nil?
227
+ command.query['updateMask'] = update_mask unless update_mask.nil?
228
+ command.query['fields'] = fields unless fields.nil?
229
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
230
+ execute_or_queue_command(command, &block)
231
+ end
160
232
 
161
233
  protected
162
234
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/iap
26
26
  module IapV1
27
27
  VERSION = 'V1'
28
- REVISION = '20190920'
28
+ REVISION = '20191011'
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'
@@ -173,7 +173,7 @@ module Google
173
173
  # `
174
174
  # "bindings": [
175
175
  # `
176
- # "role": "role/resourcemanager.organizationAdmin",
176
+ # "role": "roles/resourcemanager.organizationAdmin",
177
177
  # "members": [
178
178
  # "user:mike@example.com",
179
179
  # "group:admins@example.com",
@@ -279,7 +279,7 @@ module Google
279
279
  # `
280
280
  # "bindings": [
281
281
  # `
282
- # "role": "role/resourcemanager.organizationAdmin",
282
+ # "role": "roles/resourcemanager.organizationAdmin",
283
283
  # "members": [
284
284
  # "user:mike@example.com",
285
285
  # "group:admins@example.com",
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/iap
26
26
  module IapV1beta1
27
27
  VERSION = 'V1beta1'
28
- REVISION = '20190920'
28
+ REVISION = '20191004'
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'
@@ -2630,6 +2630,34 @@ module Google
2630
2630
  end
2631
2631
  end
2632
2632
 
2633
+ # Message representing input to a Mendel server for debug forcing.
2634
+ # See go/mendel-debug-forcing for more details.
2635
+ # Next ID: 2
2636
+ class MendelDebugInput
2637
+ include Google::Apis::Core::Hashable
2638
+
2639
+ # When a request spans multiple servers, a MendelDebugInput may travel with
2640
+ # the request and take effect in all the servers. This field is a map of
2641
+ # namespaces to NamespacedMendelDebugInput protos. In a single server, up to
2642
+ # two NamespacedMendelDebugInput protos are applied:
2643
+ # 1. NamespacedMendelDebugInput with the global namespace (key == "").
2644
+ # 2. NamespacedMendelDebugInput with the server's namespace.
2645
+ # When both NamespacedMendelDebugInput protos are present, they are merged.
2646
+ # See go/mendel-debug-forcing for more details.
2647
+ # Corresponds to the JSON property `namespacedDebugInput`
2648
+ # @return [Hash<String,Google::Apis::JobsV2::NamespacedDebugInput>]
2649
+ attr_accessor :namespaced_debug_input
2650
+
2651
+ def initialize(**args)
2652
+ update!(**args)
2653
+ end
2654
+
2655
+ # Update properties of this object
2656
+ def update!(**args)
2657
+ @namespaced_debug_input = args[:namespaced_debug_input] if args.key?(:namespaced_debug_input)
2658
+ end
2659
+ end
2660
+
2633
2661
  # Represents an amount of money with its currency type.
2634
2662
  class Money
2635
2663
  include Google::Apis::Core::Hashable
@@ -2667,6 +2695,145 @@ module Google
2667
2695
  end
2668
2696
  end
2669
2697
 
2698
+ # Next ID: 15
2699
+ class NamespacedDebugInput
2700
+ include Google::Apis::Core::Hashable
2701
+
2702
+ # Set of experiment names to be absolutely forced.
2703
+ # These experiments will be forced without evaluating the conditions.
2704
+ # Corresponds to the JSON property `absolutelyForcedExpNames`
2705
+ # @return [Array<String>]
2706
+ attr_accessor :absolutely_forced_exp_names
2707
+
2708
+ # Set of experiment tags to be absolutely forced.
2709
+ # The experiments with these tags will be forced without evaluating the
2710
+ # conditions.
2711
+ # Corresponds to the JSON property `absolutelyForcedExpTags`
2712
+ # @return [Array<String>]
2713
+ attr_accessor :absolutely_forced_exp_tags
2714
+
2715
+ # Set of experiment ids to be absolutely forced.
2716
+ # These ids will be forced without evaluating the conditions.
2717
+ # Corresponds to the JSON property `absolutelyForcedExps`
2718
+ # @return [Array<Fixnum>]
2719
+ attr_accessor :absolutely_forced_exps
2720
+
2721
+ # Set of experiment names to be conditionally forced.
2722
+ # These experiments will be forced only if their conditions and their
2723
+ # parent domain's conditions are true.
2724
+ # Corresponds to the JSON property `conditionallyForcedExpNames`
2725
+ # @return [Array<String>]
2726
+ attr_accessor :conditionally_forced_exp_names
2727
+
2728
+ # Set of experiment tags to be conditionally forced.
2729
+ # The experiments with these tags will be forced only if their conditions
2730
+ # and their parent domain's conditions are true.
2731
+ # Corresponds to the JSON property `conditionallyForcedExpTags`
2732
+ # @return [Array<String>]
2733
+ attr_accessor :conditionally_forced_exp_tags
2734
+
2735
+ # Set of experiment ids to be conditionally forced.
2736
+ # These ids will be forced only if their conditions and their parent
2737
+ # domain's conditions are true.
2738
+ # Corresponds to the JSON property `conditionallyForcedExps`
2739
+ # @return [Array<Fixnum>]
2740
+ attr_accessor :conditionally_forced_exps
2741
+
2742
+ # If true, disable automatic enrollment selection (at all diversion
2743
+ # points). Automatic enrollment selection means experiment selection
2744
+ # process based on the experiment's automatic enrollment condition. This
2745
+ # does not disable selection of forced experiments.
2746
+ # Corresponds to the JSON property `disableAutomaticEnrollmentSelection`
2747
+ # @return [Boolean]
2748
+ attr_accessor :disable_automatic_enrollment_selection
2749
+ alias_method :disable_automatic_enrollment_selection?, :disable_automatic_enrollment_selection
2750
+
2751
+ # Set of experiment names to be disabled.
2752
+ # If an experiment is disabled, it is never selected nor forced.
2753
+ # If an aggregate experiment is disabled, its partitions are disabled
2754
+ # together. If an experiment with an enrollment is disabled, the enrollment
2755
+ # is disabled together. If a name corresponds to a domain, the domain
2756
+ # itself and all descendant experiments and domains are disabled together.
2757
+ # Corresponds to the JSON property `disableExpNames`
2758
+ # @return [Array<String>]
2759
+ attr_accessor :disable_exp_names
2760
+
2761
+ # Set of experiment tags to be disabled. All experiments that are tagged
2762
+ # with one or more of these tags are disabled.
2763
+ # If an experiment is disabled, it is never selected nor forced.
2764
+ # If an aggregate experiment is disabled, its partitions are disabled
2765
+ # together. If an experiment with an enrollment is disabled, the enrollment
2766
+ # is disabled together.
2767
+ # Corresponds to the JSON property `disableExpTags`
2768
+ # @return [Array<String>]
2769
+ attr_accessor :disable_exp_tags
2770
+
2771
+ # Set of experiment ids to be disabled.
2772
+ # If an experiment is disabled, it is never selected nor forced.
2773
+ # If an aggregate experiment is disabled, its partitions are disabled
2774
+ # together. If an experiment with an enrollment is disabled, the enrollment
2775
+ # is disabled together. If an ID corresponds to a domain, the domain itself
2776
+ # and all descendant experiments and domains are disabled together.
2777
+ # Corresponds to the JSON property `disableExps`
2778
+ # @return [Array<Fixnum>]
2779
+ attr_accessor :disable_exps
2780
+
2781
+ # If true, disable manual enrollment selection (at all diversion points).
2782
+ # Manual enrollment selection means experiment selection process based on
2783
+ # the request's manual enrollment states (a.k.a. opt-in experiments).
2784
+ # This does not disable selection of forced experiments.
2785
+ # Corresponds to the JSON property `disableManualEnrollmentSelection`
2786
+ # @return [Boolean]
2787
+ attr_accessor :disable_manual_enrollment_selection
2788
+ alias_method :disable_manual_enrollment_selection?, :disable_manual_enrollment_selection
2789
+
2790
+ # If true, disable organic experiment selection (at all diversion points).
2791
+ # Organic selection means experiment selection process based on traffic
2792
+ # allocation and diversion condition evaluation.
2793
+ # This does not disable selection of forced experiments.
2794
+ # This is useful in cases when it is not known whether experiment selection
2795
+ # behavior is responsible for a error or breakage. Disabling organic
2796
+ # selection may help to isolate the cause of a given problem.
2797
+ # Corresponds to the JSON property `disableOrganicSelection`
2798
+ # @return [Boolean]
2799
+ attr_accessor :disable_organic_selection
2800
+ alias_method :disable_organic_selection?, :disable_organic_selection
2801
+
2802
+ # Flags to force in a particular experiment state.
2803
+ # Map from flag name to flag value.
2804
+ # Corresponds to the JSON property `forcedFlags`
2805
+ # @return [Hash<String,String>]
2806
+ attr_accessor :forced_flags
2807
+
2808
+ # Rollouts to force in a particular experiment state.
2809
+ # Map from rollout name to rollout value.
2810
+ # Corresponds to the JSON property `forcedRollouts`
2811
+ # @return [Hash<String,Boolean>]
2812
+ attr_accessor :forced_rollouts
2813
+
2814
+ def initialize(**args)
2815
+ update!(**args)
2816
+ end
2817
+
2818
+ # Update properties of this object
2819
+ def update!(**args)
2820
+ @absolutely_forced_exp_names = args[:absolutely_forced_exp_names] if args.key?(:absolutely_forced_exp_names)
2821
+ @absolutely_forced_exp_tags = args[:absolutely_forced_exp_tags] if args.key?(:absolutely_forced_exp_tags)
2822
+ @absolutely_forced_exps = args[:absolutely_forced_exps] if args.key?(:absolutely_forced_exps)
2823
+ @conditionally_forced_exp_names = args[:conditionally_forced_exp_names] if args.key?(:conditionally_forced_exp_names)
2824
+ @conditionally_forced_exp_tags = args[:conditionally_forced_exp_tags] if args.key?(:conditionally_forced_exp_tags)
2825
+ @conditionally_forced_exps = args[:conditionally_forced_exps] if args.key?(:conditionally_forced_exps)
2826
+ @disable_automatic_enrollment_selection = args[:disable_automatic_enrollment_selection] if args.key?(:disable_automatic_enrollment_selection)
2827
+ @disable_exp_names = args[:disable_exp_names] if args.key?(:disable_exp_names)
2828
+ @disable_exp_tags = args[:disable_exp_tags] if args.key?(:disable_exp_tags)
2829
+ @disable_exps = args[:disable_exps] if args.key?(:disable_exps)
2830
+ @disable_manual_enrollment_selection = args[:disable_manual_enrollment_selection] if args.key?(:disable_manual_enrollment_selection)
2831
+ @disable_organic_selection = args[:disable_organic_selection] if args.key?(:disable_organic_selection)
2832
+ @forced_flags = args[:forced_flags] if args.key?(:forced_flags)
2833
+ @forced_rollouts = args[:forced_rollouts] if args.key?(:forced_rollouts)
2834
+ end
2835
+ end
2836
+
2670
2837
  # Input only.
2671
2838
  # Use this field to specify bucketing option for the histogram search response.
2672
2839
  class NumericBucketingOption