google-api-client 0.37.3 → 0.38.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 (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