google-api-client 0.46.1 → 0.50.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 (496) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/autoapprove.yml +49 -0
  3. data/.github/workflows/release-please.yml +77 -0
  4. data/.gitignore +2 -0
  5. data/.kokoro/trampoline.sh +0 -0
  6. data/CHANGELOG.md +666 -191
  7. data/Gemfile +1 -0
  8. data/Rakefile +31 -3
  9. data/api_list_config.yaml +8 -0
  10. data/bin/generate-api +77 -15
  11. data/generated/google/apis/accessapproval_v1.rb +1 -1
  12. data/generated/google/apis/accessapproval_v1/classes.rb +13 -15
  13. data/generated/google/apis/accessapproval_v1/service.rb +12 -9
  14. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  15. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +30 -30
  16. data/generated/google/apis/admin_directory_v1.rb +1 -1
  17. data/generated/google/apis/admin_directory_v1/classes.rb +135 -0
  18. data/generated/google/apis/admin_directory_v1/representations.rb +62 -0
  19. data/generated/google/apis/admin_directory_v1/service.rb +72 -0
  20. data/generated/google/apis/admin_reports_v1.rb +1 -1
  21. data/generated/google/apis/admob_v1.rb +4 -1
  22. data/generated/google/apis/admob_v1/classes.rb +29 -29
  23. data/generated/google/apis/admob_v1/service.rb +4 -0
  24. data/generated/google/apis/admob_v1beta.rb +38 -0
  25. data/generated/google/apis/admob_v1beta/classes.rb +1035 -0
  26. data/generated/google/apis/admob_v1beta/representations.rb +472 -0
  27. data/generated/google/apis/admob_v1beta/service.rb +279 -0
  28. data/generated/google/apis/analyticsadmin_v1alpha.rb +1 -1
  29. data/generated/google/apis/analyticsadmin_v1alpha/classes.rb +19 -18
  30. data/generated/google/apis/analyticsadmin_v1alpha/service.rb +12 -13
  31. data/generated/google/apis/analyticsdata_v1alpha.rb +1 -1
  32. data/generated/google/apis/analyticsdata_v1alpha/classes.rb +179 -50
  33. data/generated/google/apis/analyticsdata_v1alpha/representations.rb +50 -14
  34. data/generated/google/apis/analyticsdata_v1alpha/service.rb +49 -38
  35. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  36. data/generated/google/apis/androidenterprise_v1/classes.rb +6 -0
  37. data/generated/google/apis/androidenterprise_v1/representations.rb +1 -0
  38. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  39. data/generated/google/apis/androidmanagement_v1/classes.rb +29 -26
  40. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  41. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -1
  42. data/generated/google/apis/androidpublisher_v3/service.rb +5 -2
  43. data/generated/google/apis/apigateway_v1beta.rb +1 -1
  44. data/generated/google/apis/apigateway_v1beta/classes.rb +8 -5
  45. data/generated/google/apis/apigateway_v1beta/representations.rb +1 -0
  46. data/generated/google/apis/apigee_v1.rb +1 -1
  47. data/generated/google/apis/apigee_v1/classes.rb +377 -137
  48. data/generated/google/apis/apigee_v1/representations.rb +109 -18
  49. data/generated/google/apis/apigee_v1/service.rb +673 -56
  50. data/generated/google/apis/area120tables_v1alpha1.rb +46 -0
  51. data/generated/google/apis/area120tables_v1alpha1/classes.rb +481 -0
  52. data/generated/google/apis/area120tables_v1alpha1/representations.rb +279 -0
  53. data/generated/google/apis/area120tables_v1alpha1/service.rb +448 -0
  54. data/generated/google/apis/artifactregistry_v1beta1.rb +1 -1
  55. data/generated/google/apis/artifactregistry_v1beta1/classes.rb +7 -7
  56. data/generated/google/apis/artifactregistry_v1beta1/representations.rb +1 -1
  57. data/generated/google/apis/assuredworkloads_v1beta1.rb +1 -1
  58. data/generated/google/apis/assuredworkloads_v1beta1/classes.rb +20 -0
  59. data/generated/google/apis/assuredworkloads_v1beta1/representations.rb +2 -0
  60. data/generated/google/apis/bigquery_v2.rb +1 -1
  61. data/generated/google/apis/bigquery_v2/classes.rb +158 -5
  62. data/generated/google/apis/bigquery_v2/representations.rb +67 -0
  63. data/generated/google/apis/bigquery_v2/service.rb +46 -0
  64. data/generated/google/apis/bigqueryconnection_v1beta1.rb +1 -1
  65. data/generated/google/apis/bigqueryconnection_v1beta1/classes.rb +6 -0
  66. data/generated/google/apis/bigqueryconnection_v1beta1/representations.rb +1 -0
  67. data/generated/google/apis/billingbudgets_v1.rb +1 -1
  68. data/generated/google/apis/billingbudgets_v1/classes.rb +12 -1
  69. data/generated/google/apis/billingbudgets_v1/representations.rb +1 -0
  70. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  71. data/generated/google/apis/billingbudgets_v1beta1/classes.rb +12 -1
  72. data/generated/google/apis/billingbudgets_v1beta1/representations.rb +1 -0
  73. data/generated/google/apis/binaryauthorization_v1.rb +1 -1
  74. data/generated/google/apis/binaryauthorization_v1/classes.rb +3 -4
  75. data/generated/google/apis/binaryauthorization_v1beta1.rb +1 -1
  76. data/generated/google/apis/binaryauthorization_v1beta1/classes.rb +3 -4
  77. data/generated/google/apis/books_v1.rb +1 -1
  78. data/generated/google/apis/books_v1/service.rb +52 -52
  79. data/generated/google/apis/calendar_v3.rb +1 -1
  80. data/generated/google/apis/calendar_v3/classes.rb +2 -2
  81. data/generated/google/apis/chat_v1.rb +1 -1
  82. data/generated/google/apis/chat_v1/classes.rb +7 -0
  83. data/generated/google/apis/chat_v1/representations.rb +1 -0
  84. data/generated/google/apis/civicinfo_v2.rb +1 -1
  85. data/generated/google/apis/civicinfo_v2/classes.rb +0 -24
  86. data/generated/google/apis/civicinfo_v2/representations.rb +0 -3
  87. data/generated/google/apis/classroom_v1.rb +1 -1
  88. data/generated/google/apis/classroom_v1/classes.rb +21 -21
  89. data/generated/google/apis/cloudasset_v1.rb +1 -1
  90. data/generated/google/apis/cloudasset_v1/classes.rb +1122 -0
  91. data/generated/google/apis/cloudasset_v1/representations.rb +474 -0
  92. data/generated/google/apis/cloudasset_v1/service.rb +171 -0
  93. data/generated/google/apis/cloudasset_v1beta1.rb +1 -1
  94. data/generated/google/apis/cloudasset_v1p1beta1.rb +1 -1
  95. data/generated/google/apis/cloudasset_v1p4beta1.rb +1 -1
  96. data/generated/google/apis/cloudasset_v1p5beta1.rb +1 -1
  97. data/generated/google/apis/cloudbilling_v1.rb +1 -1
  98. data/generated/google/apis/cloudbilling_v1/classes.rb +1 -1
  99. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  100. data/generated/google/apis/cloudbuild_v1/classes.rb +2 -1
  101. data/generated/google/apis/cloudbuild_v1/service.rb +10 -2
  102. data/generated/google/apis/cloudfunctions_v1.rb +1 -1
  103. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  104. data/generated/google/apis/cloudidentity_v1/service.rb +7 -3
  105. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  106. data/generated/google/apis/cloudidentity_v1beta1/service.rb +29 -17
  107. data/generated/google/apis/cloudiot_v1.rb +1 -1
  108. data/generated/google/apis/cloudiot_v1/classes.rb +1 -2
  109. data/generated/google/apis/cloudkms_v1.rb +1 -1
  110. data/generated/google/apis/cloudkms_v1/classes.rb +1 -2
  111. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  112. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +401 -7
  113. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +280 -1
  114. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  115. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +401 -7
  116. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +280 -1
  117. data/generated/google/apis/cloudresourcemanager_v2.rb +1 -1
  118. data/generated/google/apis/cloudresourcemanager_v2/classes.rb +405 -11
  119. data/generated/google/apis/cloudresourcemanager_v2/representations.rb +280 -1
  120. data/generated/google/apis/cloudresourcemanager_v2/service.rb +13 -13
  121. data/generated/google/apis/cloudresourcemanager_v2beta1.rb +1 -1
  122. data/generated/google/apis/cloudresourcemanager_v2beta1/classes.rb +405 -11
  123. data/generated/google/apis/cloudresourcemanager_v2beta1/representations.rb +280 -1
  124. data/generated/google/apis/cloudresourcemanager_v2beta1/service.rb +13 -13
  125. data/generated/google/apis/cloudtasks_v2.rb +1 -1
  126. data/generated/google/apis/cloudtasks_v2/classes.rb +1 -2
  127. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  128. data/generated/google/apis/cloudtasks_v2beta2/classes.rb +1 -2
  129. data/generated/google/apis/cloudtasks_v2beta2/service.rb +12 -2
  130. data/generated/google/apis/cloudtasks_v2beta3.rb +1 -1
  131. data/generated/google/apis/cloudtasks_v2beta3/classes.rb +1 -2
  132. data/generated/google/apis/compute_v1.rb +1 -1
  133. data/generated/google/apis/compute_v1/classes.rb +282 -29
  134. data/generated/google/apis/compute_v1/representations.rb +43 -0
  135. data/generated/google/apis/compute_v1/service.rb +4 -1
  136. data/generated/google/apis/container_v1.rb +1 -1
  137. data/generated/google/apis/container_v1/classes.rb +22 -10
  138. data/generated/google/apis/container_v1beta1.rb +1 -1
  139. data/generated/google/apis/container_v1beta1/classes.rb +51 -10
  140. data/generated/google/apis/container_v1beta1/representations.rb +15 -0
  141. data/generated/google/apis/containeranalysis_v1alpha1.rb +1 -1
  142. data/generated/google/apis/containeranalysis_v1alpha1/classes.rb +1 -2
  143. data/generated/google/apis/containeranalysis_v1beta1.rb +1 -1
  144. data/generated/google/apis/containeranalysis_v1beta1/classes.rb +1 -2
  145. data/generated/google/apis/content_v2.rb +3 -4
  146. data/generated/google/apis/content_v2/classes.rb +511 -1219
  147. data/generated/google/apis/content_v2/service.rb +380 -651
  148. data/generated/google/apis/content_v2_1.rb +3 -4
  149. data/generated/google/apis/content_v2_1/classes.rb +1353 -1061
  150. data/generated/google/apis/content_v2_1/representations.rb +342 -0
  151. data/generated/google/apis/content_v2_1/service.rb +948 -809
  152. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  153. data/generated/google/apis/datacatalog_v1beta1/classes.rb +26 -12
  154. data/generated/google/apis/datacatalog_v1beta1/representations.rb +5 -0
  155. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  156. data/generated/google/apis/dataflow_v1b3/classes.rb +12 -0
  157. data/generated/google/apis/dataflow_v1b3/representations.rb +3 -0
  158. data/generated/google/apis/datalabeling_v1beta1.rb +34 -0
  159. data/generated/google/apis/datalabeling_v1beta1/classes.rb +6207 -0
  160. data/generated/google/apis/datalabeling_v1beta1/representations.rb +3156 -0
  161. data/generated/google/apis/datalabeling_v1beta1/service.rb +1762 -0
  162. data/generated/google/apis/datamigration_v1beta1.rb +34 -0
  163. data/generated/google/apis/datamigration_v1beta1/classes.rb +1670 -0
  164. data/generated/google/apis/datamigration_v1beta1/representations.rb +678 -0
  165. data/generated/google/apis/datamigration_v1beta1/service.rb +1172 -0
  166. data/generated/google/apis/dataproc_v1.rb +1 -1
  167. data/generated/google/apis/dataproc_v1/classes.rb +18 -7
  168. data/generated/google/apis/dataproc_v1/representations.rb +1 -0
  169. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  170. data/generated/google/apis/dataproc_v1beta2/classes.rb +18 -7
  171. data/generated/google/apis/dataproc_v1beta2/representations.rb +1 -0
  172. data/generated/google/apis/datastore_v1.rb +1 -1
  173. data/generated/google/apis/datastore_v1/classes.rb +4 -4
  174. data/generated/google/apis/datastore_v1beta3.rb +1 -1
  175. data/generated/google/apis/datastore_v1beta3/classes.rb +4 -4
  176. data/generated/google/apis/deploymentmanager_v2.rb +6 -4
  177. data/generated/google/apis/deploymentmanager_v2/classes.rb +209 -558
  178. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -132
  179. data/generated/google/apis/deploymentmanager_v2/service.rb +169 -213
  180. data/generated/google/apis/deploymentmanager_v2beta.rb +6 -5
  181. data/generated/google/apis/deploymentmanager_v2beta/classes.rb +253 -609
  182. data/generated/google/apis/deploymentmanager_v2beta/representations.rb +1 -132
  183. data/generated/google/apis/deploymentmanager_v2beta/service.rb +278 -359
  184. data/generated/google/apis/dfareporting_v3_3.rb +2 -2
  185. data/generated/google/apis/dfareporting_v3_3/classes.rb +6 -6
  186. data/generated/google/apis/dfareporting_v3_3/service.rb +12 -12
  187. data/generated/google/apis/dfareporting_v3_4.rb +2 -2
  188. data/generated/google/apis/dfareporting_v3_4/classes.rb +6 -6
  189. data/generated/google/apis/dfareporting_v3_4/service.rb +12 -12
  190. data/generated/google/apis/dialogflow_v2.rb +1 -1
  191. data/generated/google/apis/dialogflow_v2/classes.rb +649 -385
  192. data/generated/google/apis/dialogflow_v2/representations.rb +279 -192
  193. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  194. data/generated/google/apis/dialogflow_v2beta1/classes.rb +649 -385
  195. data/generated/google/apis/dialogflow_v2beta1/representations.rb +283 -196
  196. data/generated/google/apis/dialogflow_v2beta1/service.rb +14 -8
  197. data/generated/google/apis/dialogflow_v3beta1.rb +1 -1
  198. data/generated/google/apis/dialogflow_v3beta1/classes.rb +712 -391
  199. data/generated/google/apis/dialogflow_v3beta1/representations.rb +301 -195
  200. data/generated/google/apis/dialogflow_v3beta1/service.rb +1 -1
  201. data/generated/google/apis/displayvideo_v1.rb +1 -1
  202. data/generated/google/apis/displayvideo_v1/classes.rb +241 -63
  203. data/generated/google/apis/displayvideo_v1/representations.rb +77 -0
  204. data/generated/google/apis/displayvideo_v1/service.rb +257 -17
  205. data/generated/google/apis/dlp_v2.rb +1 -1
  206. data/generated/google/apis/dlp_v2/classes.rb +39 -32
  207. data/generated/google/apis/dlp_v2/representations.rb +1 -0
  208. data/generated/google/apis/dns_v1.rb +2 -2
  209. data/generated/google/apis/dns_v1/classes.rb +181 -0
  210. data/generated/google/apis/dns_v1/representations.rb +83 -0
  211. data/generated/google/apis/dns_v1/service.rb +1 -1
  212. data/generated/google/apis/dns_v1beta2.rb +2 -2
  213. data/generated/google/apis/dns_v1beta2/classes.rb +195 -1
  214. data/generated/google/apis/dns_v1beta2/representations.rb +95 -0
  215. data/generated/google/apis/dns_v1beta2/service.rb +177 -1
  216. data/generated/google/apis/domains_v1alpha2.rb +34 -0
  217. data/generated/google/apis/domains_v1alpha2/classes.rb +1534 -0
  218. data/generated/google/apis/domains_v1alpha2/representations.rb +605 -0
  219. data/generated/google/apis/domains_v1alpha2/service.rb +805 -0
  220. data/generated/google/apis/domains_v1beta1.rb +34 -0
  221. data/generated/google/apis/domains_v1beta1/classes.rb +1534 -0
  222. data/generated/google/apis/domains_v1beta1/representations.rb +605 -0
  223. data/generated/google/apis/domains_v1beta1/service.rb +805 -0
  224. data/generated/google/apis/doubleclickbidmanager_v1.rb +1 -1
  225. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +2 -1
  226. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  227. data/generated/google/apis/doubleclickbidmanager_v1_1/classes.rb +2 -1
  228. data/generated/google/apis/drive_v2.rb +1 -1
  229. data/generated/google/apis/drive_v2/classes.rb +22 -20
  230. data/generated/google/apis/drive_v2/service.rb +2 -2
  231. data/generated/google/apis/drive_v3.rb +1 -1
  232. data/generated/google/apis/drive_v3/classes.rb +12 -9
  233. data/generated/google/apis/eventarc_v1beta1.rb +34 -0
  234. data/generated/google/apis/eventarc_v1beta1/classes.rb +937 -0
  235. data/generated/google/apis/eventarc_v1beta1/representations.rb +380 -0
  236. data/generated/google/apis/eventarc_v1beta1/service.rb +579 -0
  237. data/generated/google/apis/file_v1.rb +1 -1
  238. data/generated/google/apis/file_v1/classes.rb +505 -4
  239. data/generated/google/apis/file_v1/representations.rb +203 -0
  240. data/generated/google/apis/file_v1/service.rb +229 -1
  241. data/generated/google/apis/file_v1beta1.rb +1 -1
  242. data/generated/google/apis/file_v1beta1/classes.rb +346 -6
  243. data/generated/google/apis/file_v1beta1/representations.rb +149 -0
  244. data/generated/google/apis/file_v1beta1/service.rb +6 -2
  245. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  246. data/generated/google/apis/firebase_v1beta1/service.rb +17 -4
  247. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  248. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +2 -0
  249. data/generated/google/apis/firestore_v1.rb +1 -1
  250. data/generated/google/apis/firestore_v1/classes.rb +4 -4
  251. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  252. data/generated/google/apis/firestore_v1beta1/classes.rb +4 -4
  253. data/generated/google/apis/fitness_v1.rb +1 -1
  254. data/generated/google/apis/fitness_v1/service.rb +3 -1
  255. data/generated/google/apis/games_v1.rb +1 -1
  256. data/generated/google/apis/games_v1/classes.rb +300 -0
  257. data/generated/google/apis/games_v1/representations.rb +116 -0
  258. data/generated/google/apis/games_v1/service.rb +34 -0
  259. data/generated/google/apis/gameservices_v1.rb +1 -1
  260. data/generated/google/apis/gameservices_v1/classes.rb +16 -16
  261. data/generated/google/apis/gameservices_v1/service.rb +54 -51
  262. data/generated/google/apis/gameservices_v1beta.rb +1 -1
  263. data/generated/google/apis/gameservices_v1beta/classes.rb +16 -16
  264. data/generated/google/apis/gameservices_v1beta/service.rb +54 -51
  265. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  266. data/generated/google/apis/genomics_v2alpha1/classes.rb +25 -0
  267. data/generated/google/apis/genomics_v2alpha1/representations.rb +15 -0
  268. data/generated/google/apis/gmailpostmastertools_v1beta1.rb +1 -1
  269. data/generated/google/apis/gmailpostmastertools_v1beta1/service.rb +10 -10
  270. data/generated/google/apis/healthcare_v1.rb +1 -1
  271. data/generated/google/apis/healthcare_v1/classes.rb +10 -4
  272. data/generated/google/apis/healthcare_v1/representations.rb +1 -0
  273. data/generated/google/apis/healthcare_v1/service.rb +2 -1
  274. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  275. data/generated/google/apis/healthcare_v1beta1/classes.rb +350 -46
  276. data/generated/google/apis/healthcare_v1beta1/representations.rb +150 -18
  277. data/generated/google/apis/healthcare_v1beta1/service.rb +91 -13
  278. data/generated/google/apis/iam_v1.rb +2 -5
  279. data/generated/google/apis/iam_v1/classes.rb +8 -11
  280. data/generated/google/apis/iam_v1/representations.rb +0 -1
  281. data/generated/google/apis/iam_v1/service.rb +1 -4
  282. data/generated/google/apis/iamcredentials_v1.rb +3 -4
  283. data/generated/google/apis/iamcredentials_v1/service.rb +2 -3
  284. data/generated/google/apis/iap_v1.rb +1 -1
  285. data/generated/google/apis/iap_v1/classes.rb +1 -13
  286. data/generated/google/apis/iap_v1/representations.rb +0 -1
  287. data/generated/google/apis/iap_v1beta1.rb +1 -1
  288. data/generated/google/apis/iap_v1beta1/classes.rb +1 -2
  289. data/generated/google/apis/licensing_v1.rb +1 -1
  290. data/generated/google/apis/localservices_v1.rb +1 -1
  291. data/generated/google/apis/localservices_v1/classes.rb +7 -0
  292. data/generated/google/apis/localservices_v1/representations.rb +2 -0
  293. data/generated/google/apis/localservices_v1/service.rb +20 -20
  294. data/generated/google/apis/logging_v2.rb +1 -1
  295. data/generated/google/apis/logging_v2/classes.rb +186 -10
  296. data/generated/google/apis/logging_v2/representations.rb +77 -0
  297. data/generated/google/apis/logging_v2/service.rb +446 -25
  298. data/generated/google/apis/managedidentities_v1.rb +1 -1
  299. data/generated/google/apis/managedidentities_v1/classes.rb +347 -7
  300. data/generated/google/apis/managedidentities_v1/representations.rb +149 -0
  301. data/generated/google/apis/managedidentities_v1/service.rb +1 -4
  302. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  303. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +426 -15
  304. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +182 -1
  305. data/generated/google/apis/managedidentities_v1alpha1/service.rb +83 -5
  306. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  307. data/generated/google/apis/managedidentities_v1beta1/classes.rb +427 -15
  308. data/generated/google/apis/managedidentities_v1beta1/representations.rb +182 -1
  309. data/generated/google/apis/managedidentities_v1beta1/service.rb +83 -5
  310. data/generated/google/apis/memcache_v1beta2.rb +1 -1
  311. data/generated/google/apis/memcache_v1beta2/classes.rb +345 -4
  312. data/generated/google/apis/memcache_v1beta2/representations.rb +149 -0
  313. data/generated/google/apis/ml_v1.rb +1 -1
  314. data/generated/google/apis/ml_v1/classes.rb +273 -79
  315. data/generated/google/apis/ml_v1/representations.rb +43 -0
  316. data/generated/google/apis/ml_v1/service.rb +35 -0
  317. data/generated/google/apis/monitoring_v3.rb +1 -1
  318. data/generated/google/apis/monitoring_v3/classes.rb +19 -13
  319. data/generated/google/apis/monitoring_v3/service.rb +50 -1
  320. data/generated/google/apis/networkmanagement_v1.rb +1 -1
  321. data/generated/google/apis/networkmanagement_v1/classes.rb +6 -0
  322. data/generated/google/apis/networkmanagement_v1/representations.rb +1 -0
  323. data/generated/google/apis/networkmanagement_v1beta1.rb +1 -1
  324. data/generated/google/apis/networkmanagement_v1beta1/classes.rb +57 -0
  325. data/generated/google/apis/networkmanagement_v1beta1/representations.rb +31 -0
  326. data/generated/google/apis/notebooks_v1.rb +34 -0
  327. data/generated/google/apis/notebooks_v1/classes.rb +1461 -0
  328. data/generated/google/apis/notebooks_v1/representations.rb +581 -0
  329. data/generated/google/apis/notebooks_v1/service.rb +1042 -0
  330. data/generated/google/apis/people_v1.rb +1 -1
  331. data/generated/google/apis/people_v1/classes.rb +49 -49
  332. data/generated/google/apis/people_v1/service.rb +21 -18
  333. data/generated/google/apis/playablelocations_v3.rb +1 -1
  334. data/generated/google/apis/playablelocations_v3/classes.rb +6 -6
  335. data/generated/google/apis/playcustomapp_v1.rb +1 -1
  336. data/generated/google/apis/policytroubleshooter_v1.rb +1 -1
  337. data/generated/google/apis/policytroubleshooter_v1beta.rb +1 -1
  338. data/generated/google/apis/poly_v1.rb +3 -4
  339. data/generated/google/apis/poly_v1/classes.rb +65 -79
  340. data/generated/google/apis/poly_v1/service.rb +50 -63
  341. data/generated/google/apis/privateca_v1beta1.rb +36 -0
  342. data/generated/google/apis/privateca_v1beta1/classes.rb +2466 -0
  343. data/generated/google/apis/privateca_v1beta1/representations.rb +996 -0
  344. data/generated/google/apis/privateca_v1beta1/service.rb +1437 -0
  345. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  346. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +109 -0
  347. data/generated/google/apis/pubsub_v1.rb +1 -1
  348. data/generated/google/apis/pubsub_v1/classes.rb +1 -2
  349. data/generated/google/apis/pubsub_v1/service.rb +2 -2
  350. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  351. data/generated/google/apis/pubsub_v1beta2/classes.rb +1 -2
  352. data/generated/google/apis/realtimebidding_v1.rb +1 -1
  353. data/generated/google/apis/realtimebidding_v1/classes.rb +578 -33
  354. data/generated/google/apis/realtimebidding_v1/representations.rb +232 -0
  355. data/generated/google/apis/realtimebidding_v1/service.rb +454 -4
  356. data/generated/google/apis/recommendationengine_v1beta1.rb +1 -1
  357. data/generated/google/apis/recommendationengine_v1beta1/classes.rb +32 -0
  358. data/generated/google/apis/recommendationengine_v1beta1/representations.rb +25 -0
  359. data/generated/google/apis/recommender_v1.rb +1 -1
  360. data/generated/google/apis/recommender_v1/classes.rb +1 -1
  361. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  362. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -1
  363. data/generated/google/apis/redis_v1.rb +1 -1
  364. data/generated/google/apis/redis_v1/classes.rb +86 -0
  365. data/generated/google/apis/redis_v1/representations.rb +34 -0
  366. data/generated/google/apis/redis_v1/service.rb +34 -0
  367. data/generated/google/apis/redis_v1beta1.rb +1 -1
  368. data/generated/google/apis/redis_v1beta1/classes.rb +58 -0
  369. data/generated/google/apis/redis_v1beta1/representations.rb +20 -0
  370. data/generated/google/apis/run_v1.rb +1 -1
  371. data/generated/google/apis/run_v1/classes.rb +7 -6
  372. data/generated/google/apis/run_v1alpha1.rb +1 -1
  373. data/generated/google/apis/runtimeconfig_v1beta1.rb +1 -1
  374. data/generated/google/apis/runtimeconfig_v1beta1/classes.rb +0 -7
  375. data/generated/google/apis/runtimeconfig_v1beta1/representations.rb +0 -1
  376. data/generated/google/apis/safebrowsing_v4.rb +1 -1
  377. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  378. data/generated/google/apis/sasportal_v1alpha1/service.rb +109 -0
  379. data/generated/google/apis/secretmanager_v1.rb +1 -1
  380. data/generated/google/apis/secretmanager_v1/classes.rb +0 -7
  381. data/generated/google/apis/secretmanager_v1/representations.rb +0 -1
  382. data/generated/google/apis/secretmanager_v1beta1.rb +1 -1
  383. data/generated/google/apis/secretmanager_v1beta1/classes.rb +0 -7
  384. data/generated/google/apis/secretmanager_v1beta1/representations.rb +0 -1
  385. data/generated/google/apis/securitycenter_v1.rb +1 -1
  386. data/generated/google/apis/securitycenter_v1beta1.rb +1 -1
  387. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  388. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +6 -64
  389. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +0 -18
  390. data/generated/google/apis/serviceconsumermanagement_v1beta1.rb +1 -1
  391. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +6 -64
  392. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +0 -18
  393. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  394. data/generated/google/apis/servicecontrol_v1/classes.rb +77 -2
  395. data/generated/google/apis/servicecontrol_v1/representations.rb +10 -0
  396. data/generated/google/apis/servicecontrol_v2.rb +1 -1
  397. data/generated/google/apis/servicecontrol_v2/classes.rb +62 -0
  398. data/generated/google/apis/servicecontrol_v2/representations.rb +8 -0
  399. data/generated/google/apis/servicedirectory_v1beta1.rb +1 -1
  400. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +27 -8
  401. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  402. data/generated/google/apis/servicemanagement_v1/classes.rb +6 -64
  403. data/generated/google/apis/servicemanagement_v1/representations.rb +0 -18
  404. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  405. data/generated/google/apis/servicenetworking_v1/classes.rb +207 -65
  406. data/generated/google/apis/servicenetworking_v1/representations.rb +77 -14
  407. data/generated/google/apis/servicenetworking_v1/service.rb +82 -2
  408. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  409. data/generated/google/apis/servicenetworking_v1beta/classes.rb +140 -65
  410. data/generated/google/apis/servicenetworking_v1beta/representations.rb +46 -14
  411. data/generated/google/apis/serviceusage_v1.rb +1 -1
  412. data/generated/google/apis/serviceusage_v1/classes.rb +6 -64
  413. data/generated/google/apis/serviceusage_v1/representations.rb +0 -18
  414. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  415. data/generated/google/apis/serviceusage_v1beta1/classes.rb +36 -64
  416. data/generated/google/apis/serviceusage_v1beta1/representations.rb +15 -18
  417. data/generated/google/apis/serviceusage_v1beta1/service.rb +36 -0
  418. data/generated/google/apis/sheets_v4.rb +1 -1
  419. data/generated/google/apis/sheets_v4/classes.rb +23 -7
  420. data/generated/google/apis/sheets_v4/representations.rb +3 -0
  421. data/generated/google/apis/smartdevicemanagement_v1.rb +1 -1
  422. data/generated/google/apis/smartdevicemanagement_v1/classes.rb +0 -34
  423. data/generated/google/apis/smartdevicemanagement_v1/representations.rb +0 -16
  424. data/generated/google/apis/smartdevicemanagement_v1/service.rb +3 -8
  425. data/generated/google/apis/spanner_v1.rb +1 -1
  426. data/generated/google/apis/spanner_v1/classes.rb +2 -3
  427. data/generated/google/apis/sqladmin_v1beta4.rb +1 -1
  428. data/generated/google/apis/sqladmin_v1beta4/classes.rb +28 -4
  429. data/generated/google/apis/sqladmin_v1beta4/representations.rb +3 -0
  430. data/generated/google/apis/storage_v1.rb +1 -1
  431. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  432. data/generated/google/apis/storagetransfer_v1/classes.rb +82 -50
  433. data/generated/google/apis/storagetransfer_v1/representations.rb +4 -0
  434. data/generated/google/apis/storagetransfer_v1/service.rb +20 -21
  435. data/generated/google/apis/streetviewpublish_v1.rb +1 -1
  436. data/generated/google/apis/streetviewpublish_v1/classes.rb +4 -4
  437. data/generated/google/apis/sts_v1beta.rb +1 -1
  438. data/generated/google/apis/sts_v1beta/classes.rb +12 -11
  439. data/generated/google/apis/tagmanager_v2.rb +1 -1
  440. data/generated/google/apis/tagmanager_v2/classes.rb +12 -0
  441. data/generated/google/apis/tagmanager_v2/representations.rb +3 -0
  442. data/generated/google/apis/testing_v1.rb +1 -1
  443. data/generated/google/apis/testing_v1/classes.rb +45 -33
  444. data/generated/google/apis/testing_v1/representations.rb +1 -0
  445. data/generated/google/apis/testing_v1/service.rb +4 -4
  446. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  447. data/generated/google/apis/toolresults_v1beta3/classes.rb +13 -0
  448. data/generated/google/apis/toolresults_v1beta3/representations.rb +12 -0
  449. data/generated/google/apis/tpu_v1.rb +1 -1
  450. data/generated/google/apis/tpu_v1/classes.rb +3 -3
  451. data/generated/google/apis/tpu_v1/service.rb +8 -8
  452. data/generated/google/apis/tpu_v1alpha1.rb +1 -1
  453. data/generated/google/apis/tpu_v1alpha1/classes.rb +3 -3
  454. data/generated/google/apis/tpu_v1alpha1/service.rb +8 -8
  455. data/generated/google/apis/transcoder_v1beta1.rb +34 -0
  456. data/generated/google/apis/transcoder_v1beta1/classes.rb +1684 -0
  457. data/generated/google/apis/transcoder_v1beta1/representations.rb +756 -0
  458. data/generated/google/apis/transcoder_v1beta1/service.rb +329 -0
  459. data/generated/google/apis/translate_v3.rb +1 -1
  460. data/generated/google/apis/translate_v3/classes.rb +2 -1
  461. data/generated/google/apis/translate_v3beta1.rb +1 -1
  462. data/generated/google/apis/translate_v3beta1/classes.rb +2 -1
  463. data/generated/google/apis/vault_v1.rb +1 -1
  464. data/generated/google/apis/vault_v1/classes.rb +333 -0
  465. data/generated/google/apis/vault_v1/representations.rb +162 -0
  466. data/generated/google/apis/vault_v1/service.rb +151 -0
  467. data/generated/google/apis/videointelligence_v1.rb +1 -1
  468. data/generated/google/apis/videointelligence_v1/service.rb +0 -62
  469. data/generated/google/apis/vision_v1.rb +1 -1
  470. data/generated/google/apis/vision_v1/classes.rb +16 -16
  471. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  472. data/generated/google/apis/vision_v1p1beta1/classes.rb +16 -16
  473. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  474. data/generated/google/apis/vision_v1p2beta1/classes.rb +16 -16
  475. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  476. data/generated/google/apis/youtube_v3.rb +1 -1
  477. data/generated/google/apis/youtube_v3/service.rb +8 -8
  478. data/google-api-client.gemspec +25 -25
  479. data/lib/google/apis/core/api_command.rb +1 -0
  480. data/lib/google/apis/core/http_command.rb +2 -1
  481. data/lib/google/apis/options.rb +8 -5
  482. data/lib/google/apis/version.rb +1 -1
  483. data/synth.py +40 -0
  484. metadata +47 -16
  485. data/generated/google/apis/displayvideo_v1beta.rb +0 -38
  486. data/generated/google/apis/displayvideo_v1beta/classes.rb +0 -146
  487. data/generated/google/apis/displayvideo_v1beta/representations.rb +0 -72
  488. data/generated/google/apis/displayvideo_v1beta/service.rb +0 -161
  489. data/generated/google/apis/displayvideo_v1beta2.rb +0 -38
  490. data/generated/google/apis/displayvideo_v1beta2/classes.rb +0 -146
  491. data/generated/google/apis/displayvideo_v1beta2/representations.rb +0 -72
  492. data/generated/google/apis/displayvideo_v1beta2/service.rb +0 -130
  493. data/generated/google/apis/displayvideo_v1dev.rb +0 -38
  494. data/generated/google/apis/displayvideo_v1dev/classes.rb +0 -146
  495. data/generated/google/apis/displayvideo_v1dev/representations.rb +0 -72
  496. data/generated/google/apis/displayvideo_v1dev/service.rb +0 -130
