google-api-client 0.37.3 → 0.38.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (440) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +146 -0
  3. data/api_list_config.yaml +2 -0
  4. data/api_names.yaml +2 -0
  5. data/bin/generate-api +9 -1
  6. data/generated/google/apis/accesscontextmanager_v1.rb +1 -1
  7. data/generated/google/apis/accesscontextmanager_v1/classes.rb +0 -36
  8. data/generated/google/apis/accesscontextmanager_v1/representations.rb +0 -6
  9. data/generated/google/apis/accesscontextmanager_v1beta.rb +1 -1
  10. data/generated/google/apis/accesscontextmanager_v1beta/classes.rb +0 -36
  11. data/generated/google/apis/accesscontextmanager_v1beta/representations.rb +0 -6
  12. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  13. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +10 -3
  14. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +1 -0
  15. data/generated/google/apis/admin_directory_v1.rb +1 -1
  16. data/generated/google/apis/admin_directory_v1/classes.rb +0 -147
  17. data/generated/google/apis/admin_directory_v1/representations.rb +0 -54
  18. data/generated/google/apis/admin_directory_v1/service.rb +0 -60
  19. data/generated/google/apis/adsense_v1_4.rb +1 -1
  20. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  21. data/generated/google/apis/adsensehost_v4_1/service.rb +5 -1
  22. data/generated/google/apis/alertcenter_v1beta1.rb +1 -1
  23. data/generated/google/apis/alertcenter_v1beta1/classes.rb +1 -1
  24. data/generated/google/apis/androiddeviceprovisioning_v1.rb +1 -1
  25. data/generated/google/apis/androiddeviceprovisioning_v1/classes.rb +2 -2
  26. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  27. data/generated/google/apis/androidenterprise_v1/classes.rb +2 -2
  28. data/generated/google/apis/androidmanagement_v1.rb +1 -1
  29. data/generated/google/apis/androidmanagement_v1/service.rb +2 -2
  30. data/generated/google/apis/androidpublisher_v2.rb +1 -1
  31. data/generated/google/apis/androidpublisher_v2/classes.rb +2 -2
  32. data/generated/google/apis/androidpublisher_v3.rb +1 -1
  33. data/generated/google/apis/androidpublisher_v3/classes.rb +2 -2
  34. data/generated/google/apis/appengine_v1.rb +1 -1
  35. data/generated/google/apis/appengine_v1alpha.rb +1 -1
  36. data/generated/google/apis/appengine_v1beta.rb +1 -1
  37. data/generated/google/apis/bigquery_v2.rb +1 -1
  38. data/generated/google/apis/bigquery_v2/classes.rb +224 -5
  39. data/generated/google/apis/bigquery_v2/representations.rb +65 -0
  40. data/generated/google/apis/bigquerydatatransfer_v1.rb +1 -1
  41. data/generated/google/apis/bigqueryreservation_v1.rb +1 -1
  42. data/generated/google/apis/bigqueryreservation_v1/classes.rb +413 -0
  43. data/generated/google/apis/bigqueryreservation_v1/representations.rb +194 -0
  44. data/generated/google/apis/bigqueryreservation_v1/service.rb +745 -0
  45. data/generated/google/apis/bigqueryreservation_v1beta1.rb +1 -1
  46. data/generated/google/apis/bigqueryreservation_v1beta1/classes.rb +69 -20
  47. data/generated/google/apis/bigqueryreservation_v1beta1/representations.rb +29 -13
  48. data/generated/google/apis/bigqueryreservation_v1beta1/service.rb +4 -39
  49. data/generated/google/apis/bigtableadmin_v1.rb +1 -1
  50. data/generated/google/apis/bigtableadmin_v1/classes.rb +20 -17
  51. data/generated/google/apis/bigtableadmin_v2.rb +1 -1
  52. data/generated/google/apis/bigtableadmin_v2/classes.rb +26 -21
  53. data/generated/google/apis/bigtableadmin_v2/service.rb +93 -53
  54. data/generated/google/apis/billingbudgets_v1beta1.rb +1 -1
  55. data/generated/google/apis/billingbudgets_v1beta1/service.rb +3 -3
  56. data/generated/google/apis/blogger_v2.rb +5 -4
  57. data/generated/google/apis/blogger_v2/classes.rb +297 -45
  58. data/generated/google/apis/blogger_v2/representations.rb +105 -26
  59. data/generated/google/apis/blogger_v2/service.rb +79 -134
  60. data/generated/google/apis/blogger_v3.rb +4 -3
  61. data/generated/google/apis/blogger_v3/classes.rb +60 -53
  62. data/generated/google/apis/blogger_v3/representations.rb +10 -18
  63. data/generated/google/apis/blogger_v3/service.rb +183 -463
  64. data/generated/google/apis/calendar_v3.rb +1 -1
  65. data/generated/google/apis/calendar_v3/classes.rb +1 -14
  66. data/generated/google/apis/chat_v1.rb +1 -1
  67. data/generated/google/apis/chat_v1/classes.rb +1 -1
  68. data/generated/google/apis/cloudasset_v1.rb +1 -1
  69. data/generated/google/apis/cloudasset_v1/classes.rb +81 -90
  70. data/generated/google/apis/cloudasset_v1/representations.rb +1 -6
  71. data/generated/google/apis/cloudasset_v1/service.rb +2 -2
  72. data/generated/google/apis/cloudasset_v1p1beta1.rb +34 -0
  73. data/generated/google/apis/cloudasset_v1p1beta1/classes.rb +669 -0
  74. data/generated/google/apis/cloudasset_v1p1beta1/representations.rb +199 -0
  75. data/generated/google/apis/cloudasset_v1p1beta1/service.rb +187 -0
  76. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  77. data/generated/google/apis/cloudbuild_v1/classes.rb +12 -1
  78. data/generated/google/apis/cloudbuild_v1/representations.rb +1 -0
  79. data/generated/google/apis/cloudbuild_v1alpha1.rb +1 -1
  80. data/generated/google/apis/cloudbuild_v1alpha1/classes.rb +9 -0
  81. data/generated/google/apis/cloudbuild_v1alpha1/representations.rb +1 -0
  82. data/generated/google/apis/cloudbuild_v1alpha2.rb +1 -1
  83. data/generated/google/apis/cloudbuild_v1alpha2/classes.rb +9 -0
  84. data/generated/google/apis/cloudbuild_v1alpha2/representations.rb +1 -0
  85. data/generated/google/apis/clouddebugger_v2.rb +1 -1
  86. data/generated/google/apis/clouddebugger_v2/classes.rb +8 -0
  87. data/generated/google/apis/cloudidentity_v1.rb +1 -1
  88. data/generated/google/apis/cloudidentity_v1/classes.rb +0 -561
  89. data/generated/google/apis/cloudidentity_v1/representations.rb +0 -226
  90. data/generated/google/apis/cloudidentity_v1beta1.rb +1 -1
  91. data/generated/google/apis/cloudidentity_v1beta1/classes.rb +652 -2
  92. data/generated/google/apis/cloudidentity_v1beta1/representations.rb +272 -0
  93. data/generated/google/apis/cloudidentity_v1beta1/service.rb +2 -2
  94. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  95. data/generated/google/apis/cloudresourcemanager_v1/service.rb +3 -0
  96. data/generated/google/apis/cloudsearch_v1.rb +1 -1
  97. data/generated/google/apis/cloudsearch_v1/classes.rb +52 -50
  98. data/generated/google/apis/cloudshell_v1.rb +1 -1
  99. data/generated/google/apis/cloudshell_v1alpha1.rb +1 -1
  100. data/generated/google/apis/cloudtasks_v2beta2.rb +1 -1
  101. data/generated/google/apis/cloudtasks_v2beta2/service.rb +6 -1
  102. data/generated/google/apis/cloudtrace_v1.rb +3 -3
  103. data/generated/google/apis/cloudtrace_v1/service.rb +2 -2
  104. data/generated/google/apis/cloudtrace_v2.rb +3 -3
  105. data/generated/google/apis/cloudtrace_v2/service.rb +2 -2
  106. data/generated/google/apis/cloudtrace_v2beta1.rb +3 -3
  107. data/generated/google/apis/cloudtrace_v2beta1/classes.rb +1 -2
  108. data/generated/google/apis/cloudtrace_v2beta1/service.rb +2 -2
  109. data/generated/google/apis/composer_v1.rb +1 -1
  110. data/generated/google/apis/composer_v1/classes.rb +178 -0
  111. data/generated/google/apis/composer_v1/representations.rb +54 -0
  112. data/generated/google/apis/composer_v1beta1.rb +1 -1
  113. data/generated/google/apis/composer_v1beta1/classes.rb +36 -5
  114. data/generated/google/apis/composer_v1beta1/representations.rb +4 -0
  115. data/generated/google/apis/compute_alpha.rb +1 -1
  116. data/generated/google/apis/compute_alpha/classes.rb +1320 -307
  117. data/generated/google/apis/compute_alpha/representations.rb +284 -18
  118. data/generated/google/apis/compute_alpha/service.rb +4914 -3211
  119. data/generated/google/apis/compute_beta.rb +1 -1
  120. data/generated/google/apis/compute_beta/classes.rb +819 -236
  121. data/generated/google/apis/compute_beta/representations.rb +245 -16
  122. data/generated/google/apis/compute_beta/service.rb +3369 -2227
  123. data/generated/google/apis/compute_v1.rb +1 -1
  124. data/generated/google/apis/compute_v1/classes.rb +837 -133
  125. data/generated/google/apis/compute_v1/representations.rb +307 -0
  126. data/generated/google/apis/compute_v1/service.rb +3155 -2026
  127. data/generated/google/apis/container_v1.rb +1 -1
  128. data/generated/google/apis/container_v1/classes.rb +42 -22
  129. data/generated/google/apis/container_v1/service.rb +2 -2
  130. data/generated/google/apis/container_v1beta1.rb +1 -1
  131. data/generated/google/apis/container_v1beta1/classes.rb +116 -136
  132. data/generated/google/apis/container_v1beta1/representations.rb +23 -51
  133. data/generated/google/apis/container_v1beta1/service.rb +2 -2
  134. data/generated/google/apis/content_v2.rb +1 -1
  135. data/generated/google/apis/content_v2/classes.rb +1030 -113
  136. data/generated/google/apis/content_v2_1.rb +1 -1
  137. data/generated/google/apis/content_v2_1/classes.rb +987 -138
  138. data/generated/google/apis/content_v2_1/representations.rb +87 -0
  139. data/generated/google/apis/content_v2_1/service.rb +73 -0
  140. data/generated/google/apis/customsearch_v1.rb +3 -3
  141. data/generated/google/apis/customsearch_v1/classes.rb +1194 -353
  142. data/generated/google/apis/customsearch_v1/representations.rb +166 -95
  143. data/generated/google/apis/customsearch_v1/service.rb +373 -104
  144. data/generated/google/apis/datacatalog_v1beta1.rb +1 -1
  145. data/generated/google/apis/datacatalog_v1beta1/classes.rb +2 -2
  146. data/generated/google/apis/datacatalog_v1beta1/service.rb +16 -24
  147. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  148. data/generated/google/apis/dataflow_v1b3/classes.rb +220 -0
  149. data/generated/google/apis/dataflow_v1b3/representations.rb +99 -0
  150. data/generated/google/apis/dataflow_v1b3/service.rb +327 -0
  151. data/generated/google/apis/datafusion_v1beta1.rb +1 -1
  152. data/generated/google/apis/datafusion_v1beta1/classes.rb +27 -1
  153. data/generated/google/apis/datafusion_v1beta1/representations.rb +15 -0
  154. data/generated/google/apis/dataproc_v1.rb +1 -1
  155. data/generated/google/apis/dataproc_v1/classes.rb +76 -7
  156. data/generated/google/apis/dataproc_v1/representations.rb +21 -0
  157. data/generated/google/apis/dataproc_v1/service.rb +72 -15
  158. data/generated/google/apis/dataproc_v1beta2.rb +1 -1
  159. data/generated/google/apis/dataproc_v1beta2/classes.rb +191 -7
  160. data/generated/google/apis/dataproc_v1beta2/representations.rb +79 -0
  161. data/generated/google/apis/dataproc_v1beta2/service.rb +148 -15
  162. data/generated/google/apis/dfareporting_v3_3.rb +1 -1
  163. data/generated/google/apis/dfareporting_v3_3/classes.rb +19 -13
  164. data/generated/google/apis/dfareporting_v3_3/service.rb +5 -4
  165. data/generated/google/apis/dfareporting_v3_4.rb +1 -1
  166. data/generated/google/apis/dfareporting_v3_4/classes.rb +152 -15
  167. data/generated/google/apis/dfareporting_v3_4/representations.rb +46 -0
  168. data/generated/google/apis/dfareporting_v3_4/service.rb +5 -4
  169. data/generated/google/apis/dialogflow_v2.rb +1 -1
  170. data/generated/google/apis/dialogflow_v2/classes.rb +130 -127
  171. data/generated/google/apis/dialogflow_v2/service.rb +49 -49
  172. data/generated/google/apis/dialogflow_v2beta1.rb +1 -1
  173. data/generated/google/apis/dialogflow_v2beta1/classes.rb +129 -126
  174. data/generated/google/apis/dialogflow_v2beta1/service.rb +96 -96
  175. data/generated/google/apis/dlp_v2.rb +1 -1
  176. data/generated/google/apis/dlp_v2/classes.rb +80 -14
  177. data/generated/google/apis/dlp_v2/representations.rb +32 -0
  178. data/generated/google/apis/dlp_v2/service.rb +3 -0
  179. data/generated/google/apis/doubleclickbidmanager_v1_1.rb +1 -1
  180. data/generated/google/apis/doubleclickbidmanager_v1_1/service.rb +9 -2
  181. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  182. data/generated/google/apis/doubleclicksearch_v2/service.rb +0 -55
  183. data/generated/google/apis/drive_v2.rb +1 -1
  184. data/generated/google/apis/drive_v2/classes.rb +54 -2
  185. data/generated/google/apis/drive_v2/representations.rb +18 -0
  186. data/generated/google/apis/drive_v2/service.rb +81 -9
  187. data/generated/google/apis/drive_v3.rb +1 -1
  188. data/generated/google/apis/drive_v3/classes.rb +54 -2
  189. data/generated/google/apis/drive_v3/representations.rb +18 -0
  190. data/generated/google/apis/drive_v3/service.rb +37 -4
  191. data/generated/google/apis/file_v1.rb +1 -1
  192. data/generated/google/apis/file_v1beta1.rb +1 -1
  193. data/generated/google/apis/file_v1beta1/classes.rb +2 -2
  194. data/generated/google/apis/firebase_v1beta1.rb +1 -1
  195. data/generated/google/apis/firebase_v1beta1/service.rb +8 -5
  196. data/generated/google/apis/firebasehosting_v1beta1.rb +1 -1
  197. data/generated/google/apis/firebasehosting_v1beta1/classes.rb +6 -6
  198. data/generated/google/apis/firebasehosting_v1beta1/service.rb +762 -3
  199. data/generated/google/apis/firestore_v1.rb +1 -1
  200. data/generated/google/apis/firestore_v1/classes.rb +11 -2
  201. data/generated/google/apis/firestore_v1/representations.rb +2 -0
  202. data/generated/google/apis/firestore_v1/service.rb +2 -2
  203. data/generated/google/apis/firestore_v1beta1.rb +1 -1
  204. data/generated/google/apis/firestore_v1beta1/classes.rb +11 -2
  205. data/generated/google/apis/firestore_v1beta1/representations.rb +2 -0
  206. data/generated/google/apis/firestore_v1beta1/service.rb +2 -2
  207. data/generated/google/apis/games_configuration_v1configuration.rb +4 -3
  208. data/generated/google/apis/games_configuration_v1configuration/classes.rb +39 -53
  209. data/generated/google/apis/games_configuration_v1configuration/service.rb +58 -169
  210. data/generated/google/apis/games_management_v1management.rb +1 -1
  211. data/generated/google/apis/games_management_v1management/classes.rb +7 -0
  212. data/generated/google/apis/games_management_v1management/representations.rb +1 -0
  213. data/generated/google/apis/games_v1.rb +1 -1
  214. data/generated/google/apis/games_v1/classes.rb +13 -0
  215. data/generated/google/apis/games_v1/representations.rb +2 -0
  216. data/generated/google/apis/{proximitybeacon_v1beta1.rb → gameservices_v1beta.rb} +11 -11
  217. data/generated/google/apis/gameservices_v1beta/classes.rb +2342 -0
  218. data/generated/google/apis/gameservices_v1beta/representations.rb +971 -0
  219. data/generated/google/apis/gameservices_v1beta/service.rb +1469 -0
  220. data/generated/google/apis/genomics_v2alpha1.rb +1 -1
  221. data/generated/google/apis/genomics_v2alpha1/service.rb +34 -0
  222. data/generated/google/apis/gmail_v1.rb +3 -2
  223. data/generated/google/apis/gmail_v1/classes.rb +258 -199
  224. data/generated/google/apis/gmail_v1/service.rb +552 -744
  225. data/generated/google/apis/{mirror_v1.rb → healthcare_v1.rb} +10 -13
  226. data/generated/google/apis/healthcare_v1/classes.rb +2639 -0
  227. data/generated/google/apis/healthcare_v1/representations.rb +1114 -0
  228. data/generated/google/apis/healthcare_v1/service.rb +3470 -0
  229. data/generated/google/apis/healthcare_v1beta1.rb +1 -1
  230. data/generated/google/apis/healthcare_v1beta1/classes.rb +569 -23
  231. data/generated/google/apis/healthcare_v1beta1/representations.rb +236 -1
  232. data/generated/google/apis/healthcare_v1beta1/service.rb +147 -18
  233. data/generated/google/apis/homegraph_v1.rb +1 -1
  234. data/generated/google/apis/homegraph_v1/classes.rb +67 -63
  235. data/generated/google/apis/homegraph_v1/service.rb +43 -47
  236. data/generated/google/apis/iap_v1.rb +1 -1
  237. data/generated/google/apis/iap_v1/classes.rb +190 -0
  238. data/generated/google/apis/iap_v1/representations.rb +66 -0
  239. data/generated/google/apis/jobs_v2.rb +1 -1
  240. data/generated/google/apis/language_v1.rb +1 -1
  241. data/generated/google/apis/language_v1/classes.rb +6 -6
  242. data/generated/google/apis/language_v1beta1.rb +1 -1
  243. data/generated/google/apis/language_v1beta1/classes.rb +5 -5
  244. data/generated/google/apis/language_v1beta2.rb +1 -1
  245. data/generated/google/apis/language_v1beta2/classes.rb +8 -7
  246. data/generated/google/apis/logging_v2.rb +3 -3
  247. data/generated/google/apis/logging_v2/classes.rb +3 -4
  248. data/generated/google/apis/logging_v2/service.rb +2 -2
  249. data/generated/google/apis/managedidentities_v1.rb +1 -1
  250. data/generated/google/apis/managedidentities_v1/classes.rb +54 -145
  251. data/generated/google/apis/managedidentities_v1/representations.rb +17 -33
  252. data/generated/google/apis/managedidentities_v1alpha1.rb +1 -1
  253. data/generated/google/apis/managedidentities_v1alpha1/classes.rb +54 -145
  254. data/generated/google/apis/managedidentities_v1alpha1/representations.rb +17 -33
  255. data/generated/google/apis/managedidentities_v1beta1.rb +1 -1
  256. data/generated/google/apis/managedidentities_v1beta1/classes.rb +54 -145
  257. data/generated/google/apis/managedidentities_v1beta1/representations.rb +17 -33
  258. data/generated/google/apis/manufacturers_v1.rb +1 -1
  259. data/generated/google/apis/manufacturers_v1/classes.rb +3 -3
  260. data/generated/google/apis/manufacturers_v1/representations.rb +1 -1
  261. data/generated/google/apis/memcache_v1beta2.rb +35 -0
  262. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1 → memcache_v1beta2}/classes.rb +1083 -761
  263. data/generated/google/apis/memcache_v1beta2/representations.rb +557 -0
  264. data/generated/google/apis/memcache_v1beta2/service.rb +674 -0
  265. data/generated/google/apis/ml_v1.rb +1 -1
  266. data/generated/google/apis/ml_v1/classes.rb +47 -7
  267. data/generated/google/apis/ml_v1/representations.rb +4 -0
  268. data/generated/google/apis/monitoring_v1.rb +7 -8
  269. data/generated/google/apis/monitoring_v1/classes.rb +54 -15
  270. data/generated/google/apis/monitoring_v1/representations.rb +3 -0
  271. data/generated/google/apis/monitoring_v1/service.rb +7 -8
  272. data/generated/google/apis/monitoring_v3.rb +7 -8
  273. data/generated/google/apis/monitoring_v3/classes.rb +300 -27
  274. data/generated/google/apis/monitoring_v3/representations.rb +128 -0
  275. data/generated/google/apis/monitoring_v3/service.rb +52 -17
  276. data/generated/google/apis/oauth2_v2.rb +4 -4
  277. data/generated/google/apis/oauth2_v2/classes.rb +1 -13
  278. data/generated/google/apis/oauth2_v2/representations.rb +2 -4
  279. data/generated/google/apis/oauth2_v2/service.rb +10 -12
  280. data/generated/google/apis/osconfig_v1.rb +35 -0
  281. data/generated/google/apis/osconfig_v1/classes.rb +1223 -0
  282. data/generated/google/apis/osconfig_v1/representations.rb +506 -0
  283. data/generated/google/apis/osconfig_v1/service.rb +386 -0
  284. data/generated/google/apis/osconfig_v1beta.rb +1 -1
  285. data/generated/google/apis/osconfig_v1beta/classes.rb +10 -2
  286. data/generated/google/apis/people_v1.rb +1 -1
  287. data/generated/google/apis/people_v1/classes.rb +30 -12
  288. data/generated/google/apis/people_v1/representations.rb +1 -0
  289. data/generated/google/apis/people_v1/service.rb +12 -24
  290. data/generated/google/apis/prod_tt_sasportal_v1alpha1.rb +1 -1
  291. data/generated/google/apis/prod_tt_sasportal_v1alpha1/classes.rb +4 -3
  292. data/generated/google/apis/prod_tt_sasportal_v1alpha1/service.rb +282 -0
  293. data/generated/google/apis/pubsub_v1.rb +1 -1
  294. data/generated/google/apis/pubsub_v1/classes.rb +9 -5
  295. data/generated/google/apis/pubsub_v1/service.rb +1 -1
  296. data/generated/google/apis/pubsub_v1beta2.rb +1 -1
  297. data/generated/google/apis/pubsub_v1beta2/classes.rb +5 -2
  298. data/generated/google/apis/recommender_v1beta1.rb +1 -1
  299. data/generated/google/apis/recommender_v1beta1/classes.rb +1 -4
  300. data/generated/google/apis/redis_v1.rb +1 -1
  301. data/generated/google/apis/redis_v1/classes.rb +30 -7
  302. data/generated/google/apis/redis_v1/representations.rb +13 -0
  303. data/generated/google/apis/redis_v1/service.rb +36 -0
  304. data/generated/google/apis/redis_v1beta1.rb +1 -1
  305. data/generated/google/apis/redis_v1beta1/classes.rb +11 -7
  306. data/generated/google/apis/remotebuildexecution_v1.rb +1 -1
  307. data/generated/google/apis/remotebuildexecution_v1/classes.rb +171 -37
  308. data/generated/google/apis/remotebuildexecution_v1/representations.rb +28 -0
  309. data/generated/google/apis/remotebuildexecution_v1alpha.rb +1 -1
  310. data/generated/google/apis/remotebuildexecution_v1alpha/classes.rb +171 -37
  311. data/generated/google/apis/remotebuildexecution_v1alpha/representations.rb +28 -0
  312. data/generated/google/apis/remotebuildexecution_v2.rb +1 -1
  313. data/generated/google/apis/remotebuildexecution_v2/classes.rb +181 -45
  314. data/generated/google/apis/remotebuildexecution_v2/representations.rb +29 -0
  315. data/generated/google/apis/remotebuildexecution_v2/service.rb +5 -1
  316. data/generated/google/apis/run_v1.rb +1 -1
  317. data/generated/google/apis/run_v1/classes.rb +6 -13
  318. data/generated/google/apis/sasportal_v1alpha1.rb +1 -1
  319. data/generated/google/apis/sasportal_v1alpha1/classes.rb +4 -3
  320. data/generated/google/apis/sasportal_v1alpha1/service.rb +282 -0
  321. data/generated/google/apis/secretmanager_v1.rb +2 -2
  322. data/generated/google/apis/secretmanager_v1/service.rb +4 -1
  323. data/generated/google/apis/secretmanager_v1beta1.rb +2 -2
  324. data/generated/google/apis/secretmanager_v1beta1/service.rb +4 -1
  325. data/generated/google/apis/securitycenter_v1.rb +4 -4
  326. data/generated/google/apis/securitycenter_v1/classes.rb +142 -114
  327. data/generated/google/apis/securitycenter_v1/service.rb +11 -3
  328. data/generated/google/apis/securitycenter_v1beta1.rb +4 -4
  329. data/generated/google/apis/securitycenter_v1beta1/classes.rb +137 -123
  330. data/generated/google/apis/securitycenter_v1beta1/service.rb +3 -3
  331. data/generated/google/apis/securitycenter_v1p1alpha1.rb +4 -4
  332. data/generated/google/apis/securitycenter_v1p1alpha1/classes.rb +87 -75
  333. data/generated/google/apis/securitycenter_v1p1alpha1/service.rb +3 -3
  334. data/generated/google/apis/securitycenter_v1p1beta1.rb +4 -4
  335. data/generated/google/apis/securitycenter_v1p1beta1/classes.rb +117 -95
  336. data/generated/google/apis/securitycenter_v1p1beta1/service.rb +11 -3
  337. data/generated/google/apis/serviceconsumermanagement_v1.rb +1 -1
  338. data/generated/google/apis/serviceconsumermanagement_v1/classes.rb +41 -6
  339. data/generated/google/apis/serviceconsumermanagement_v1/representations.rb +1 -0
  340. data/generated/google/apis/{cloudprivatecatalogproducer_v1beta1.rb → serviceconsumermanagement_v1beta1.rb} +8 -9
  341. data/generated/google/apis/serviceconsumermanagement_v1beta1/classes.rb +4170 -0
  342. data/generated/google/apis/serviceconsumermanagement_v1beta1/representations.rb +1308 -0
  343. data/generated/google/apis/serviceconsumermanagement_v1beta1/service.rb +428 -0
  344. data/generated/google/apis/servicecontrol_v1.rb +1 -1
  345. data/generated/google/apis/servicecontrol_v1/classes.rb +2 -2
  346. data/generated/google/apis/{cloudprivatecatalog_v1beta1.rb → servicedirectory_v1beta1.rb} +9 -9
  347. data/generated/google/apis/servicedirectory_v1beta1/classes.rb +800 -0
  348. data/generated/google/apis/servicedirectory_v1beta1/representations.rb +304 -0
  349. data/generated/google/apis/servicedirectory_v1beta1/service.rb +992 -0
  350. data/generated/google/apis/servicemanagement_v1.rb +1 -1
  351. data/generated/google/apis/servicemanagement_v1/classes.rb +41 -6
  352. data/generated/google/apis/servicemanagement_v1/representations.rb +1 -0
  353. data/generated/google/apis/servicenetworking_v1.rb +1 -1
  354. data/generated/google/apis/servicenetworking_v1/classes.rb +179 -6
  355. data/generated/google/apis/servicenetworking_v1/representations.rb +72 -0
  356. data/generated/google/apis/servicenetworking_v1/service.rb +53 -21
  357. data/generated/google/apis/servicenetworking_v1beta.rb +1 -1
  358. data/generated/google/apis/servicenetworking_v1beta/classes.rb +149 -6
  359. data/generated/google/apis/servicenetworking_v1beta/representations.rb +57 -0
  360. data/generated/google/apis/serviceusage_v1.rb +1 -1
  361. data/generated/google/apis/serviceusage_v1/classes.rb +116 -6
  362. data/generated/google/apis/serviceusage_v1/representations.rb +45 -0
  363. data/generated/google/apis/serviceusage_v1/service.rb +42 -0
  364. data/generated/google/apis/serviceusage_v1beta1.rb +1 -1
  365. data/generated/google/apis/serviceusage_v1beta1/classes.rb +97 -32
  366. data/generated/google/apis/serviceusage_v1beta1/representations.rb +31 -15
  367. data/generated/google/apis/serviceusage_v1beta1/service.rb +0 -43
  368. data/generated/google/apis/sheets_v4.rb +1 -1
  369. data/generated/google/apis/sheets_v4/classes.rb +2 -2
  370. data/generated/google/apis/spanner_v1.rb +1 -1
  371. data/generated/google/apis/spanner_v1/classes.rb +463 -1
  372. data/generated/google/apis/spanner_v1/representations.rb +178 -0
  373. data/generated/google/apis/spanner_v1/service.rb +498 -10
  374. data/generated/google/apis/speech_v1.rb +1 -1
  375. data/generated/google/apis/speech_v1/classes.rb +7 -3
  376. data/generated/google/apis/speech_v1/representations.rb +1 -0
  377. data/generated/google/apis/speech_v1p1beta1.rb +1 -1
  378. data/generated/google/apis/speech_v1p1beta1/classes.rb +7 -3
  379. data/generated/google/apis/speech_v1p1beta1/representations.rb +1 -0
  380. data/generated/google/apis/speech_v2beta1.rb +1 -1
  381. data/generated/google/apis/speech_v2beta1/classes.rb +7 -0
  382. data/generated/google/apis/speech_v2beta1/representations.rb +1 -0
  383. data/generated/google/apis/sql_v1beta4.rb +1 -1
  384. data/generated/google/apis/sql_v1beta4/classes.rb +3 -3
  385. data/generated/google/apis/sql_v1beta4/service.rb +54 -384
  386. data/generated/google/apis/storage_v1.rb +1 -1
  387. data/generated/google/apis/storage_v1/classes.rb +18 -0
  388. data/generated/google/apis/storage_v1/representations.rb +2 -0
  389. data/generated/google/apis/storage_v1/service.rb +28 -3
  390. data/generated/google/apis/storagetransfer_v1.rb +1 -1
  391. data/generated/google/apis/storagetransfer_v1/classes.rb +194 -11
  392. data/generated/google/apis/storagetransfer_v1/representations.rb +52 -0
  393. data/generated/google/apis/toolresults_v1beta3.rb +1 -1
  394. data/generated/google/apis/toolresults_v1beta3/classes.rb +217 -0
  395. data/generated/google/apis/toolresults_v1beta3/representations.rb +84 -0
  396. data/generated/google/apis/toolresults_v1beta3/service.rb +76 -29
  397. data/generated/google/apis/vault_v1.rb +1 -1
  398. data/generated/google/apis/videointelligence_v1.rb +1 -1
  399. data/generated/google/apis/videointelligence_v1/classes.rb +744 -4
  400. data/generated/google/apis/videointelligence_v1/representations.rb +356 -0
  401. data/generated/google/apis/videointelligence_v1beta2.rb +1 -1
  402. data/generated/google/apis/videointelligence_v1beta2/classes.rb +744 -4
  403. data/generated/google/apis/videointelligence_v1beta2/representations.rb +356 -0
  404. data/generated/google/apis/videointelligence_v1p1beta1.rb +1 -1
  405. data/generated/google/apis/videointelligence_v1p1beta1/classes.rb +744 -4
  406. data/generated/google/apis/videointelligence_v1p1beta1/representations.rb +356 -0
  407. data/generated/google/apis/videointelligence_v1p2beta1.rb +1 -1
  408. data/generated/google/apis/videointelligence_v1p2beta1/classes.rb +744 -4
  409. data/generated/google/apis/videointelligence_v1p2beta1/representations.rb +356 -0
  410. data/generated/google/apis/videointelligence_v1p3beta1.rb +1 -1
  411. data/generated/google/apis/videointelligence_v1p3beta1/classes.rb +744 -4
  412. data/generated/google/apis/videointelligence_v1p3beta1/representations.rb +356 -0
  413. data/generated/google/apis/vision_v1.rb +1 -1
  414. data/generated/google/apis/vision_v1/classes.rb +1 -1
  415. data/generated/google/apis/vision_v1p1beta1.rb +1 -1
  416. data/generated/google/apis/vision_v1p1beta1/classes.rb +1 -1
  417. data/generated/google/apis/vision_v1p2beta1.rb +1 -1
  418. data/generated/google/apis/vision_v1p2beta1/classes.rb +1 -1
  419. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  420. data/generated/google/apis/youtube_v3.rb +4 -1
  421. data/generated/google/apis/youtube_v3/classes.rb +7 -0
  422. data/generated/google/apis/youtube_v3/representations.rb +1 -0
  423. data/lib/google/apis/generator/annotator.rb +1 -1
  424. data/lib/google/apis/version.rb +1 -1
  425. metadata +32 -23
  426. data/generated/google/apis/cloudprivatecatalog_v1beta1/classes.rb +0 -358
  427. data/generated/google/apis/cloudprivatecatalog_v1beta1/representations.rb +0 -123
  428. data/generated/google/apis/cloudprivatecatalog_v1beta1/service.rb +0 -486
  429. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/representations.rb +0 -399
  430. data/generated/google/apis/cloudprivatecatalogproducer_v1beta1/service.rb +0 -1081
  431. data/generated/google/apis/mirror_v1/classes.rb +0 -1072
  432. data/generated/google/apis/mirror_v1/representations.rb +0 -390
  433. data/generated/google/apis/mirror_v1/service.rb +0 -928
  434. data/generated/google/apis/oauth2_v1.rb +0 -40
  435. data/generated/google/apis/oauth2_v1/classes.rb +0 -197
  436. data/generated/google/apis/oauth2_v1/representations.rb +0 -73
  437. data/generated/google/apis/oauth2_v1/service.rb +0 -160
  438. data/generated/google/apis/proximitybeacon_v1beta1/classes.rb +0 -845
  439. data/generated/google/apis/proximitybeacon_v1beta1/representations.rb +0 -350
  440. data/generated/google/apis/proximitybeacon_v1beta1/service.rb +0 -933