@@ -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/notebooks_v1/service.rb'
16
+ require 'google/apis/notebooks_v1/classes.rb'
17
+ require 'google/apis/notebooks_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Notebooks API
22
+ #
23
+ # AI Platform Notebooks API is used to manage notebook resources in Google Cloud.
24
+ #
25
+ # @see https://cloud.google.com/ai-platform/notebooks/docs/
26
+ module NotebooksV1
27
+ VERSION = 'V1'
28
+ REVISION = '20201030'
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,1461 @@
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 NotebooksV1
24
+
25
+ # Definition of a hardware accelerator. Note that not all combinations of `type`
26
+ # and `core_count` are valid. Check [GPUs on Compute Engine](/compute/docs/gpus/#
27
+ # gpus-list) to find a valid combination. TPUs are not supported.
28
+ class AcceleratorConfig
29
+ include Google::Apis::Core::Hashable
30
+
31
+ # Count of cores of this accelerator.
32
+ # Corresponds to the JSON property `coreCount`
33
+ # @return [Fixnum]
34
+ attr_accessor :core_count
35
+
36
+ # Type of this accelerator.
37
+ # Corresponds to the JSON property `type`
38
+ # @return [String]
39
+ attr_accessor :type
40
+
41
+ def initialize(**args)
42
+ update!(**args)
43
+ end
44
+
45
+ # Update properties of this object
46
+ def update!(**args)
47
+ @core_count = args[:core_count] if args.key?(:core_count)
48
+ @type = args[:type] if args.key?(:type)
49
+ end
50
+ end
51
+
52
+ # Associates `members` with a `role`.
53
+ class Binding
54
+ include Google::Apis::Core::Hashable
55
+
56
+ #
57
+ # Corresponds to the JSON property `bindingId`
58
+ # @return [String]
59
+ attr_accessor :binding_id
60
+
61
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
62
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
63
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
64
+ # "Summary size limit" description: "Determines if a summary is less than 100
65
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
66
+ # Requestor is owner" description: "Determines if requestor is the document
67
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
68
+ # Logic): title: "Public documents" description: "Determine whether the document
69
+ # should be publicly visible" expression: "document.type != 'private' &&
70
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
71
+ # string" description: "Create a notification string with a timestamp."
72
+ # expression: "'New message received at ' + string(document.create_time)" The
73
+ # exact variables and functions that may be referenced within an expression are
74
+ # determined by the service that evaluates it. See the service documentation for
75
+ # additional information.
76
+ # Corresponds to the JSON property `condition`
77
+ # @return [Google::Apis::NotebooksV1::Expr]
78
+ attr_accessor :condition
79
+
80
+ # Specifies the identities requesting access for a Cloud Platform resource. `
81
+ # members` can have the following values: * `allUsers`: A special identifier
82
+ # that represents anyone who is on the internet; with or without a Google
83
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
84
+ # anyone who is authenticated with a Google account or a service account. * `
85
+ # user:`emailid``: An email address that represents a specific Google account.
86
+ # For example, `alice@example.com` . * `serviceAccount:`emailid``: An email
87
+ # address that represents a service account. For example, `my-other-app@appspot.
88
+ # gserviceaccount.com`. * `group:`emailid``: An email address that represents a
89
+ # Google group. For example, `admins@example.com`. * `deleted:user:`emailid`?uid=
90
+ # `uniqueid``: An email address (plus unique identifier) representing a user
91
+ # that has been recently deleted. For example, `alice@example.com?uid=
92
+ # 123456789012345678901`. If the user is recovered, this value reverts to `user:`
93
+ # emailid`` and the recovered user retains the role in the binding. * `deleted:
94
+ # serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus unique
95
+ # identifier) representing a service account that has been recently deleted. For
96
+ # example, `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
97
+ # If the service account is undeleted, this value reverts to `serviceAccount:`
98
+ # emailid`` and the undeleted service account retains the role in the binding. *
99
+ # `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique
100
+ # identifier) representing a Google group that has been recently deleted. For
101
+ # example, `admins@example.com?uid=123456789012345678901`. If the group is
102
+ # recovered, this value reverts to `group:`emailid`` and the recovered group
103
+ # retains the role in the binding. * `domain:`domain``: The G Suite domain (
104
+ # primary) that represents all the users of that domain. For example, `google.
105
+ # com` or `example.com`.
106
+ # Corresponds to the JSON property `members`
107
+ # @return [Array<String>]
108
+ attr_accessor :members
109
+
110
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
111
+ # , or `roles/owner`.
112
+ # Corresponds to the JSON property `role`
113
+ # @return [String]
114
+ attr_accessor :role
115
+
116
+ def initialize(**args)
117
+ update!(**args)
118
+ end
119
+
120
+ # Update properties of this object
121
+ def update!(**args)
122
+ @binding_id = args[:binding_id] if args.key?(:binding_id)
123
+ @condition = args[:condition] if args.key?(:condition)
124
+ @members = args[:members] if args.key?(:members)
125
+ @role = args[:role] if args.key?(:role)
126
+ end
127
+ end
128
+
129
+ # The request message for Operations.CancelOperation.
130
+ class CancelOperationRequest
131
+ include Google::Apis::Core::Hashable
132
+
133
+ def initialize(**args)
134
+ update!(**args)
135
+ end
136
+
137
+ # Update properties of this object
138
+ def update!(**args)
139
+ end
140
+ end
141
+
142
+ # Definition of a container image for starting a notebook instance with the
143
+ # environment installed in a container.
144
+ class ContainerImage
145
+ include Google::Apis::Core::Hashable
146
+
147
+ # Required. The path to the container image repository. For example: `gcr.io/`
148
+ # project_id`/`image_name``
149
+ # Corresponds to the JSON property `repository`
150
+ # @return [String]
151
+ attr_accessor :repository
152
+
153
+ # The tag of the container image. If not specified, this defaults to the latest
154
+ # tag.
155
+ # Corresponds to the JSON property `tag`
156
+ # @return [String]
157
+ attr_accessor :tag
158
+
159
+ def initialize(**args)
160
+ update!(**args)
161
+ end
162
+
163
+ # Update properties of this object
164
+ def update!(**args)
165
+ @repository = args[:repository] if args.key?(:repository)
166
+ @tag = args[:tag] if args.key?(:tag)
167
+ end
168
+ end
169
+
170
+ # An instance-attached disk resource.
171
+ class Disk
172
+ include Google::Apis::Core::Hashable
173
+
174
+ # Indicates whether the disk will be auto-deleted when the instance is deleted (
175
+ # but not when the disk is detached from the instance).
176
+ # Corresponds to the JSON property `autoDelete`
177
+ # @return [Boolean]
178
+ attr_accessor :auto_delete
179
+ alias_method :auto_delete?, :auto_delete
180
+
181
+ # Indicates that this is a boot disk. The virtual machine will use the first
182
+ # partition of the disk for its root filesystem.
183
+ # Corresponds to the JSON property `boot`
184
+ # @return [Boolean]
185
+ attr_accessor :boot
186
+ alias_method :boot?, :boot
187
+
188
+ # Indicates a unique device name of your choice that is reflected into the /dev/
189
+ # disk/by-id/google-* tree of a Linux operating system running within the
190
+ # instance. This name can be used to reference the device for mounting, resizing,
191
+ # and so on, from within the instance. If not specified, the server chooses a
192
+ # default device name to apply to this disk, in the form persistent-disk-x,
193
+ # where x is a number assigned by Google Compute Engine.This field is only
194
+ # applicable for persistent disks.
195
+ # Corresponds to the JSON property `deviceName`
196
+ # @return [String]
197
+ attr_accessor :device_name
198
+
199
+ # Indicates the size of the disk in base-2 GB.
200
+ # Corresponds to the JSON property `diskSizeGb`
201
+ # @return [Fixnum]
202
+ attr_accessor :disk_size_gb
203
+
204
+ # Indicates a list of features to enable on the guest operating system.
205
+ # Applicable only for bootable images. Read Enabling guest operating system
206
+ # features to see a list of available options.
207
+ # Corresponds to the JSON property `guestOsFeatures`
208
+ # @return [Array<Google::Apis::NotebooksV1::GuestOsFeature>]
209
+ attr_accessor :guest_os_features
210
+
211
+ # A zero-based index to this disk, where 0 is reserved for the boot disk. If you
212
+ # have many disks attached to an instance, each disk would have a unique index
213
+ # number.
214
+ # Corresponds to the JSON property `index`
215
+ # @return [Fixnum]
216
+ attr_accessor :index
217
+
218
+ # Indicates the disk interface to use for attaching this disk, which is either
219
+ # SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and
220
+ # the request will fail if you attempt to attach a persistent disk in any other
221
+ # format than SCSI. Local SSDs can use either NVME or SCSI. For performance
222
+ # characteristics of SCSI over NVMe, see Local SSD performance. Valid values:
223
+ # NVME SCSI
224
+ # Corresponds to the JSON property `interface`
225
+ # @return [String]
226
+ attr_accessor :interface
227
+
228
+ # Type of the resource. Always compute#attachedDisk for attached disks.
229
+ # Corresponds to the JSON property `kind`
230
+ # @return [String]
231
+ attr_accessor :kind
232
+
233
+ # A list of publicly visible licenses. Reserved for Google's use. A License
234
+ # represents billing and aggregate usage data for public and marketplace images.
235
+ # Corresponds to the JSON property `licenses`
236
+ # @return [Array<String>]
237
+ attr_accessor :licenses
238
+
239
+ # The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not
240
+ # specified, the default is to attach the disk in READ_WRITE mode. Valid values:
241
+ # READ_ONLY READ_WRITE
242
+ # Corresponds to the JSON property `mode`
243
+ # @return [String]
244
+ attr_accessor :mode
245
+
246
+ # Indicates a valid partial or full URL to an existing Persistent Disk resource.
247
+ # Corresponds to the JSON property `source`
248
+ # @return [String]
249
+ attr_accessor :source
250
+
251
+ # Indicates the type of the disk, either SCRATCH or PERSISTENT. Valid values:
252
+ # PERSISTENT SCRATCH
253
+ # Corresponds to the JSON property `type`
254
+ # @return [String]
255
+ attr_accessor :type
256
+
257
+ def initialize(**args)
258
+ update!(**args)
259
+ end
260
+
261
+ # Update properties of this object
262
+ def update!(**args)
263
+ @auto_delete = args[:auto_delete] if args.key?(:auto_delete)
264
+ @boot = args[:boot] if args.key?(:boot)
265
+ @device_name = args[:device_name] if args.key?(:device_name)
266
+ @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
267
+ @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
268
+ @index = args[:index] if args.key?(:index)
269
+ @interface = args[:interface] if args.key?(:interface)
270
+ @kind = args[:kind] if args.key?(:kind)
271
+ @licenses = args[:licenses] if args.key?(:licenses)
272
+ @mode = args[:mode] if args.key?(:mode)
273
+ @source = args[:source] if args.key?(:source)
274
+ @type = args[:type] if args.key?(:type)
275
+ end
276
+ end
277
+
278
+ # A generic empty message that you can re-use to avoid defining duplicated empty
279
+ # messages in your APIs. A typical example is to use it as the request or the
280
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
281
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
282
+ # `Empty` is empty JSON object ````.
283
+ class Empty
284
+ include Google::Apis::Core::Hashable
285
+
286
+ def initialize(**args)
287
+ update!(**args)
288
+ end
289
+
290
+ # Update properties of this object
291
+ def update!(**args)
292
+ end
293
+ end
294
+
295
+ # Definition of a software environment that is used to start a notebook instance.
296
+ class Environment
297
+ include Google::Apis::Core::Hashable
298
+
299
+ # Definition of a container image for starting a notebook instance with the
300
+ # environment installed in a container.
301
+ # Corresponds to the JSON property `containerImage`
302
+ # @return [Google::Apis::NotebooksV1::ContainerImage]
303
+ attr_accessor :container_image
304
+
305
+ # Output only. The time at which this environment was created.
306
+ # Corresponds to the JSON property `createTime`
307
+ # @return [String]
308
+ attr_accessor :create_time
309
+
310
+ # A brief description of this environment.
311
+ # Corresponds to the JSON property `description`
312
+ # @return [String]
313
+ attr_accessor :description
314
+
315
+ # Display name of this environment for the UI.
316
+ # Corresponds to the JSON property `displayName`
317
+ # @return [String]
318
+ attr_accessor :display_name
319
+
320
+ # Output only. Name of this environment. Format: `projects/`project_id`/
321
+ # locations/`location`/environments/`environment_id``
322
+ # Corresponds to the JSON property `name`
323
+ # @return [String]
324
+ attr_accessor :name
325
+
326
+ # Path to a Bash script that automatically runs after a notebook instance fully
327
+ # boots up. The path must be a URL or Cloud Storage path. Example: `"gs://path-
328
+ # to-file/file-name"`
329
+ # Corresponds to the JSON property `postStartupScript`
330
+ # @return [String]
331
+ attr_accessor :post_startup_script
332
+
333
+ # Definition of a custom Compute Engine virtual machine image for starting a
334
+ # notebook instance with the environment installed directly on the VM.
335
+ # Corresponds to the JSON property `vmImage`
336
+ # @return [Google::Apis::NotebooksV1::VmImage]
337
+ attr_accessor :vm_image
338
+
339
+ def initialize(**args)
340
+ update!(**args)
341
+ end
342
+
343
+ # Update properties of this object
344
+ def update!(**args)
345
+ @container_image = args[:container_image] if args.key?(:container_image)
346
+ @create_time = args[:create_time] if args.key?(:create_time)
347
+ @description = args[:description] if args.key?(:description)
348
+ @display_name = args[:display_name] if args.key?(:display_name)
349
+ @name = args[:name] if args.key?(:name)
350
+ @post_startup_script = args[:post_startup_script] if args.key?(:post_startup_script)
351
+ @vm_image = args[:vm_image] if args.key?(:vm_image)
352
+ end
353
+ end
354
+
355
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
356
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
357
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
358
+ # "Summary size limit" description: "Determines if a summary is less than 100
359
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
360
+ # Requestor is owner" description: "Determines if requestor is the document
361
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
362
+ # Logic): title: "Public documents" description: "Determine whether the document
363
+ # should be publicly visible" expression: "document.type != 'private' &&
364
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
365
+ # string" description: "Create a notification string with a timestamp."
366
+ # expression: "'New message received at ' + string(document.create_time)" The
367
+ # exact variables and functions that may be referenced within an expression are
368
+ # determined by the service that evaluates it. See the service documentation for
369
+ # additional information.
370
+ class Expr
371
+ include Google::Apis::Core::Hashable
372
+
373
+ # Optional. Description of the expression. This is a longer text which describes
374
+ # the expression, e.g. when hovered over it in a UI.
375
+ # Corresponds to the JSON property `description`
376
+ # @return [String]
377
+ attr_accessor :description
378
+
379
+ # Textual representation of an expression in Common Expression Language syntax.
380
+ # Corresponds to the JSON property `expression`
381
+ # @return [String]
382
+ attr_accessor :expression
383
+
384
+ # Optional. String indicating the location of the expression for error reporting,
385
+ # e.g. a file name and a position in the file.
386
+ # Corresponds to the JSON property `location`
387
+ # @return [String]
388
+ attr_accessor :location
389
+
390
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
391
+ # This can be used e.g. in UIs which allow to enter the expression.
392
+ # Corresponds to the JSON property `title`
393
+ # @return [String]
394
+ attr_accessor :title
395
+
396
+ def initialize(**args)
397
+ update!(**args)
398
+ end
399
+
400
+ # Update properties of this object
401
+ def update!(**args)
402
+ @description = args[:description] if args.key?(:description)
403
+ @expression = args[:expression] if args.key?(:expression)
404
+ @location = args[:location] if args.key?(:location)
405
+ @title = args[:title] if args.key?(:title)
406
+ end
407
+ end
408
+
409
+ # Guest OS features for boot disk.
410
+ class GuestOsFeature
411
+ include Google::Apis::Core::Hashable
412
+
413
+ # The ID of a supported feature. Read Enabling guest operating system features
414
+ # to see a list of available options. Valid values: FEATURE_TYPE_UNSPECIFIED
415
+ # MULTI_IP_SUBNET SECURE_BOOT UEFI_COMPATIBLE VIRTIO_SCSI_MULTIQUEUE WINDOWS
416
+ # Corresponds to the JSON property `type`
417
+ # @return [String]
418
+ attr_accessor :type
419
+
420
+ def initialize(**args)
421
+ update!(**args)
422
+ end
423
+
424
+ # Update properties of this object
425
+ def update!(**args)
426
+ @type = args[:type] if args.key?(:type)
427
+ end
428
+ end
429
+
430
+ # The definition of a notebook instance.
431
+ class Instance
432
+ include Google::Apis::Core::Hashable
433
+
434
+ # Definition of a hardware accelerator. Note that not all combinations of `type`
435
+ # and `core_count` are valid. Check [GPUs on Compute Engine](/compute/docs/gpus/#
436
+ # gpus-list) to find a valid combination. TPUs are not supported.
437
+ # Corresponds to the JSON property `acceleratorConfig`
438
+ # @return [Google::Apis::NotebooksV1::AcceleratorConfig]
439
+ attr_accessor :accelerator_config
440
+
441
+ # Input only. The size of the boot disk in GB attached to this instance, up to a
442
+ # maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB. If not
443
+ # specified, this defaults to 100.
444
+ # Corresponds to the JSON property `bootDiskSizeGb`
445
+ # @return [Fixnum]
446
+ attr_accessor :boot_disk_size_gb
447
+
448
+ # Input only. The type of the boot disk attached to this instance, defaults to
449
+ # standard persistent disk (`PD_STANDARD`).
450
+ # Corresponds to the JSON property `bootDiskType`
451
+ # @return [String]
452
+ attr_accessor :boot_disk_type
453
+
454
+ # Definition of a container image for starting a notebook instance with the
455
+ # environment installed in a container.
456
+ # Corresponds to the JSON property `containerImage`
457
+ # @return [Google::Apis::NotebooksV1::ContainerImage]
458
+ attr_accessor :container_image
459
+
460
+ # Output only. Instance creation time.
461
+ # Corresponds to the JSON property `createTime`
462
+ # @return [String]
463
+ attr_accessor :create_time
464
+
465
+ # Specify a custom Cloud Storage path where the GPU driver is stored. If not
466
+ # specified, we'll automatically choose from official GPU drivers.
467
+ # Corresponds to the JSON property `customGpuDriverPath`
468
+ # @return [String]
469
+ attr_accessor :custom_gpu_driver_path
470
+
471
+ # Input only. The size of the data disk in GB attached to this instance, up to a
472
+ # maximum of 64000 GB (64 TB). You can choose the size of the data disk based on
473
+ # how big your notebooks and data are. If not specified, this defaults to 100.
474
+ # Corresponds to the JSON property `dataDiskSizeGb`
475
+ # @return [Fixnum]
476
+ attr_accessor :data_disk_size_gb
477
+
478
+ # Input only. The type of the data disk attached to this instance, defaults to
479
+ # standard persistent disk (`PD_STANDARD`).
480
+ # Corresponds to the JSON property `dataDiskType`
481
+ # @return [String]
482
+ attr_accessor :data_disk_type
483
+
484
+ # Input only. Disk encryption method used on the boot and data disks, defaults
485
+ # to GMEK.
486
+ # Corresponds to the JSON property `diskEncryption`
487
+ # @return [String]
488
+ attr_accessor :disk_encryption
489
+
490
+ # Output only. Attached disks to notebook instance.
491
+ # Corresponds to the JSON property `disks`
492
+ # @return [Array<Google::Apis::NotebooksV1::Disk>]
493
+ attr_accessor :disks
494
+
495
+ # Whether the end user authorizes Google Cloud to install GPU driver on this
496
+ # instance. If this field is empty or set to false, the GPU driver won't be
497
+ # installed. Only applicable to instances with GPUs.
498
+ # Corresponds to the JSON property `installGpuDriver`
499
+ # @return [Boolean]
500
+ attr_accessor :install_gpu_driver
501
+ alias_method :install_gpu_driver?, :install_gpu_driver
502
+
503
+ # Input only. The owner of this instance after creation. Format: `alias@example.
504
+ # com` Currently supports one owner only. If not specified, all of the service
505
+ # account users of your VM instance's service account can use the instance.
506
+ # Corresponds to the JSON property `instanceOwners`
507
+ # @return [Array<String>]
508
+ attr_accessor :instance_owners
509
+
510
+ # Input only. The KMS key used to encrypt the disks, only applicable if
511
+ # disk_encryption is CMEK. Format: `projects/`project_id`/locations/`location`/
512
+ # keyRings/`key_ring_id`/cryptoKeys/`key_id`` Learn more about [using your own
513
+ # encryption keys](/kms/docs/quickstart).
514
+ # Corresponds to the JSON property `kmsKey`
515
+ # @return [String]
516
+ attr_accessor :kms_key
517
+
518
+ # Labels to apply to this instance. These can be later modified by the setLabels
519
+ # method.
520
+ # Corresponds to the JSON property `labels`
521
+ # @return [Hash<String,String>]
522
+ attr_accessor :labels
523
+
524
+ # Required. The [Compute Engine machine type](/compute/docs/machine-types) of
525
+ # this instance.
526
+ # Corresponds to the JSON property `machineType`
527
+ # @return [String]
528
+ attr_accessor :machine_type
529
+
530
+ # Custom metadata to apply to this instance.
531
+ # Corresponds to the JSON property `metadata`
532
+ # @return [Hash<String,String>]
533
+ attr_accessor :metadata
534
+
535
+ # Output only. The name of this notebook instance. Format: `projects/`project_id`
536
+ # /locations/`location`/instances/`instance_id``
537
+ # Corresponds to the JSON property `name`
538
+ # @return [String]
539
+ attr_accessor :name
540
+
541
+ # The name of the VPC that this instance is in. Format: `projects/`project_id`/
542
+ # global/networks/`network_id``
543
+ # Corresponds to the JSON property `network`
544
+ # @return [String]
545
+ attr_accessor :network
546
+
547
+ # If true, the notebook instance will not register with the proxy.
548
+ # Corresponds to the JSON property `noProxyAccess`
549
+ # @return [Boolean]
550
+ attr_accessor :no_proxy_access
551
+ alias_method :no_proxy_access?, :no_proxy_access
552
+
553
+ # If true, no public IP will be assigned to this instance.
554
+ # Corresponds to the JSON property `noPublicIp`
555
+ # @return [Boolean]
556
+ attr_accessor :no_public_ip
557
+ alias_method :no_public_ip?, :no_public_ip
558
+
559
+ # Input only. If true, the data disk will not be auto deleted when deleting the
560
+ # instance.
561
+ # Corresponds to the JSON property `noRemoveDataDisk`
562
+ # @return [Boolean]
563
+ attr_accessor :no_remove_data_disk
564
+ alias_method :no_remove_data_disk?, :no_remove_data_disk
565
+
566
+ # Path to a Bash script that automatically runs after a notebook instance fully
567
+ # boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-
568
+ # name).
569
+ # Corresponds to the JSON property `postStartupScript`
570
+ # @return [String]
571
+ attr_accessor :post_startup_script
572
+
573
+ # Output only. The proxy endpoint that is used to access the Jupyter notebook.
574
+ # Corresponds to the JSON property `proxyUri`
575
+ # @return [String]
576
+ attr_accessor :proxy_uri
577
+
578
+ # The service account on this instance, giving access to other Google Cloud
579
+ # services. You can use any service account within the same project, but you
580
+ # must have the service account user permission to use the instance. If not
581
+ # specified, the [Compute Engine default service account](https://cloud.google.
582
+ # com/compute/docs/access/service-accounts#default_service_account) is used.
583
+ # Corresponds to the JSON property `serviceAccount`
584
+ # @return [String]
585
+ attr_accessor :service_account
586
+
587
+ # Output only. The state of this instance.
588
+ # Corresponds to the JSON property `state`
589
+ # @return [String]
590
+ attr_accessor :state
591
+
592
+ # The name of the subnet that this instance is in. Format: `projects/`project_id`
593
+ # /regions/`region`/subnetworks/`subnetwork_id``
594
+ # Corresponds to the JSON property `subnet`
595
+ # @return [String]
596
+ attr_accessor :subnet
597
+
598
+ # Output only. Instance update time.
599
+ # Corresponds to the JSON property `updateTime`
600
+ # @return [String]
601
+ attr_accessor :update_time
602
+
603
+ # The upgrade history of this instance.
604
+ # Corresponds to the JSON property `upgradeHistory`
605
+ # @return [Array<Google::Apis::NotebooksV1::UpgradeHistoryEntry>]
606
+ attr_accessor :upgrade_history
607
+
608
+ # Definition of a custom Compute Engine virtual machine image for starting a
609
+ # notebook instance with the environment installed directly on the VM.
610
+ # Corresponds to the JSON property `vmImage`
611
+ # @return [Google::Apis::NotebooksV1::VmImage]
612
+ attr_accessor :vm_image
613
+
614
+ def initialize(**args)
615
+ update!(**args)
616
+ end
617
+
618
+ # Update properties of this object
619
+ def update!(**args)
620
+ @accelerator_config = args[:accelerator_config] if args.key?(:accelerator_config)
621
+ @boot_disk_size_gb = args[:boot_disk_size_gb] if args.key?(:boot_disk_size_gb)
622
+ @boot_disk_type = args[:boot_disk_type] if args.key?(:boot_disk_type)
623
+ @container_image = args[:container_image] if args.key?(:container_image)
624
+ @create_time = args[:create_time] if args.key?(:create_time)
625
+ @custom_gpu_driver_path = args[:custom_gpu_driver_path] if args.key?(:custom_gpu_driver_path)
626
+ @data_disk_size_gb = args[:data_disk_size_gb] if args.key?(:data_disk_size_gb)
627
+ @data_disk_type = args[:data_disk_type] if args.key?(:data_disk_type)
628
+ @disk_encryption = args[:disk_encryption] if args.key?(:disk_encryption)
629
+ @disks = args[:disks] if args.key?(:disks)
630
+ @install_gpu_driver = args[:install_gpu_driver] if args.key?(:install_gpu_driver)
631
+ @instance_owners = args[:instance_owners] if args.key?(:instance_owners)
632
+ @kms_key = args[:kms_key] if args.key?(:kms_key)
633
+ @labels = args[:labels] if args.key?(:labels)
634
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
635
+ @metadata = args[:metadata] if args.key?(:metadata)
636
+ @name = args[:name] if args.key?(:name)
637
+ @network = args[:network] if args.key?(:network)
638
+ @no_proxy_access = args[:no_proxy_access] if args.key?(:no_proxy_access)
639
+ @no_public_ip = args[:no_public_ip] if args.key?(:no_public_ip)
640
+ @no_remove_data_disk = args[:no_remove_data_disk] if args.key?(:no_remove_data_disk)
641
+ @post_startup_script = args[:post_startup_script] if args.key?(:post_startup_script)
642
+ @proxy_uri = args[:proxy_uri] if args.key?(:proxy_uri)
643
+ @service_account = args[:service_account] if args.key?(:service_account)
644
+ @state = args[:state] if args.key?(:state)
645
+ @subnet = args[:subnet] if args.key?(:subnet)
646
+ @update_time = args[:update_time] if args.key?(:update_time)
647
+ @upgrade_history = args[:upgrade_history] if args.key?(:upgrade_history)
648
+ @vm_image = args[:vm_image] if args.key?(:vm_image)
649
+ end
650
+ end
651
+
652
+ # Response for checking if a notebook instance is upgradeable.
653
+ class IsInstanceUpgradeableResponse
654
+ include Google::Apis::Core::Hashable
655
+
656
+ # Additional information about upgrade.
657
+ # Corresponds to the JSON property `upgradeInfo`
658
+ # @return [String]
659
+ attr_accessor :upgrade_info
660
+
661
+ # The version this instance will be upgraded to if calling the upgrade endpoint.
662
+ # This field will only be populated if field upgradeable is true.
663
+ # Corresponds to the JSON property `upgradeVersion`
664
+ # @return [String]
665
+ attr_accessor :upgrade_version
666
+
667
+ # If an instance is upgradeable.
668
+ # Corresponds to the JSON property `upgradeable`
669
+ # @return [Boolean]
670
+ attr_accessor :upgradeable
671
+ alias_method :upgradeable?, :upgradeable
672
+
673
+ def initialize(**args)
674
+ update!(**args)
675
+ end
676
+
677
+ # Update properties of this object
678
+ def update!(**args)
679
+ @upgrade_info = args[:upgrade_info] if args.key?(:upgrade_info)
680
+ @upgrade_version = args[:upgrade_version] if args.key?(:upgrade_version)
681
+ @upgradeable = args[:upgradeable] if args.key?(:upgradeable)
682
+ end
683
+ end
684
+
685
+ # Response for listing environments.
686
+ class ListEnvironmentsResponse
687
+ include Google::Apis::Core::Hashable
688
+
689
+ # A list of returned environments.
690
+ # Corresponds to the JSON property `environments`
691
+ # @return [Array<Google::Apis::NotebooksV1::Environment>]
692
+ attr_accessor :environments
693
+
694
+ # A page token that can be used to continue listing from the last result in the
695
+ # next list call.
696
+ # Corresponds to the JSON property `nextPageToken`
697
+ # @return [String]
698
+ attr_accessor :next_page_token
699
+
700
+ # Locations that could not be reached.
701
+ # Corresponds to the JSON property `unreachable`
702
+ # @return [Array<String>]
703
+ attr_accessor :unreachable
704
+
705
+ def initialize(**args)
706
+ update!(**args)
707
+ end
708
+
709
+ # Update properties of this object
710
+ def update!(**args)
711
+ @environments = args[:environments] if args.key?(:environments)
712
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
713
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
714
+ end
715
+ end
716
+
717
+ # Response for listing notebook instances.
718
+ class ListInstancesResponse
719
+ include Google::Apis::Core::Hashable
720
+
721
+ # A list of returned instances.
722
+ # Corresponds to the JSON property `instances`
723
+ # @return [Array<Google::Apis::NotebooksV1::Instance>]
724
+ attr_accessor :instances
725
+
726
+ # Page token that can be used to continue listing from the last result in the
727
+ # next list call.
728
+ # Corresponds to the JSON property `nextPageToken`
729
+ # @return [String]
730
+ attr_accessor :next_page_token
731
+
732
+ # Locations that could not be reached. For example, ['us-west1-a', 'us-central1-
733
+ # b']. A ListInstancesResponse will only contain either instances or
734
+ # unreachables,
735
+ # Corresponds to the JSON property `unreachable`
736
+ # @return [Array<String>]
737
+ attr_accessor :unreachable
738
+
739
+ def initialize(**args)
740
+ update!(**args)
741
+ end
742
+
743
+ # Update properties of this object
744
+ def update!(**args)
745
+ @instances = args[:instances] if args.key?(:instances)
746
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
747
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
748
+ end
749
+ end
750
+
751
+ # The response message for Locations.ListLocations.
752
+ class ListLocationsResponse
753
+ include Google::Apis::Core::Hashable
754
+
755
+ # A list of locations that matches the specified filter in the request.
756
+ # Corresponds to the JSON property `locations`
757
+ # @return [Array<Google::Apis::NotebooksV1::Location>]
758
+ attr_accessor :locations
759
+
760
+ # The standard List next-page token.
761
+ # Corresponds to the JSON property `nextPageToken`
762
+ # @return [String]
763
+ attr_accessor :next_page_token
764
+
765
+ def initialize(**args)
766
+ update!(**args)
767
+ end
768
+
769
+ # Update properties of this object
770
+ def update!(**args)
771
+ @locations = args[:locations] if args.key?(:locations)
772
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
773
+ end
774
+ end
775
+
776
+ # The response message for Operations.ListOperations.
777
+ class ListOperationsResponse
778
+ include Google::Apis::Core::Hashable
779
+
780
+ # The standard List next-page token.
781
+ # Corresponds to the JSON property `nextPageToken`
782
+ # @return [String]
783
+ attr_accessor :next_page_token
784
+
785
+ # A list of operations that matches the specified filter in the request.
786
+ # Corresponds to the JSON property `operations`
787
+ # @return [Array<Google::Apis::NotebooksV1::Operation>]
788
+ attr_accessor :operations
789
+
790
+ def initialize(**args)
791
+ update!(**args)
792
+ end
793
+
794
+ # Update properties of this object
795
+ def update!(**args)
796
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
797
+ @operations = args[:operations] if args.key?(:operations)
798
+ end
799
+ end
800
+
801
+ # A resource that represents Google Cloud Platform location.
802
+ class Location
803
+ include Google::Apis::Core::Hashable
804
+
805
+ # The friendly name for this location, typically a nearby city name. For example,
806
+ # "Tokyo".
807
+ # Corresponds to the JSON property `displayName`
808
+ # @return [String]
809
+ attr_accessor :display_name
810
+
811
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
812
+ # region": "us-east1"`
813
+ # Corresponds to the JSON property `labels`
814
+ # @return [Hash<String,String>]
815
+ attr_accessor :labels
816
+
817
+ # The canonical id for this location. For example: `"us-east1"`.
818
+ # Corresponds to the JSON property `locationId`
819
+ # @return [String]
820
+ attr_accessor :location_id
821
+
822
+ # Service-specific metadata. For example the available capacity at the given
823
+ # location.
824
+ # Corresponds to the JSON property `metadata`
825
+ # @return [Hash<String,Object>]
826
+ attr_accessor :metadata
827
+
828
+ # Resource name for the location, which may vary between implementations. For
829
+ # example: `"projects/example-project/locations/us-east1"`
830
+ # Corresponds to the JSON property `name`
831
+ # @return [String]
832
+ attr_accessor :name
833
+
834
+ def initialize(**args)
835
+ update!(**args)
836
+ end
837
+
838
+ # Update properties of this object
839
+ def update!(**args)
840
+ @display_name = args[:display_name] if args.key?(:display_name)
841
+ @labels = args[:labels] if args.key?(:labels)
842
+ @location_id = args[:location_id] if args.key?(:location_id)
843
+ @metadata = args[:metadata] if args.key?(:metadata)
844
+ @name = args[:name] if args.key?(:name)
845
+ end
846
+ end
847
+
848
+ # This resource represents a long-running operation that is the result of a
849
+ # network API call.
850
+ class Operation
851
+ include Google::Apis::Core::Hashable
852
+
853
+ # If the value is `false`, it means the operation is still in progress. If `true`
854
+ # , the operation is completed, and either `error` or `response` is available.
855
+ # Corresponds to the JSON property `done`
856
+ # @return [Boolean]
857
+ attr_accessor :done
858
+ alias_method :done?, :done
859
+
860
+ # The `Status` type defines a logical error model that is suitable for different
861
+ # programming environments, including REST APIs and RPC APIs. It is used by [
862
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
863
+ # data: error code, error message, and error details. You can find out more
864
+ # about this error model and how to work with it in the [API Design Guide](https:
865
+ # //cloud.google.com/apis/design/errors).
866
+ # Corresponds to the JSON property `error`
867
+ # @return [Google::Apis::NotebooksV1::Status]
868
+ attr_accessor :error
869
+
870
+ # Service-specific metadata associated with the operation. It typically contains
871
+ # progress information and common metadata such as create time. Some services
872
+ # might not provide such metadata. Any method that returns a long-running
873
+ # operation should document the metadata type, if any.
874
+ # Corresponds to the JSON property `metadata`
875
+ # @return [Hash<String,Object>]
876
+ attr_accessor :metadata
877
+
878
+ # The server-assigned name, which is only unique within the same service that
879
+ # originally returns it. If you use the default HTTP mapping, the `name` should
880
+ # be a resource name ending with `operations/`unique_id``.
881
+ # Corresponds to the JSON property `name`
882
+ # @return [String]
883
+ attr_accessor :name
884
+
885
+ # The normal response of the operation in case of success. If the original
886
+ # method returns no data on success, such as `Delete`, the response is `google.
887
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
888
+ # the response should be the resource. For other methods, the response should
889
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
890
+ # example, if the original method name is `TakeSnapshot()`, the inferred
891
+ # response type is `TakeSnapshotResponse`.
892
+ # Corresponds to the JSON property `response`
893
+ # @return [Hash<String,Object>]
894
+ attr_accessor :response
895
+
896
+ def initialize(**args)
897
+ update!(**args)
898
+ end
899
+
900
+ # Update properties of this object
901
+ def update!(**args)
902
+ @done = args[:done] if args.key?(:done)
903
+ @error = args[:error] if args.key?(:error)
904
+ @metadata = args[:metadata] if args.key?(:metadata)
905
+ @name = args[:name] if args.key?(:name)
906
+ @response = args[:response] if args.key?(:response)
907
+ end
908
+ end
909
+
910
+ # Represents the metadata of the long-running operation.
911
+ class OperationMetadata
912
+ include Google::Apis::Core::Hashable
913
+
914
+ # API version used to start the operation.
915
+ # Corresponds to the JSON property `apiVersion`
916
+ # @return [String]
917
+ attr_accessor :api_version
918
+
919
+ # The time the operation was created.
920
+ # Corresponds to the JSON property `createTime`
921
+ # @return [String]
922
+ attr_accessor :create_time
923
+
924
+ # The time the operation finished running.
925
+ # Corresponds to the JSON property `endTime`
926
+ # @return [String]
927
+ attr_accessor :end_time
928
+
929
+ # API endpoint name of this operation.
930
+ # Corresponds to the JSON property `endpoint`
931
+ # @return [String]
932
+ attr_accessor :endpoint
933
+
934
+ # Identifies whether the user has requested cancellation of the operation.
935
+ # Operations that have successfully been cancelled have Operation.error value
936
+ # with a google.rpc.Status.code of 1, corresponding to `Code.CANCELLED`.
937
+ # Corresponds to the JSON property `requestedCancellation`
938
+ # @return [Boolean]
939
+ attr_accessor :requested_cancellation
940
+ alias_method :requested_cancellation?, :requested_cancellation
941
+
942
+ # Human-readable status of the operation, if any.
943
+ # Corresponds to the JSON property `statusMessage`
944
+ # @return [String]
945
+ attr_accessor :status_message
946
+
947
+ # Server-defined resource path for the target of the operation.
948
+ # Corresponds to the JSON property `target`
949
+ # @return [String]
950
+ attr_accessor :target
951
+
952
+ # Name of the verb executed by the operation.
953
+ # Corresponds to the JSON property `verb`
954
+ # @return [String]
955
+ attr_accessor :verb
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @api_version = args[:api_version] if args.key?(:api_version)
964
+ @create_time = args[:create_time] if args.key?(:create_time)
965
+ @end_time = args[:end_time] if args.key?(:end_time)
966
+ @endpoint = args[:endpoint] if args.key?(:endpoint)
967
+ @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
968
+ @status_message = args[:status_message] if args.key?(:status_message)
969
+ @target = args[:target] if args.key?(:target)
970
+ @verb = args[:verb] if args.key?(:verb)
971
+ end
972
+ end
973
+
974
+ # An Identity and Access Management (IAM) policy, which specifies access
975
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
976
+ # A `binding` binds one or more `members` to a single `role`. Members can be
977
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
978
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
979
+ # role or a user-created custom role. For some types of Google Cloud resources,
980
+ # a `binding` can also specify a `condition`, which is a logical expression that
981
+ # allows access to a resource only if the expression evaluates to `true`. A
982
+ # condition can add constraints based on attributes of the request, the resource,
983
+ # or both. To learn which resources support conditions in their IAM policies,
984
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
985
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
986
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
987
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
988
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
989
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
990
+ # title": "expirable access", "description": "Does not grant access after Sep
991
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
992
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
993
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
994
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
995
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
996
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
997
+ # description: Does not grant access after Sep 2020 expression: request.time <
998
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
999
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
1000
+ # google.com/iam/docs/).
1001
+ class Policy
1002
+ include Google::Apis::Core::Hashable
1003
+
1004
+ # Associates a list of `members` to a `role`. Optionally, may specify a `
1005
+ # condition` that determines how and when the `bindings` are applied. Each of
1006
+ # the `bindings` must contain at least one member.
1007
+ # Corresponds to the JSON property `bindings`
1008
+ # @return [Array<Google::Apis::NotebooksV1::Binding>]
1009
+ attr_accessor :bindings
1010
+
1011
+ # `etag` is used for optimistic concurrency control as a way to help prevent
1012
+ # simultaneous updates of a policy from overwriting each other. It is strongly
1013
+ # suggested that systems make use of the `etag` in the read-modify-write cycle
1014
+ # to perform policy updates in order to avoid race conditions: An `etag` is
1015
+ # returned in the response to `getIamPolicy`, and systems are expected to put
1016
+ # that etag in the request to `setIamPolicy` to ensure that their change will be
1017
+ # applied to the same version of the policy. **Important:** If you use IAM
1018
+ # Conditions, you must include the `etag` field whenever you call `setIamPolicy`.
1019
+ # If you omit this field, then IAM allows you to overwrite a version `3` policy
1020
+ # with a version `1` policy, and all of the conditions in the version `3` policy
1021
+ # are lost.
1022
+ # Corresponds to the JSON property `etag`
1023
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
1024
+ # @return [String]
1025
+ attr_accessor :etag
1026
+
1027
+ # Specifies the format of the policy. Valid values are `0`, `1`, and `3`.
1028
+ # Requests that specify an invalid value are rejected. Any operation that
1029
+ # affects conditional role bindings must specify version `3`. This requirement
1030
+ # applies to the following operations: * Getting a policy that includes a
1031
+ # conditional role binding * Adding a conditional role binding to a policy *
1032
+ # Changing a conditional role binding in a policy * Removing any role binding,
1033
+ # with or without a condition, from a policy that includes conditions **
1034
+ # Important:** If you use IAM Conditions, you must include the `etag` field
1035
+ # whenever you call `setIamPolicy`. If you omit this field, then IAM allows you
1036
+ # to overwrite a version `3` policy with a version `1` policy, and all of the
1037
+ # conditions in the version `3` policy are lost. If a policy does not include
1038
+ # any conditions, operations on that policy may specify any valid version or
1039
+ # leave the field unset. To learn which resources support conditions in their
1040
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
1041
+ # conditions/resource-policies).
1042
+ # Corresponds to the JSON property `version`
1043
+ # @return [Fixnum]
1044
+ attr_accessor :version
1045
+
1046
+ def initialize(**args)
1047
+ update!(**args)
1048
+ end
1049
+
1050
+ # Update properties of this object
1051
+ def update!(**args)
1052
+ @bindings = args[:bindings] if args.key?(:bindings)
1053
+ @etag = args[:etag] if args.key?(:etag)
1054
+ @version = args[:version] if args.key?(:version)
1055
+ end
1056
+ end
1057
+
1058
+ # Request for registering a notebook instance.
1059
+ class RegisterInstanceRequest
1060
+ include Google::Apis::Core::Hashable
1061
+
1062
+ # Required. User defined unique ID of this instance. The `instance_id` must be 1
1063
+ # to 63 characters long and contain only lowercase letters, numeric characters,
1064
+ # and dashes. The first character must be a lowercase letter and the last
1065
+ # character cannot be a dash.
1066
+ # Corresponds to the JSON property `instanceId`
1067
+ # @return [String]
1068
+ attr_accessor :instance_id
1069
+
1070
+ def initialize(**args)
1071
+ update!(**args)
1072
+ end
1073
+
1074
+ # Update properties of this object
1075
+ def update!(**args)
1076
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
1077
+ end
1078
+ end
1079
+
1080
+ # Request for notebook instances to report information to Notebooks API.
1081
+ class ReportInstanceInfoRequest
1082
+ include Google::Apis::Core::Hashable
1083
+
1084
+ # The metadata reported to Notebooks API. This will be merged to the instance
1085
+ # metadata store
1086
+ # Corresponds to the JSON property `metadata`
1087
+ # @return [Hash<String,String>]
1088
+ attr_accessor :metadata
1089
+
1090
+ # Required. The VM hardware token for authenticating the VM. https://cloud.
1091
+ # google.com/compute/docs/instances/verifying-instance-identity
1092
+ # Corresponds to the JSON property `vmId`
1093
+ # @return [String]
1094
+ attr_accessor :vm_id
1095
+
1096
+ def initialize(**args)
1097
+ update!(**args)
1098
+ end
1099
+
1100
+ # Update properties of this object
1101
+ def update!(**args)
1102
+ @metadata = args[:metadata] if args.key?(:metadata)
1103
+ @vm_id = args[:vm_id] if args.key?(:vm_id)
1104
+ end
1105
+ end
1106
+
1107
+ # Request for reseting a notebook instance
1108
+ class ResetInstanceRequest
1109
+ include Google::Apis::Core::Hashable
1110
+
1111
+ def initialize(**args)
1112
+ update!(**args)
1113
+ end
1114
+
1115
+ # Update properties of this object
1116
+ def update!(**args)
1117
+ end
1118
+ end
1119
+
1120
+ # Request message for `SetIamPolicy` method.
1121
+ class SetIamPolicyRequest
1122
+ include Google::Apis::Core::Hashable
1123
+
1124
+ # An Identity and Access Management (IAM) policy, which specifies access
1125
+ # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
1126
+ # A `binding` binds one or more `members` to a single `role`. Members can be
1127
+ # user accounts, service accounts, Google groups, and domains (such as G Suite).
1128
+ # A `role` is a named list of permissions; each `role` can be an IAM predefined
1129
+ # role or a user-created custom role. For some types of Google Cloud resources,
1130
+ # a `binding` can also specify a `condition`, which is a logical expression that
1131
+ # allows access to a resource only if the expression evaluates to `true`. A
1132
+ # condition can add constraints based on attributes of the request, the resource,
1133
+ # or both. To learn which resources support conditions in their IAM policies,
1134
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
1135
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
1136
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
1137
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
1138
+ # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
1139
+ # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
1140
+ # title": "expirable access", "description": "Does not grant access after Sep
1141
+ # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
1142
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
1143
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
1144
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
1145
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
1146
+ # roles/resourcemanager.organizationViewer condition: title: expirable access
1147
+ # description: Does not grant access after Sep 2020 expression: request.time <
1148
+ # timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version: 3 For a
1149
+ # description of IAM and its features, see the [IAM documentation](https://cloud.
1150
+ # google.com/iam/docs/).
1151
+ # Corresponds to the JSON property `policy`
1152
+ # @return [Google::Apis::NotebooksV1::Policy]
1153
+ attr_accessor :policy
1154
+
1155
+ def initialize(**args)
1156
+ update!(**args)
1157
+ end
1158
+
1159
+ # Update properties of this object
1160
+ def update!(**args)
1161
+ @policy = args[:policy] if args.key?(:policy)
1162
+ end
1163
+ end
1164
+
1165
+ # Request for setting instance accelerator.
1166
+ class SetInstanceAcceleratorRequest
1167
+ include Google::Apis::Core::Hashable
1168
+
1169
+ # Required. Count of cores of this accelerator. Note that not all combinations
1170
+ # of `type` and `core_count` are valid. Check [GPUs on Compute Engine](https://
1171
+ # cloud.google.com/compute/docs/gpus/#gpus-list) to find a valid combination.
1172
+ # TPUs are not supported.
1173
+ # Corresponds to the JSON property `coreCount`
1174
+ # @return [Fixnum]
1175
+ attr_accessor :core_count
1176
+
1177
+ # Required. Type of this accelerator.
1178
+ # Corresponds to the JSON property `type`
1179
+ # @return [String]
1180
+ attr_accessor :type
1181
+
1182
+ def initialize(**args)
1183
+ update!(**args)
1184
+ end
1185
+
1186
+ # Update properties of this object
1187
+ def update!(**args)
1188
+ @core_count = args[:core_count] if args.key?(:core_count)
1189
+ @type = args[:type] if args.key?(:type)
1190
+ end
1191
+ end
1192
+
1193
+ # Request for setting instance labels.
1194
+ class SetInstanceLabelsRequest
1195
+ include Google::Apis::Core::Hashable
1196
+
1197
+ # Labels to apply to this instance. These can be later modified by the setLabels
1198
+ # method
1199
+ # Corresponds to the JSON property `labels`
1200
+ # @return [Hash<String,String>]
1201
+ attr_accessor :labels
1202
+
1203
+ def initialize(**args)
1204
+ update!(**args)
1205
+ end
1206
+
1207
+ # Update properties of this object
1208
+ def update!(**args)
1209
+ @labels = args[:labels] if args.key?(:labels)
1210
+ end
1211
+ end
1212
+
1213
+ # Request for setting instance machine type.
1214
+ class SetInstanceMachineTypeRequest
1215
+ include Google::Apis::Core::Hashable
1216
+
1217
+ # Required. The [Compute Engine machine type](https://cloud.google.com/compute/
1218
+ # docs/machine-types).
1219
+ # Corresponds to the JSON property `machineType`
1220
+ # @return [String]
1221
+ attr_accessor :machine_type
1222
+
1223
+ def initialize(**args)
1224
+ update!(**args)
1225
+ end
1226
+
1227
+ # Update properties of this object
1228
+ def update!(**args)
1229
+ @machine_type = args[:machine_type] if args.key?(:machine_type)
1230
+ end
1231
+ end
1232
+
1233
+ # Request for starting a notebook instance
1234
+ class StartInstanceRequest
1235
+ include Google::Apis::Core::Hashable
1236
+
1237
+ def initialize(**args)
1238
+ update!(**args)
1239
+ end
1240
+
1241
+ # Update properties of this object
1242
+ def update!(**args)
1243
+ end
1244
+ end
1245
+
1246
+ # The `Status` type defines a logical error model that is suitable for different
1247
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1248
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1249
+ # data: error code, error message, and error details. You can find out more
1250
+ # about this error model and how to work with it in the [API Design Guide](https:
1251
+ # //cloud.google.com/apis/design/errors).
1252
+ class Status
1253
+ include Google::Apis::Core::Hashable
1254
+
1255
+ # The status code, which should be an enum value of google.rpc.Code.
1256
+ # Corresponds to the JSON property `code`
1257
+ # @return [Fixnum]
1258
+ attr_accessor :code
1259
+
1260
+ # A list of messages that carry the error details. There is a common set of
1261
+ # message types for APIs to use.
1262
+ # Corresponds to the JSON property `details`
1263
+ # @return [Array<Hash<String,Object>>]
1264
+ attr_accessor :details
1265
+
1266
+ # A developer-facing error message, which should be in English. Any user-facing
1267
+ # error message should be localized and sent in the google.rpc.Status.details
1268
+ # field, or localized by the client.
1269
+ # Corresponds to the JSON property `message`
1270
+ # @return [String]
1271
+ attr_accessor :message
1272
+
1273
+ def initialize(**args)
1274
+ update!(**args)
1275
+ end
1276
+
1277
+ # Update properties of this object
1278
+ def update!(**args)
1279
+ @code = args[:code] if args.key?(:code)
1280
+ @details = args[:details] if args.key?(:details)
1281
+ @message = args[:message] if args.key?(:message)
1282
+ end
1283
+ end
1284
+
1285
+ # Request for stopping a notebook instance
1286
+ class StopInstanceRequest
1287
+ include Google::Apis::Core::Hashable
1288
+
1289
+ def initialize(**args)
1290
+ update!(**args)
1291
+ end
1292
+
1293
+ # Update properties of this object
1294
+ def update!(**args)
1295
+ end
1296
+ end
1297
+
1298
+ # Request message for `TestIamPermissions` method.
1299
+ class TestIamPermissionsRequest
1300
+ include Google::Apis::Core::Hashable
1301
+
1302
+ # The set of permissions to check for the `resource`. Permissions with wildcards
1303
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
1304
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
1305
+ # Corresponds to the JSON property `permissions`
1306
+ # @return [Array<String>]
1307
+ attr_accessor :permissions
1308
+
1309
+ def initialize(**args)
1310
+ update!(**args)
1311
+ end
1312
+
1313
+ # Update properties of this object
1314
+ def update!(**args)
1315
+ @permissions = args[:permissions] if args.key?(:permissions)
1316
+ end
1317
+ end
1318
+
1319
+ # Response message for `TestIamPermissions` method.
1320
+ class TestIamPermissionsResponse
1321
+ include Google::Apis::Core::Hashable
1322
+
1323
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
1324
+ # Corresponds to the JSON property `permissions`
1325
+ # @return [Array<String>]
1326
+ attr_accessor :permissions
1327
+
1328
+ def initialize(**args)
1329
+ update!(**args)
1330
+ end
1331
+
1332
+ # Update properties of this object
1333
+ def update!(**args)
1334
+ @permissions = args[:permissions] if args.key?(:permissions)
1335
+ end
1336
+ end
1337
+
1338
+ #
1339
+ class UpgradeHistoryEntry
1340
+ include Google::Apis::Core::Hashable
1341
+
1342
+ # The container image before this instance upgrade.
1343
+ # Corresponds to the JSON property `containerImage`
1344
+ # @return [String]
1345
+ attr_accessor :container_image
1346
+
1347
+ # The time that this instance upgrade history entry is created.
1348
+ # Corresponds to the JSON property `createTime`
1349
+ # @return [String]
1350
+ attr_accessor :create_time
1351
+
1352
+ # The framework of this notebook instance.
1353
+ # Corresponds to the JSON property `framework`
1354
+ # @return [String]
1355
+ attr_accessor :framework
1356
+
1357
+ # The snapshot of the boot disk of this notebook instance before upgrade.
1358
+ # Corresponds to the JSON property `snapshot`
1359
+ # @return [String]
1360
+ attr_accessor :snapshot
1361
+
1362
+ # The state of this instance upgrade history entry.
1363
+ # Corresponds to the JSON property `state`
1364
+ # @return [String]
1365
+ attr_accessor :state
1366
+
1367
+ # The version of the notebook instance before this upgrade.
1368
+ # Corresponds to the JSON property `version`
1369
+ # @return [String]
1370
+ attr_accessor :version
1371
+
1372
+ # The VM image before this instance upgrade.
1373
+ # Corresponds to the JSON property `vmImage`
1374
+ # @return [String]
1375
+ attr_accessor :vm_image
1376
+
1377
+ def initialize(**args)
1378
+ update!(**args)
1379
+ end
1380
+
1381
+ # Update properties of this object
1382
+ def update!(**args)
1383
+ @container_image = args[:container_image] if args.key?(:container_image)
1384
+ @create_time = args[:create_time] if args.key?(:create_time)
1385
+ @framework = args[:framework] if args.key?(:framework)
1386
+ @snapshot = args[:snapshot] if args.key?(:snapshot)
1387
+ @state = args[:state] if args.key?(:state)
1388
+ @version = args[:version] if args.key?(:version)
1389
+ @vm_image = args[:vm_image] if args.key?(:vm_image)
1390
+ end
1391
+ end
1392
+
1393
+ # Request for upgrading a notebook instance from within the VM
1394
+ class UpgradeInstanceInternalRequest
1395
+ include Google::Apis::Core::Hashable
1396
+
1397
+ # Required. The VM hardware token for authenticating the VM. https://cloud.
1398
+ # google.com/compute/docs/instances/verifying-instance-identity
1399
+ # Corresponds to the JSON property `vmId`
1400
+ # @return [String]
1401
+ attr_accessor :vm_id
1402
+
1403
+ def initialize(**args)
1404
+ update!(**args)
1405
+ end
1406
+
1407
+ # Update properties of this object
1408
+ def update!(**args)
1409
+ @vm_id = args[:vm_id] if args.key?(:vm_id)
1410
+ end
1411
+ end
1412
+
1413
+ # Request for upgrading a notebook instance
1414
+ class UpgradeInstanceRequest
1415
+ include Google::Apis::Core::Hashable
1416
+
1417
+ def initialize(**args)
1418
+ update!(**args)
1419
+ end
1420
+
1421
+ # Update properties of this object
1422
+ def update!(**args)
1423
+ end
1424
+ end
1425
+
1426
+ # Definition of a custom Compute Engine virtual machine image for starting a
1427
+ # notebook instance with the environment installed directly on the VM.
1428
+ class VmImage
1429
+ include Google::Apis::Core::Hashable
1430
+
1431
+ # Use this VM image family to find the image; the newest image in this family
1432
+ # will be used.
1433
+ # Corresponds to the JSON property `imageFamily`
1434
+ # @return [String]
1435
+ attr_accessor :image_family
1436
+
1437
+ # Use VM image name to find the image.
1438
+ # Corresponds to the JSON property `imageName`
1439
+ # @return [String]
1440
+ attr_accessor :image_name
1441
+
1442
+ # Required. The name of the Google Cloud project that this VM image belongs to.
1443
+ # Format: `projects/`project_id``
1444
+ # Corresponds to the JSON property `project`
1445
+ # @return [String]
1446
+ attr_accessor :project
1447
+
1448
+ def initialize(**args)
1449
+ update!(**args)
1450
+ end
1451
+
1452
+ # Update properties of this object
1453
+ def update!(**args)
1454
+ @image_family = args[:image_family] if args.key?(:image_family)
1455
+ @image_name = args[:image_name] if args.key?(:image_name)
1456
+ @project = args[:project] if args.key?(:project)
1457
+ end
1458
+ end
1459
+ end
1460
+ end
1461
+ end