@@ -0,0 +1,35 @@
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/osconfig_v1/service.rb'
16
+ require 'google/apis/osconfig_v1/classes.rb'
17
+ require 'google/apis/osconfig_v1/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Cloud OS Config API
22
+ #
23
+ # OS management tools that can be used for patch management, patch compliance,
24
+ # and configuration management on VM instances.
25
+ #
26
+ # @see https://cloud.google.com/
27
+ module OsconfigV1
28
+ VERSION = 'V1'
29
+ REVISION = '20200403'
30
+
31
+ # View and manage your data across Google Cloud Platform services
32
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,1223 @@
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 OsconfigV1
24
+
25
+ # Apt patching is completed by executing `apt-get update && apt-get
26
+ # upgrade`. Additional options can be set to control how this is executed.
27
+ class AptSettings
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # List of packages to exclude from update. These packages will be excluded
31
+ # Corresponds to the JSON property `excludes`
32
+ # @return [Array<String>]
33
+ attr_accessor :excludes
34
+
35
+ # An exclusive list of packages to be updated. These are the only packages
36
+ # that will be updated. If these packages are not installed, they will be
37
+ # ignored. This field cannot be specified with any other patch configuration
38
+ # fields.
39
+ # Corresponds to the JSON property `exclusivePackages`
40
+ # @return [Array<String>]
41
+ attr_accessor :exclusive_packages
42
+
43
+ # By changing the type to DIST, the patching is performed
44
+ # using `apt-get dist-upgrade` instead.
45
+ # Corresponds to the JSON property `type`
46
+ # @return [String]
47
+ attr_accessor :type
48
+
49
+ def initialize(**args)
50
+ update!(**args)
51
+ end
52
+
53
+ # Update properties of this object
54
+ def update!(**args)
55
+ @excludes = args[:excludes] if args.key?(:excludes)
56
+ @exclusive_packages = args[:exclusive_packages] if args.key?(:exclusive_packages)
57
+ @type = args[:type] if args.key?(:type)
58
+ end
59
+ end
60
+
61
+ # Message for canceling a patch job.
62
+ class CancelPatchJobRequest
63
+ include Google::Apis::Core::Hashable
64
+
65
+ def initialize(**args)
66
+ update!(**args)
67
+ end
68
+
69
+ # Update properties of this object
70
+ def update!(**args)
71
+ end
72
+ end
73
+
74
+ # A generic empty message that you can re-use to avoid defining duplicated
75
+ # empty messages in your APIs. A typical example is to use it as the request
76
+ # or the response type of an API method. For instance:
77
+ # service Foo `
78
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
79
+ # `
80
+ # The JSON representation for `Empty` is empty JSON object ````.
81
+ class Empty
82
+ include Google::Apis::Core::Hashable
83
+
84
+ def initialize(**args)
85
+ update!(**args)
86
+ end
87
+
88
+ # Update properties of this object
89
+ def update!(**args)
90
+ end
91
+ end
92
+
93
+ # A step that runs an executable for a PatchJob.
94
+ class ExecStep
95
+ include Google::Apis::Core::Hashable
96
+
97
+ # Common configurations for an ExecStep.
98
+ # Corresponds to the JSON property `linuxExecStepConfig`
99
+ # @return [Google::Apis::OsconfigV1::ExecStepConfig]
100
+ attr_accessor :linux_exec_step_config
101
+
102
+ # Common configurations for an ExecStep.
103
+ # Corresponds to the JSON property `windowsExecStepConfig`
104
+ # @return [Google::Apis::OsconfigV1::ExecStepConfig]
105
+ attr_accessor :windows_exec_step_config
106
+
107
+ def initialize(**args)
108
+ update!(**args)
109
+ end
110
+
111
+ # Update properties of this object
112
+ def update!(**args)
113
+ @linux_exec_step_config = args[:linux_exec_step_config] if args.key?(:linux_exec_step_config)
114
+ @windows_exec_step_config = args[:windows_exec_step_config] if args.key?(:windows_exec_step_config)
115
+ end
116
+ end
117
+
118
+ # Common configurations for an ExecStep.
119
+ class ExecStepConfig
120
+ include Google::Apis::Core::Hashable
121
+
122
+ # Defaults to [0]. A list of possible return values that the
123
+ # execution can return to indicate a success.
124
+ # Corresponds to the JSON property `allowedSuccessCodes`
125
+ # @return [Array<Fixnum>]
126
+ attr_accessor :allowed_success_codes
127
+
128
+ # Google Cloud Storage object representation.
129
+ # Corresponds to the JSON property `gcsObject`
130
+ # @return [Google::Apis::OsconfigV1::GcsObject]
131
+ attr_accessor :gcs_object
132
+
133
+ # The script interpreter to use to run the script. If no interpreter is
134
+ # specified the script will be executed directly, which will likely
135
+ # only succeed for scripts with [shebang lines]
136
+ # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
137
+ # Corresponds to the JSON property `interpreter`
138
+ # @return [String]
139
+ attr_accessor :interpreter
140
+
141
+ # An absolute path to the executable on the VM.
142
+ # Corresponds to the JSON property `localPath`
143
+ # @return [String]
144
+ attr_accessor :local_path
145
+
146
+ def initialize(**args)
147
+ update!(**args)
148
+ end
149
+
150
+ # Update properties of this object
151
+ def update!(**args)
152
+ @allowed_success_codes = args[:allowed_success_codes] if args.key?(:allowed_success_codes)
153
+ @gcs_object = args[:gcs_object] if args.key?(:gcs_object)
154
+ @interpreter = args[:interpreter] if args.key?(:interpreter)
155
+ @local_path = args[:local_path] if args.key?(:local_path)
156
+ end
157
+ end
158
+
159
+ # A request message to initiate patching across Google Compute Engine
160
+ # instances.
161
+ class ExecutePatchJobRequest
162
+ include Google::Apis::Core::Hashable
163
+
164
+ # Description of the patch job. Length of the description is limited
165
+ # to 1024 characters.
166
+ # Corresponds to the JSON property `description`
167
+ # @return [String]
168
+ attr_accessor :description
169
+
170
+ # Display name for this patch job. This does not have to be unique.
171
+ # Corresponds to the JSON property `displayName`
172
+ # @return [String]
173
+ attr_accessor :display_name
174
+
175
+ # If this patch is a dry-run only, instances are contacted but
176
+ # will do nothing.
177
+ # Corresponds to the JSON property `dryRun`
178
+ # @return [Boolean]
179
+ attr_accessor :dry_run
180
+ alias_method :dry_run?, :dry_run
181
+
182
+ # Duration of the patch job. After the duration ends, the patch job
183
+ # times out.
184
+ # Corresponds to the JSON property `duration`
185
+ # @return [String]
186
+ attr_accessor :duration
187
+
188
+ # A filter to target VM instances for patching. The targeted
189
+ # VMs must meet all criteria specified. So if both labels and zones are
190
+ # specified, the patch job targets only VMs with those labels and in those
191
+ # zones.
192
+ # Corresponds to the JSON property `instanceFilter`
193
+ # @return [Google::Apis::OsconfigV1::PatchInstanceFilter]
194
+ attr_accessor :instance_filter
195
+
196
+ # Patch configuration specifications. Contains details on how to apply the
197
+ # patch(es) to a VM instance.
198
+ # Corresponds to the JSON property `patchConfig`
199
+ # @return [Google::Apis::OsconfigV1::PatchConfig]
200
+ attr_accessor :patch_config
201
+
202
+ def initialize(**args)
203
+ update!(**args)
204
+ end
205
+
206
+ # Update properties of this object
207
+ def update!(**args)
208
+ @description = args[:description] if args.key?(:description)
209
+ @display_name = args[:display_name] if args.key?(:display_name)
210
+ @dry_run = args[:dry_run] if args.key?(:dry_run)
211
+ @duration = args[:duration] if args.key?(:duration)
212
+ @instance_filter = args[:instance_filter] if args.key?(:instance_filter)
213
+ @patch_config = args[:patch_config] if args.key?(:patch_config)
214
+ end
215
+ end
216
+
217
+ # Google Cloud Storage object representation.
218
+ class GcsObject
219
+ include Google::Apis::Core::Hashable
220
+
221
+ # Required. Bucket of the Google Cloud Storage object.
222
+ # Corresponds to the JSON property `bucket`
223
+ # @return [String]
224
+ attr_accessor :bucket
225
+
226
+ # Required. Generation number of the Google Cloud Storage object. This is used
227
+ # to
228
+ # ensure that the ExecStep specified by this PatchJob does not change.
229
+ # Corresponds to the JSON property `generationNumber`
230
+ # @return [Fixnum]
231
+ attr_accessor :generation_number
232
+
233
+ # Required. Name of the Google Cloud Storage object.
234
+ # Corresponds to the JSON property `object`
235
+ # @return [String]
236
+ attr_accessor :object
237
+
238
+ def initialize(**args)
239
+ update!(**args)
240
+ end
241
+
242
+ # Update properties of this object
243
+ def update!(**args)
244
+ @bucket = args[:bucket] if args.key?(:bucket)
245
+ @generation_number = args[:generation_number] if args.key?(:generation_number)
246
+ @object = args[:object] if args.key?(:object)
247
+ end
248
+ end
249
+
250
+ # Googet patching is performed by running `googet update`.
251
+ class GooSettings
252
+ include Google::Apis::Core::Hashable
253
+
254
+ def initialize(**args)
255
+ update!(**args)
256
+ end
257
+
258
+ # Update properties of this object
259
+ def update!(**args)
260
+ end
261
+ end
262
+
263
+ # A response message for listing patch deployments.
264
+ class ListPatchDeploymentsResponse
265
+ include Google::Apis::Core::Hashable
266
+
267
+ # A pagination token that can be used to get the next page of patch
268
+ # deployments.
269
+ # Corresponds to the JSON property `nextPageToken`
270
+ # @return [String]
271
+ attr_accessor :next_page_token
272
+
273
+ # The list of patch deployments.
274
+ # Corresponds to the JSON property `patchDeployments`
275
+ # @return [Array<Google::Apis::OsconfigV1::PatchDeployment>]
276
+ attr_accessor :patch_deployments
277
+
278
+ def initialize(**args)
279
+ update!(**args)
280
+ end
281
+
282
+ # Update properties of this object
283
+ def update!(**args)
284
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
285
+ @patch_deployments = args[:patch_deployments] if args.key?(:patch_deployments)
286
+ end
287
+ end
288
+
289
+ # A response message for listing the instances details for a patch job.
290
+ class ListPatchJobInstanceDetailsResponse
291
+ include Google::Apis::Core::Hashable
292
+
293
+ # A pagination token that can be used to get the next page of results.
294
+ # Corresponds to the JSON property `nextPageToken`
295
+ # @return [String]
296
+ attr_accessor :next_page_token
297
+
298
+ # A list of instance status.
299
+ # Corresponds to the JSON property `patchJobInstanceDetails`
300
+ # @return [Array<Google::Apis::OsconfigV1::PatchJobInstanceDetails>]
301
+ attr_accessor :patch_job_instance_details
302
+
303
+ def initialize(**args)
304
+ update!(**args)
305
+ end
306
+
307
+ # Update properties of this object
308
+ def update!(**args)
309
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
310
+ @patch_job_instance_details = args[:patch_job_instance_details] if args.key?(:patch_job_instance_details)
311
+ end
312
+ end
313
+
314
+ # A response message for listing patch jobs.
315
+ class ListPatchJobsResponse
316
+ include Google::Apis::Core::Hashable
317
+
318
+ # A pagination token that can be used to get the next page of results.
319
+ # Corresponds to the JSON property `nextPageToken`
320
+ # @return [String]
321
+ attr_accessor :next_page_token
322
+
323
+ # The list of patch jobs.
324
+ # Corresponds to the JSON property `patchJobs`
325
+ # @return [Array<Google::Apis::OsconfigV1::PatchJob>]
326
+ attr_accessor :patch_jobs
327
+
328
+ def initialize(**args)
329
+ update!(**args)
330
+ end
331
+
332
+ # Update properties of this object
333
+ def update!(**args)
334
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
335
+ @patch_jobs = args[:patch_jobs] if args.key?(:patch_jobs)
336
+ end
337
+ end
338
+
339
+ # Represents a monthly schedule. An example of a valid monthly schedule is
340
+ # "on the third Tuesday of the month" or "on the 15th of the month".
341
+ class MonthlySchedule
342
+ include Google::Apis::Core::Hashable
343
+
344
+ # Required. One day of the month. 1-31 indicates the 1st to the 31st day. -1
345
+ # indicates the last day of the month.
346
+ # Months without the target day will be skipped. For example, a schedule to
347
+ # run "every month on the 31st" will not run in February, April, June, etc.
348
+ # Corresponds to the JSON property `monthDay`
349
+ # @return [Fixnum]
350
+ attr_accessor :month_day
351
+
352
+ # Represents one week day in a month. An example is "the 4th Sunday".
353
+ # Corresponds to the JSON property `weekDayOfMonth`
354
+ # @return [Google::Apis::OsconfigV1::WeekDayOfMonth]
355
+ attr_accessor :week_day_of_month
356
+
357
+ def initialize(**args)
358
+ update!(**args)
359
+ end
360
+
361
+ # Update properties of this object
362
+ def update!(**args)
363
+ @month_day = args[:month_day] if args.key?(:month_day)
364
+ @week_day_of_month = args[:week_day_of_month] if args.key?(:week_day_of_month)
365
+ end
366
+ end
367
+
368
+ # Sets the time for a one time patch deployment. Timestamp is in
369
+ # <a href="https://www.ietf.org/rfc/rfc3339.txt" target="_blank">RFC3339</a>
370
+ # text format.
371
+ class OneTimeSchedule
372
+ include Google::Apis::Core::Hashable
373
+
374
+ # Required. The desired patch job execution time.
375
+ # Corresponds to the JSON property `executeTime`
376
+ # @return [String]
377
+ attr_accessor :execute_time
378
+
379
+ def initialize(**args)
380
+ update!(**args)
381
+ end
382
+
383
+ # Update properties of this object
384
+ def update!(**args)
385
+ @execute_time = args[:execute_time] if args.key?(:execute_time)
386
+ end
387
+ end
388
+
389
+ # Patch configuration specifications. Contains details on how to apply the
390
+ # patch(es) to a VM instance.
391
+ class PatchConfig
392
+ include Google::Apis::Core::Hashable
393
+
394
+ # Apt patching is completed by executing `apt-get update && apt-get
395
+ # upgrade`. Additional options can be set to control how this is executed.
396
+ # Corresponds to the JSON property `apt`
397
+ # @return [Google::Apis::OsconfigV1::AptSettings]
398
+ attr_accessor :apt
399
+
400
+ # Googet patching is performed by running `googet update`.
401
+ # Corresponds to the JSON property `goo`
402
+ # @return [Google::Apis::OsconfigV1::GooSettings]
403
+ attr_accessor :goo
404
+
405
+ # A step that runs an executable for a PatchJob.
406
+ # Corresponds to the JSON property `postStep`
407
+ # @return [Google::Apis::OsconfigV1::ExecStep]
408
+ attr_accessor :post_step
409
+
410
+ # A step that runs an executable for a PatchJob.
411
+ # Corresponds to the JSON property `preStep`
412
+ # @return [Google::Apis::OsconfigV1::ExecStep]
413
+ attr_accessor :pre_step
414
+
415
+ # Post-patch reboot settings.
416
+ # Corresponds to the JSON property `rebootConfig`
417
+ # @return [String]
418
+ attr_accessor :reboot_config
419
+
420
+ # Windows patching is performed using the Windows Update Agent.
421
+ # Corresponds to the JSON property `windowsUpdate`
422
+ # @return [Google::Apis::OsconfigV1::WindowsUpdateSettings]
423
+ attr_accessor :windows_update
424
+
425
+ # Yum patching is performed by executing `yum update`. Additional options
426
+ # can be set to control how this is executed.
427
+ # Note that not all settings are supported on all platforms.
428
+ # Corresponds to the JSON property `yum`
429
+ # @return [Google::Apis::OsconfigV1::YumSettings]
430
+ attr_accessor :yum
431
+
432
+ # Zypper patching is performed by running `zypper patch`.
433
+ # See also https://en.opensuse.org/SDB:Zypper_manual.
434
+ # Corresponds to the JSON property `zypper`
435
+ # @return [Google::Apis::OsconfigV1::ZypperSettings]
436
+ attr_accessor :zypper
437
+
438
+ def initialize(**args)
439
+ update!(**args)
440
+ end
441
+
442
+ # Update properties of this object
443
+ def update!(**args)
444
+ @apt = args[:apt] if args.key?(:apt)
445
+ @goo = args[:goo] if args.key?(:goo)
446
+ @post_step = args[:post_step] if args.key?(:post_step)
447
+ @pre_step = args[:pre_step] if args.key?(:pre_step)
448
+ @reboot_config = args[:reboot_config] if args.key?(:reboot_config)
449
+ @windows_update = args[:windows_update] if args.key?(:windows_update)
450
+ @yum = args[:yum] if args.key?(:yum)
451
+ @zypper = args[:zypper] if args.key?(:zypper)
452
+ end
453
+ end
454
+
455
+ # Patch deployments are configurations that individual patch jobs use to
456
+ # complete a patch. These configurations include instance filter, package
457
+ # repository settings, and a schedule. For more information about creating and
458
+ # managing patch deployments, see [Scheduling patch
459
+ # jobs](/compute/docs/os-patch-management/schedule-patch-jobs).
460
+ class PatchDeployment
461
+ include Google::Apis::Core::Hashable
462
+
463
+ # Output only. Time the patch deployment was created. Timestamp is in
464
+ # <a href="https://www.ietf.org/rfc/rfc3339.txt" target="_blank">RFC3339</a>
465
+ # text format.
466
+ # Corresponds to the JSON property `createTime`
467
+ # @return [String]
468
+ attr_accessor :create_time
469
+
470
+ # Optional. Description of the patch deployment. Length of the description is
471
+ # limited
472
+ # to 1024 characters.
473
+ # Corresponds to the JSON property `description`
474
+ # @return [String]
475
+ attr_accessor :description
476
+
477
+ # Optional. Duration of the patch. After the duration ends, the patch times out.
478
+ # Corresponds to the JSON property `duration`
479
+ # @return [String]
480
+ attr_accessor :duration
481
+
482
+ # A filter to target VM instances for patching. The targeted
483
+ # VMs must meet all criteria specified. So if both labels and zones are
484
+ # specified, the patch job targets only VMs with those labels and in those
485
+ # zones.
486
+ # Corresponds to the JSON property `instanceFilter`
487
+ # @return [Google::Apis::OsconfigV1::PatchInstanceFilter]
488
+ attr_accessor :instance_filter
489
+
490
+ # Output only. The last time a patch job was started by this deployment.
491
+ # Timestamp is in
492
+ # <a href="https://www.ietf.org/rfc/rfc3339.txt" target="_blank">RFC3339</a>
493
+ # text format.
494
+ # Corresponds to the JSON property `lastExecuteTime`
495
+ # @return [String]
496
+ attr_accessor :last_execute_time
497
+
498
+ # Unique name for the patch deployment resource in a project. The patch
499
+ # deployment name is in the form:
500
+ # `projects/`project_id`/patchDeployments/`patch_deployment_id``.
501
+ # This field is ignored when you create a new patch deployment.
502
+ # Corresponds to the JSON property `name`
503
+ # @return [String]
504
+ attr_accessor :name
505
+
506
+ # Sets the time for a one time patch deployment. Timestamp is in
507
+ # <a href="https://www.ietf.org/rfc/rfc3339.txt" target="_blank">RFC3339</a>
508
+ # text format.
509
+ # Corresponds to the JSON property `oneTimeSchedule`
510
+ # @return [Google::Apis::OsconfigV1::OneTimeSchedule]
511
+ attr_accessor :one_time_schedule
512
+
513
+ # Patch configuration specifications. Contains details on how to apply the
514
+ # patch(es) to a VM instance.
515
+ # Corresponds to the JSON property `patchConfig`
516
+ # @return [Google::Apis::OsconfigV1::PatchConfig]
517
+ attr_accessor :patch_config
518
+
519
+ # Sets the time for recurring patch deployments.
520
+ # Corresponds to the JSON property `recurringSchedule`
521
+ # @return [Google::Apis::OsconfigV1::RecurringSchedule]
522
+ attr_accessor :recurring_schedule
523
+
524
+ # Output only. Time the patch deployment was last updated. Timestamp is in
525
+ # <a href="https://www.ietf.org/rfc/rfc3339.txt" target="_blank">RFC3339</a>
526
+ # text format.
527
+ # Corresponds to the JSON property `updateTime`
528
+ # @return [String]
529
+ attr_accessor :update_time
530
+
531
+ def initialize(**args)
532
+ update!(**args)
533
+ end
534
+
535
+ # Update properties of this object
536
+ def update!(**args)
537
+ @create_time = args[:create_time] if args.key?(:create_time)
538
+ @description = args[:description] if args.key?(:description)
539
+ @duration = args[:duration] if args.key?(:duration)
540
+ @instance_filter = args[:instance_filter] if args.key?(:instance_filter)
541
+ @last_execute_time = args[:last_execute_time] if args.key?(:last_execute_time)
542
+ @name = args[:name] if args.key?(:name)
543
+ @one_time_schedule = args[:one_time_schedule] if args.key?(:one_time_schedule)
544
+ @patch_config = args[:patch_config] if args.key?(:patch_config)
545
+ @recurring_schedule = args[:recurring_schedule] if args.key?(:recurring_schedule)
546
+ @update_time = args[:update_time] if args.key?(:update_time)
547
+ end
548
+ end
549
+
550
+ # A filter to target VM instances for patching. The targeted
551
+ # VMs must meet all criteria specified. So if both labels and zones are
552
+ # specified, the patch job targets only VMs with those labels and in those
553
+ # zones.
554
+ class PatchInstanceFilter
555
+ include Google::Apis::Core::Hashable
556
+
557
+ # Target all VM instances in the project. If true, no other criteria is
558
+ # permitted.
559
+ # Corresponds to the JSON property `all`
560
+ # @return [Boolean]
561
+ attr_accessor :all
562
+ alias_method :all?, :all
563
+
564
+ # Targets VM instances matching at least one of these label sets. This allows
565
+ # targeting of disparate groups, for example "env=prod or env=staging".
566
+ # Corresponds to the JSON property `groupLabels`
567
+ # @return [Array<Google::Apis::OsconfigV1::PatchInstanceFilterGroupLabel>]
568
+ attr_accessor :group_labels
569
+
570
+ # Targets VMs whose name starts with one of these prefixes. Similar to
571
+ # labels, this is another way to group VMs when targeting configs, for
572
+ # example prefix="prod-".
573
+ # Corresponds to the JSON property `instanceNamePrefixes`
574
+ # @return [Array<String>]
575
+ attr_accessor :instance_name_prefixes
576
+
577
+ # Targets any of the VM instances specified. Instances are specified by their
578
+ # URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME],
579
+ # `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or
580
+ # `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/
581
+ # instances/[INSTANCE_NAME]`
582
+ # Corresponds to the JSON property `instances`
583
+ # @return [Array<String>]
584
+ attr_accessor :instances
585
+
586
+ # Targets VM instances in ANY of these zones. Leave empty to target VM
587
+ # instances in any zone.
588
+ # Corresponds to the JSON property `zones`
589
+ # @return [Array<String>]
590
+ attr_accessor :zones
591
+
592
+ def initialize(**args)
593
+ update!(**args)
594
+ end
595
+
596
+ # Update properties of this object
597
+ def update!(**args)
598
+ @all = args[:all] if args.key?(:all)
599
+ @group_labels = args[:group_labels] if args.key?(:group_labels)
600
+ @instance_name_prefixes = args[:instance_name_prefixes] if args.key?(:instance_name_prefixes)
601
+ @instances = args[:instances] if args.key?(:instances)
602
+ @zones = args[:zones] if args.key?(:zones)
603
+ end
604
+ end
605
+
606
+ # Represents a group of VMs that can be identified as having all these
607
+ # labels, for example "env=prod and app=web".
608
+ class PatchInstanceFilterGroupLabel
609
+ include Google::Apis::Core::Hashable
610
+
611
+ # Google Compute Engine instance labels that must be present for a VM
612
+ # instance to be targeted by this filter.
613
+ # Corresponds to the JSON property `labels`
614
+ # @return [Hash<String,String>]
615
+ attr_accessor :labels
616
+
617
+ def initialize(**args)
618
+ update!(**args)
619
+ end
620
+
621
+ # Update properties of this object
622
+ def update!(**args)
623
+ @labels = args[:labels] if args.key?(:labels)
624
+ end
625
+ end
626
+
627
+ # A high level representation of a patch job that is either in progress
628
+ # or has completed.
629
+ # Instances details are not included in the job. To paginate through instance
630
+ # details, use ListPatchJobInstanceDetails.
631
+ # For more information about patch jobs, see
632
+ # [Creating patch jobs](/compute/docs/os-patch-management/create-patch-job).
633
+ class PatchJob
634
+ include Google::Apis::Core::Hashable
635
+
636
+ # Time this patch job was created.
637
+ # Corresponds to the JSON property `createTime`
638
+ # @return [String]
639
+ attr_accessor :create_time
640
+
641
+ # Description of the patch job. Length of the description is limited
642
+ # to 1024 characters.
643
+ # Corresponds to the JSON property `description`
644
+ # @return [String]
645
+ attr_accessor :description
646
+
647
+ # Display name for this patch job. This is not a unique identifier.
648
+ # Corresponds to the JSON property `displayName`
649
+ # @return [String]
650
+ attr_accessor :display_name
651
+
652
+ # If this patch job is a dry run, the agent reports that it has
653
+ # finished without running any updates on the VM instance.
654
+ # Corresponds to the JSON property `dryRun`
655
+ # @return [Boolean]
656
+ attr_accessor :dry_run
657
+ alias_method :dry_run?, :dry_run
658
+
659
+ # Duration of the patch job. After the duration ends, the
660
+ # patch job times out.
661
+ # Corresponds to the JSON property `duration`
662
+ # @return [String]
663
+ attr_accessor :duration
664
+
665
+ # If this patch job failed, this message provides information about the
666
+ # failure.
667
+ # Corresponds to the JSON property `errorMessage`
668
+ # @return [String]
669
+ attr_accessor :error_message
670
+
671
+ # A summary of the current patch state across all instances that this patch
672
+ # job affects. Contains counts of instances in different states. These states
673
+ # map to `InstancePatchState`. List patch job instance details to see the
674
+ # specific states of each instance.
675
+ # Corresponds to the JSON property `instanceDetailsSummary`
676
+ # @return [Google::Apis::OsconfigV1::PatchJobInstanceDetailsSummary]
677
+ attr_accessor :instance_details_summary
678
+
679
+ # A filter to target VM instances for patching. The targeted
680
+ # VMs must meet all criteria specified. So if both labels and zones are
681
+ # specified, the patch job targets only VMs with those labels and in those
682
+ # zones.
683
+ # Corresponds to the JSON property `instanceFilter`
684
+ # @return [Google::Apis::OsconfigV1::PatchInstanceFilter]
685
+ attr_accessor :instance_filter
686
+
687
+ # Unique identifier for this patch job in the form
688
+ # `projects/*/patchJobs/*`
689
+ # Corresponds to the JSON property `name`
690
+ # @return [String]
691
+ attr_accessor :name
692
+
693
+ # Patch configuration specifications. Contains details on how to apply the
694
+ # patch(es) to a VM instance.
695
+ # Corresponds to the JSON property `patchConfig`
696
+ # @return [Google::Apis::OsconfigV1::PatchConfig]
697
+ attr_accessor :patch_config
698
+
699
+ # Output only. Name of the patch deployment that created this patch job.
700
+ # Corresponds to the JSON property `patchDeployment`
701
+ # @return [String]
702
+ attr_accessor :patch_deployment
703
+
704
+ # Reflects the overall progress of the patch job in the range of
705
+ # 0.0 being no progress to 100.0 being complete.
706
+ # Corresponds to the JSON property `percentComplete`
707
+ # @return [Float]
708
+ attr_accessor :percent_complete
709
+
710
+ # The current state of the PatchJob .
711
+ # Corresponds to the JSON property `state`
712
+ # @return [String]
713
+ attr_accessor :state
714
+
715
+ # Last time this patch job was updated.
716
+ # Corresponds to the JSON property `updateTime`
717
+ # @return [String]
718
+ attr_accessor :update_time
719
+
720
+ def initialize(**args)
721
+ update!(**args)
722
+ end
723
+
724
+ # Update properties of this object
725
+ def update!(**args)
726
+ @create_time = args[:create_time] if args.key?(:create_time)
727
+ @description = args[:description] if args.key?(:description)
728
+ @display_name = args[:display_name] if args.key?(:display_name)
729
+ @dry_run = args[:dry_run] if args.key?(:dry_run)
730
+ @duration = args[:duration] if args.key?(:duration)
731
+ @error_message = args[:error_message] if args.key?(:error_message)
732
+ @instance_details_summary = args[:instance_details_summary] if args.key?(:instance_details_summary)
733
+ @instance_filter = args[:instance_filter] if args.key?(:instance_filter)
734
+ @name = args[:name] if args.key?(:name)
735
+ @patch_config = args[:patch_config] if args.key?(:patch_config)
736
+ @patch_deployment = args[:patch_deployment] if args.key?(:patch_deployment)
737
+ @percent_complete = args[:percent_complete] if args.key?(:percent_complete)
738
+ @state = args[:state] if args.key?(:state)
739
+ @update_time = args[:update_time] if args.key?(:update_time)
740
+ end
741
+ end
742
+
743
+ # Patch details for a VM instance. For more information about reviewing VM
744
+ # instance details, see
745
+ # [Listing all VM instance details for a specific patch
746
+ # job](/compute/docs/os-patch-management/manage-patch-jobs#list-instance-details)
747
+ # .
748
+ class PatchJobInstanceDetails
749
+ include Google::Apis::Core::Hashable
750
+
751
+ # The number of times the agent that the agent attempts to apply the patch.
752
+ # Corresponds to the JSON property `attemptCount`
753
+ # @return [Fixnum]
754
+ attr_accessor :attempt_count
755
+
756
+ # If the patch fails, this field provides the reason.
757
+ # Corresponds to the JSON property `failureReason`
758
+ # @return [String]
759
+ attr_accessor :failure_reason
760
+
761
+ # The unique identifier for the instance. This identifier is
762
+ # defined by the server.
763
+ # Corresponds to the JSON property `instanceSystemId`
764
+ # @return [String]
765
+ attr_accessor :instance_system_id
766
+
767
+ # The instance name in the form `projects/*/zones/*/instances/*`
768
+ # Corresponds to the JSON property `name`
769
+ # @return [String]
770
+ attr_accessor :name
771
+
772
+ # Current state of instance patch.
773
+ # Corresponds to the JSON property `state`
774
+ # @return [String]
775
+ attr_accessor :state
776
+
777
+ def initialize(**args)
778
+ update!(**args)
779
+ end
780
+
781
+ # Update properties of this object
782
+ def update!(**args)
783
+ @attempt_count = args[:attempt_count] if args.key?(:attempt_count)
784
+ @failure_reason = args[:failure_reason] if args.key?(:failure_reason)
785
+ @instance_system_id = args[:instance_system_id] if args.key?(:instance_system_id)
786
+ @name = args[:name] if args.key?(:name)
787
+ @state = args[:state] if args.key?(:state)
788
+ end
789
+ end
790
+
791
+ # A summary of the current patch state across all instances that this patch
792
+ # job affects. Contains counts of instances in different states. These states
793
+ # map to `InstancePatchState`. List patch job instance details to see the
794
+ # specific states of each instance.
795
+ class PatchJobInstanceDetailsSummary
796
+ include Google::Apis::Core::Hashable
797
+
798
+ # Number of instances that have acked and will start shortly.
799
+ # Corresponds to the JSON property `ackedInstanceCount`
800
+ # @return [Fixnum]
801
+ attr_accessor :acked_instance_count
802
+
803
+ # Number of instances that are applying patches.
804
+ # Corresponds to the JSON property `applyingPatchesInstanceCount`
805
+ # @return [Fixnum]
806
+ attr_accessor :applying_patches_instance_count
807
+
808
+ # Number of instances that are downloading patches.
809
+ # Corresponds to the JSON property `downloadingPatchesInstanceCount`
810
+ # @return [Fixnum]
811
+ attr_accessor :downloading_patches_instance_count
812
+
813
+ # Number of instances that failed.
814
+ # Corresponds to the JSON property `failedInstanceCount`
815
+ # @return [Fixnum]
816
+ attr_accessor :failed_instance_count
817
+
818
+ # Number of instances that are inactive.
819
+ # Corresponds to the JSON property `inactiveInstanceCount`
820
+ # @return [Fixnum]
821
+ attr_accessor :inactive_instance_count
822
+
823
+ # Number of instances that do not appear to be running the agent. Check to
824
+ # ensure that the agent is installed, running, and able to communicate with
825
+ # the service.
826
+ # Corresponds to the JSON property `noAgentDetectedInstanceCount`
827
+ # @return [Fixnum]
828
+ attr_accessor :no_agent_detected_instance_count
829
+
830
+ # Number of instances notified about patch job.
831
+ # Corresponds to the JSON property `notifiedInstanceCount`
832
+ # @return [Fixnum]
833
+ attr_accessor :notified_instance_count
834
+
835
+ # Number of instances pending patch job.
836
+ # Corresponds to the JSON property `pendingInstanceCount`
837
+ # @return [Fixnum]
838
+ attr_accessor :pending_instance_count
839
+
840
+ # Number of instances that are running the post-patch step.
841
+ # Corresponds to the JSON property `postPatchStepInstanceCount`
842
+ # @return [Fixnum]
843
+ attr_accessor :post_patch_step_instance_count
844
+
845
+ # Number of instances that are running the pre-patch step.
846
+ # Corresponds to the JSON property `prePatchStepInstanceCount`
847
+ # @return [Fixnum]
848
+ attr_accessor :pre_patch_step_instance_count
849
+
850
+ # Number of instances rebooting.
851
+ # Corresponds to the JSON property `rebootingInstanceCount`
852
+ # @return [Fixnum]
853
+ attr_accessor :rebooting_instance_count
854
+
855
+ # Number of instances that have started.
856
+ # Corresponds to the JSON property `startedInstanceCount`
857
+ # @return [Fixnum]
858
+ attr_accessor :started_instance_count
859
+
860
+ # Number of instances that have completed successfully.
861
+ # Corresponds to the JSON property `succeededInstanceCount`
862
+ # @return [Fixnum]
863
+ attr_accessor :succeeded_instance_count
864
+
865
+ # Number of instances that require reboot.
866
+ # Corresponds to the JSON property `succeededRebootRequiredInstanceCount`
867
+ # @return [Fixnum]
868
+ attr_accessor :succeeded_reboot_required_instance_count
869
+
870
+ # Number of instances that exceeded the time out while applying the patch.
871
+ # Corresponds to the JSON property `timedOutInstanceCount`
872
+ # @return [Fixnum]
873
+ attr_accessor :timed_out_instance_count
874
+
875
+ def initialize(**args)
876
+ update!(**args)
877
+ end
878
+
879
+ # Update properties of this object
880
+ def update!(**args)
881
+ @acked_instance_count = args[:acked_instance_count] if args.key?(:acked_instance_count)
882
+ @applying_patches_instance_count = args[:applying_patches_instance_count] if args.key?(:applying_patches_instance_count)
883
+ @downloading_patches_instance_count = args[:downloading_patches_instance_count] if args.key?(:downloading_patches_instance_count)
884
+ @failed_instance_count = args[:failed_instance_count] if args.key?(:failed_instance_count)
885
+ @inactive_instance_count = args[:inactive_instance_count] if args.key?(:inactive_instance_count)
886
+ @no_agent_detected_instance_count = args[:no_agent_detected_instance_count] if args.key?(:no_agent_detected_instance_count)
887
+ @notified_instance_count = args[:notified_instance_count] if args.key?(:notified_instance_count)
888
+ @pending_instance_count = args[:pending_instance_count] if args.key?(:pending_instance_count)
889
+ @post_patch_step_instance_count = args[:post_patch_step_instance_count] if args.key?(:post_patch_step_instance_count)
890
+ @pre_patch_step_instance_count = args[:pre_patch_step_instance_count] if args.key?(:pre_patch_step_instance_count)
891
+ @rebooting_instance_count = args[:rebooting_instance_count] if args.key?(:rebooting_instance_count)
892
+ @started_instance_count = args[:started_instance_count] if args.key?(:started_instance_count)
893
+ @succeeded_instance_count = args[:succeeded_instance_count] if args.key?(:succeeded_instance_count)
894
+ @succeeded_reboot_required_instance_count = args[:succeeded_reboot_required_instance_count] if args.key?(:succeeded_reboot_required_instance_count)
895
+ @timed_out_instance_count = args[:timed_out_instance_count] if args.key?(:timed_out_instance_count)
896
+ end
897
+ end
898
+
899
+ # Sets the time for recurring patch deployments.
900
+ class RecurringSchedule
901
+ include Google::Apis::Core::Hashable
902
+
903
+ # Optional. The end time at which a recurring patch deployment schedule is no
904
+ # longer
905
+ # active.
906
+ # Corresponds to the JSON property `endTime`
907
+ # @return [String]
908
+ attr_accessor :end_time
909
+
910
+ # Required. The frequency unit of this recurring schedule.
911
+ # Corresponds to the JSON property `frequency`
912
+ # @return [String]
913
+ attr_accessor :frequency
914
+
915
+ # Output only. The time the last patch job ran successfully.
916
+ # Corresponds to the JSON property `lastExecuteTime`
917
+ # @return [String]
918
+ attr_accessor :last_execute_time
919
+
920
+ # Represents a monthly schedule. An example of a valid monthly schedule is
921
+ # "on the third Tuesday of the month" or "on the 15th of the month".
922
+ # Corresponds to the JSON property `monthly`
923
+ # @return [Google::Apis::OsconfigV1::MonthlySchedule]
924
+ attr_accessor :monthly
925
+
926
+ # Output only. The time the next patch job is scheduled to run.
927
+ # Corresponds to the JSON property `nextExecuteTime`
928
+ # @return [String]
929
+ attr_accessor :next_execute_time
930
+
931
+ # Optional. The time that the recurring schedule becomes effective.
932
+ # Defaults to `create_time` of the patch deployment.
933
+ # Corresponds to the JSON property `startTime`
934
+ # @return [String]
935
+ attr_accessor :start_time
936
+
937
+ # Represents a time of day. The date and time zone are either not significant
938
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
939
+ # types are google.type.Date and `google.protobuf.Timestamp`.
940
+ # Corresponds to the JSON property `timeOfDay`
941
+ # @return [Google::Apis::OsconfigV1::TimeOfDay]
942
+ attr_accessor :time_of_day
943
+
944
+ # Represents a time zone from the
945
+ # [IANA Time Zone Database](https://www.iana.org/time-zones).
946
+ # Corresponds to the JSON property `timeZone`
947
+ # @return [Google::Apis::OsconfigV1::TimeZone]
948
+ attr_accessor :time_zone
949
+
950
+ # Represents a weekly schedule.
951
+ # Corresponds to the JSON property `weekly`
952
+ # @return [Google::Apis::OsconfigV1::WeeklySchedule]
953
+ attr_accessor :weekly
954
+
955
+ def initialize(**args)
956
+ update!(**args)
957
+ end
958
+
959
+ # Update properties of this object
960
+ def update!(**args)
961
+ @end_time = args[:end_time] if args.key?(:end_time)
962
+ @frequency = args[:frequency] if args.key?(:frequency)
963
+ @last_execute_time = args[:last_execute_time] if args.key?(:last_execute_time)
964
+ @monthly = args[:monthly] if args.key?(:monthly)
965
+ @next_execute_time = args[:next_execute_time] if args.key?(:next_execute_time)
966
+ @start_time = args[:start_time] if args.key?(:start_time)
967
+ @time_of_day = args[:time_of_day] if args.key?(:time_of_day)
968
+ @time_zone = args[:time_zone] if args.key?(:time_zone)
969
+ @weekly = args[:weekly] if args.key?(:weekly)
970
+ end
971
+ end
972
+
973
+ # Represents a time of day. The date and time zone are either not significant
974
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
975
+ # types are google.type.Date and `google.protobuf.Timestamp`.
976
+ class TimeOfDay
977
+ include Google::Apis::Core::Hashable
978
+
979
+ # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
980
+ # to allow the value "24:00:00" for scenarios like business closing time.
981
+ # Corresponds to the JSON property `hours`
982
+ # @return [Fixnum]
983
+ attr_accessor :hours
984
+
985
+ # Minutes of hour of day. Must be from 0 to 59.
986
+ # Corresponds to the JSON property `minutes`
987
+ # @return [Fixnum]
988
+ attr_accessor :minutes
989
+
990
+ # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
991
+ # Corresponds to the JSON property `nanos`
992
+ # @return [Fixnum]
993
+ attr_accessor :nanos
994
+
995
+ # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
996
+ # allow the value 60 if it allows leap-seconds.
997
+ # Corresponds to the JSON property `seconds`
998
+ # @return [Fixnum]
999
+ attr_accessor :seconds
1000
+
1001
+ def initialize(**args)
1002
+ update!(**args)
1003
+ end
1004
+
1005
+ # Update properties of this object
1006
+ def update!(**args)
1007
+ @hours = args[:hours] if args.key?(:hours)
1008
+ @minutes = args[:minutes] if args.key?(:minutes)
1009
+ @nanos = args[:nanos] if args.key?(:nanos)
1010
+ @seconds = args[:seconds] if args.key?(:seconds)
1011
+ end
1012
+ end
1013
+
1014
+ # Represents a time zone from the
1015
+ # [IANA Time Zone Database](https://www.iana.org/time-zones).
1016
+ class TimeZone
1017
+ include Google::Apis::Core::Hashable
1018
+
1019
+ # IANA Time Zone Database time zone, e.g. "America/New_York".
1020
+ # Corresponds to the JSON property `id`
1021
+ # @return [String]
1022
+ attr_accessor :id
1023
+
1024
+ # Optional. IANA Time Zone Database version number, e.g. "2019a".
1025
+ # Corresponds to the JSON property `version`
1026
+ # @return [String]
1027
+ attr_accessor :version
1028
+
1029
+ def initialize(**args)
1030
+ update!(**args)
1031
+ end
1032
+
1033
+ # Update properties of this object
1034
+ def update!(**args)
1035
+ @id = args[:id] if args.key?(:id)
1036
+ @version = args[:version] if args.key?(:version)
1037
+ end
1038
+ end
1039
+
1040
+ # Represents one week day in a month. An example is "the 4th Sunday".
1041
+ class WeekDayOfMonth
1042
+ include Google::Apis::Core::Hashable
1043
+
1044
+ # Required. A day of the week.
1045
+ # Corresponds to the JSON property `dayOfWeek`
1046
+ # @return [String]
1047
+ attr_accessor :day_of_week
1048
+
1049
+ # Required. Week number in a month. 1-4 indicates the 1st to 4th week of the
1050
+ # month. -1
1051
+ # indicates the last week of the month.
1052
+ # Corresponds to the JSON property `weekOrdinal`
1053
+ # @return [Fixnum]
1054
+ attr_accessor :week_ordinal
1055
+
1056
+ def initialize(**args)
1057
+ update!(**args)
1058
+ end
1059
+
1060
+ # Update properties of this object
1061
+ def update!(**args)
1062
+ @day_of_week = args[:day_of_week] if args.key?(:day_of_week)
1063
+ @week_ordinal = args[:week_ordinal] if args.key?(:week_ordinal)
1064
+ end
1065
+ end
1066
+
1067
+ # Represents a weekly schedule.
1068
+ class WeeklySchedule
1069
+ include Google::Apis::Core::Hashable
1070
+
1071
+ # Required. Day of the week.
1072
+ # Corresponds to the JSON property `dayOfWeek`
1073
+ # @return [String]
1074
+ attr_accessor :day_of_week
1075
+
1076
+ def initialize(**args)
1077
+ update!(**args)
1078
+ end
1079
+
1080
+ # Update properties of this object
1081
+ def update!(**args)
1082
+ @day_of_week = args[:day_of_week] if args.key?(:day_of_week)
1083
+ end
1084
+ end
1085
+
1086
+ # Windows patching is performed using the Windows Update Agent.
1087
+ class WindowsUpdateSettings
1088
+ include Google::Apis::Core::Hashable
1089
+
1090
+ # Only apply updates of these windows update classifications. If empty, all
1091
+ # updates are applied.
1092
+ # Corresponds to the JSON property `classifications`
1093
+ # @return [Array<String>]
1094
+ attr_accessor :classifications
1095
+
1096
+ # List of KBs to exclude from update.
1097
+ # Corresponds to the JSON property `excludes`
1098
+ # @return [Array<String>]
1099
+ attr_accessor :excludes
1100
+
1101
+ # An exclusive list of kbs to be updated. These are the only patches
1102
+ # that will be updated. This field must not be used with other
1103
+ # patch configurations.
1104
+ # Corresponds to the JSON property `exclusivePatches`
1105
+ # @return [Array<String>]
1106
+ attr_accessor :exclusive_patches
1107
+
1108
+ def initialize(**args)
1109
+ update!(**args)
1110
+ end
1111
+
1112
+ # Update properties of this object
1113
+ def update!(**args)
1114
+ @classifications = args[:classifications] if args.key?(:classifications)
1115
+ @excludes = args[:excludes] if args.key?(:excludes)
1116
+ @exclusive_patches = args[:exclusive_patches] if args.key?(:exclusive_patches)
1117
+ end
1118
+ end
1119
+
1120
+ # Yum patching is performed by executing `yum update`. Additional options
1121
+ # can be set to control how this is executed.
1122
+ # Note that not all settings are supported on all platforms.
1123
+ class YumSettings
1124
+ include Google::Apis::Core::Hashable
1125
+
1126
+ # List of packages to exclude from update. These packages are excluded by
1127
+ # using the yum `--exclude` flag.
1128
+ # Corresponds to the JSON property `excludes`
1129
+ # @return [Array<String>]
1130
+ attr_accessor :excludes
1131
+
1132
+ # An exclusive list of packages to be updated. These are the only packages
1133
+ # that will be updated. If these packages are not installed, they will be
1134
+ # ignored. This field must not be specified with any other patch
1135
+ # configuration fields.
1136
+ # Corresponds to the JSON property `exclusivePackages`
1137
+ # @return [Array<String>]
1138
+ attr_accessor :exclusive_packages
1139
+
1140
+ # Will cause patch to run `yum update-minimal` instead.
1141
+ # Corresponds to the JSON property `minimal`
1142
+ # @return [Boolean]
1143
+ attr_accessor :minimal
1144
+ alias_method :minimal?, :minimal
1145
+
1146
+ # Adds the `--security` flag to `yum update`. Not supported on
1147
+ # all platforms.
1148
+ # Corresponds to the JSON property `security`
1149
+ # @return [Boolean]
1150
+ attr_accessor :security
1151
+ alias_method :security?, :security
1152
+
1153
+ def initialize(**args)
1154
+ update!(**args)
1155
+ end
1156
+
1157
+ # Update properties of this object
1158
+ def update!(**args)
1159
+ @excludes = args[:excludes] if args.key?(:excludes)
1160
+ @exclusive_packages = args[:exclusive_packages] if args.key?(:exclusive_packages)
1161
+ @minimal = args[:minimal] if args.key?(:minimal)
1162
+ @security = args[:security] if args.key?(:security)
1163
+ end
1164
+ end
1165
+
1166
+ # Zypper patching is performed by running `zypper patch`.
1167
+ # See also https://en.opensuse.org/SDB:Zypper_manual.
1168
+ class ZypperSettings
1169
+ include Google::Apis::Core::Hashable
1170
+
1171
+ # Install only patches with these categories.
1172
+ # Common categories include security, recommended, and feature.
1173
+ # Corresponds to the JSON property `categories`
1174
+ # @return [Array<String>]
1175
+ attr_accessor :categories
1176
+
1177
+ # List of patches to exclude from update.
1178
+ # Corresponds to the JSON property `excludes`
1179
+ # @return [Array<String>]
1180
+ attr_accessor :excludes
1181
+
1182
+ # An exclusive list of patches to be updated. These are the only patches
1183
+ # that will be installed using 'zypper patch patch:<patch_name>' command.
1184
+ # This field must not be used with any other patch configuration fields.
1185
+ # Corresponds to the JSON property `exclusivePatches`
1186
+ # @return [Array<String>]
1187
+ attr_accessor :exclusive_patches
1188
+
1189
+ # Install only patches with these severities.
1190
+ # Common severities include critical, important, moderate, and low.
1191
+ # Corresponds to the JSON property `severities`
1192
+ # @return [Array<String>]
1193
+ attr_accessor :severities
1194
+
1195
+ # Adds the `--with-optional` flag to `zypper patch`.
1196
+ # Corresponds to the JSON property `withOptional`
1197
+ # @return [Boolean]
1198
+ attr_accessor :with_optional
1199
+ alias_method :with_optional?, :with_optional
1200
+
1201
+ # Adds the `--with-update` flag, to `zypper patch`.
1202
+ # Corresponds to the JSON property `withUpdate`
1203
+ # @return [Boolean]
1204
+ attr_accessor :with_update
1205
+ alias_method :with_update?, :with_update
1206
+
1207
+ def initialize(**args)
1208
+ update!(**args)
1209
+ end
1210
+
1211
+ # Update properties of this object
1212
+ def update!(**args)
1213
+ @categories = args[:categories] if args.key?(:categories)
1214
+ @excludes = args[:excludes] if args.key?(:excludes)
1215
+ @exclusive_patches = args[:exclusive_patches] if args.key?(:exclusive_patches)
1216
+ @severities = args[:severities] if args.key?(:severities)
1217
+ @with_optional = args[:with_optional] if args.key?(:with_optional)
1218
+ @with_update = args[:with_update] if args.key?(:with_update)
1219
+ end
1220
+ end
1221
+ end
1222
+ end
1223
+ end