google-api-client 0.8.7 → 0.9.pre1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (397) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +20 -0
  3. data/.rspec +2 -0
  4. data/.rubocop.yml +7 -0
  5. data/.rubocop_todo.yml +63 -0
  6. data/.travis.yml +21 -0
  7. data/.yardopts +12 -0
  8. data/CHANGELOG.md +6 -3
  9. data/CONTRIBUTING.md +31 -0
  10. data/Gemfile +28 -2
  11. data/MIGRATING.md +171 -0
  12. data/README.md +158 -150
  13. data/Rakefile +1 -40
  14. data/api_names.yaml +872 -0
  15. data/api_names_out.yaml +20843 -0
  16. data/bin/generate-api +93 -0
  17. data/generated/google/apis/adexchangebuyer_v1_3.rb +35 -0
  18. data/generated/google/apis/adexchangebuyer_v1_3/classes.rb +1124 -0
  19. data/generated/google/apis/adexchangebuyer_v1_3/representations.rb +375 -0
  20. data/generated/google/apis/adexchangebuyer_v1_3/service.rb +893 -0
  21. data/generated/google/apis/adexchangeseller_v2_0.rb +38 -0
  22. data/generated/google/apis/adexchangeseller_v2_0/classes.rb +792 -0
  23. data/generated/google/apis/adexchangeseller_v2_0/representations.rb +309 -0
  24. data/generated/google/apis/adexchangeseller_v2_0/service.rb +682 -0
  25. data/generated/google/apis/admin_directory_v1.rb +89 -0
  26. data/generated/google/apis/admin_directory_v1/classes.rb +2389 -0
  27. data/generated/google/apis/admin_directory_v1/representations.rb +780 -0
  28. data/generated/google/apis/admin_directory_v1/service.rb +2805 -0
  29. data/generated/google/apis/admin_reports_v1.rb +38 -0
  30. data/generated/google/apis/admin_reports_v1/classes.rb +582 -0
  31. data/generated/google/apis/admin_reports_v1/representations.rb +231 -0
  32. data/generated/google/apis/admin_reports_v1/service.rb +341 -0
  33. data/generated/google/apis/adsense_v1_4.rb +38 -0
  34. data/generated/google/apis/adsense_v1_4/classes.rb +1279 -0
  35. data/generated/google/apis/adsense_v1_4/representations.rb +493 -0
  36. data/generated/google/apis/adsense_v1_4/service.rb +1752 -0
  37. data/generated/google/apis/adsensehost_v4_1.rb +35 -0
  38. data/generated/google/apis/adsensehost_v4_1/classes.rb +834 -0
  39. data/generated/google/apis/adsensehost_v4_1/representations.rb +327 -0
  40. data/generated/google/apis/adsensehost_v4_1/service.rb +1190 -0
  41. data/generated/google/apis/analytics_v3.rb +49 -0
  42. data/generated/google/apis/analytics_v3/classes.rb +5113 -0
  43. data/generated/google/apis/analytics_v3/representations.rb +1661 -0
  44. data/generated/google/apis/analytics_v3/service.rb +3600 -0
  45. data/generated/google/apis/androidenterprise_v1.rb +34 -0
  46. data/generated/google/apis/androidenterprise_v1/classes.rb +1162 -0
  47. data/generated/google/apis/androidenterprise_v1/representations.rb +431 -0
  48. data/generated/google/apis/androidenterprise_v1/service.rb +1979 -0
  49. data/generated/google/apis/androidpublisher_v2.rb +34 -0
  50. data/generated/google/apis/androidpublisher_v2/classes.rb +1374 -0
  51. data/generated/google/apis/androidpublisher_v2/representations.rb +630 -0
  52. data/generated/google/apis/androidpublisher_v2/service.rb +2390 -0
  53. data/generated/google/apis/appsactivity_v1.rb +46 -0
  54. data/generated/google/apis/appsactivity_v1/classes.rb +392 -0
  55. data/generated/google/apis/appsactivity_v1/representations.rb +184 -0
  56. data/generated/google/apis/appsactivity_v1/service.rb +129 -0
  57. data/generated/google/apis/appstate_v1.rb +34 -0
  58. data/generated/google/apis/appstate_v1/classes.rb +154 -0
  59. data/generated/google/apis/appstate_v1/representations.rb +79 -0
  60. data/generated/google/apis/appstate_v1/service.rb +265 -0
  61. data/generated/google/apis/autoscaler_v1beta2.rb +38 -0
  62. data/generated/google/apis/autoscaler_v1beta2/classes.rb +747 -0
  63. data/generated/google/apis/autoscaler_v1beta2/representations.rb +281 -0
  64. data/generated/google/apis/autoscaler_v1beta2/service.rb +488 -0
  65. data/generated/google/apis/bigquery_v2.rb +49 -0
  66. data/generated/google/apis/bigquery_v2/classes.rb +2255 -0
  67. data/generated/google/apis/bigquery_v2/representations.rb +754 -0
  68. data/generated/google/apis/bigquery_v2/service.rb +1003 -0
  69. data/generated/google/apis/blogger_v3.rb +37 -0
  70. data/generated/google/apis/blogger_v3/classes.rb +1354 -0
  71. data/generated/google/apis/blogger_v3/representations.rb +562 -0
  72. data/generated/google/apis/blogger_v3/service.rb +1620 -0
  73. data/generated/google/apis/books_v1.rb +34 -0
  74. data/generated/google/apis/books_v1/classes.rb +3515 -0
  75. data/generated/google/apis/books_v1/representations.rb +1361 -0
  76. data/generated/google/apis/books_v1/service.rb +2170 -0
  77. data/generated/google/apis/calendar_v3.rb +37 -0
  78. data/generated/google/apis/calendar_v3/classes.rb +1702 -0
  79. data/generated/google/apis/calendar_v3/representations.rb +566 -0
  80. data/generated/google/apis/calendar_v3/service.rb +1943 -0
  81. data/generated/google/apis/civicinfo_v2.rb +31 -0
  82. data/generated/google/apis/civicinfo_v2/classes.rb +1057 -0
  83. data/generated/google/apis/civicinfo_v2/representations.rb +374 -0
  84. data/generated/google/apis/civicinfo_v2/service.rb +284 -0
  85. data/generated/google/apis/cloudmonitoring_v2beta2.rb +34 -0
  86. data/generated/google/apis/cloudmonitoring_v2beta2/classes.rb +679 -0
  87. data/generated/google/apis/cloudmonitoring_v2beta2/representations.rb +311 -0
  88. data/generated/google/apis/cloudmonitoring_v2beta2/service.rb +458 -0
  89. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +38 -0
  90. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +139 -0
  91. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +65 -0
  92. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +301 -0
  93. data/generated/google/apis/compute_v1.rb +49 -0
  94. data/generated/google/apis/compute_v1/classes.rb +6391 -0
  95. data/generated/google/apis/compute_v1/representations.rb +2209 -0
  96. data/generated/google/apis/compute_v1/service.rb +6352 -0
  97. data/generated/google/apis/container_v1beta1.rb +35 -0
  98. data/generated/google/apis/container_v1beta1/classes.rb +466 -0
  99. data/generated/google/apis/container_v1beta1/representations.rb +177 -0
  100. data/generated/google/apis/container_v1beta1/service.rb +394 -0
  101. data/generated/google/apis/content_v2.rb +35 -0
  102. data/generated/google/apis/content_v2/classes.rb +3780 -0
  103. data/generated/google/apis/content_v2/representations.rb +1456 -0
  104. data/generated/google/apis/content_v2/service.rb +1706 -0
  105. data/generated/google/apis/coordinate_v1.rb +37 -0
  106. data/generated/google/apis/coordinate_v1/classes.rb +669 -0
  107. data/generated/google/apis/coordinate_v1/representations.rb +285 -0
  108. data/generated/google/apis/coordinate_v1/service.rb +687 -0
  109. data/{lib/google/api_client/auth/compute_service_account.rb → generated/google/apis/customsearch_v1.rb} +13 -10
  110. data/generated/google/apis/customsearch_v1/classes.rb +771 -0
  111. data/generated/google/apis/customsearch_v1/representations.rb +276 -0
  112. data/generated/google/apis/customsearch_v1/service.rb +208 -0
  113. data/generated/google/apis/datastore_v1beta2.rb +40 -0
  114. data/generated/google/apis/datastore_v1beta2/classes.rb +1186 -0
  115. data/generated/google/apis/datastore_v1beta2/representations.rb +526 -0
  116. data/generated/google/apis/datastore_v1beta2/service.rb +300 -0
  117. data/generated/google/apis/deploymentmanager_v2beta2.rb +41 -0
  118. data/generated/google/apis/deploymentmanager_v2beta2/classes.rb +820 -0
  119. data/generated/google/apis/deploymentmanager_v2beta2/representations.rb +303 -0
  120. data/generated/google/apis/deploymentmanager_v2beta2/service.rb +647 -0
  121. data/generated/google/apis/dfareporting_v2_1.rb +37 -0
  122. data/generated/google/apis/dfareporting_v2_1/classes.rb +10755 -0
  123. data/generated/google/apis/dfareporting_v2_1/representations.rb +3438 -0
  124. data/generated/google/apis/dfareporting_v2_1/service.rb +8775 -0
  125. data/generated/google/apis/discovery_v1.rb +32 -0
  126. data/generated/google/apis/discovery_v1/classes.rb +947 -0
  127. data/generated/google/apis/discovery_v1/representations.rb +355 -0
  128. data/generated/google/apis/discovery_v1/service.rb +144 -0
  129. data/generated/google/apis/dns_v1.rb +41 -0
  130. data/generated/google/apis/dns_v1/classes.rb +406 -0
  131. data/generated/google/apis/dns_v1/representations.rb +151 -0
  132. data/generated/google/apis/dns_v1/service.rb +460 -0
  133. data/{spec/google/api_client/request_spec.rb → generated/google/apis/doubleclickbidmanager_v1.rb} +15 -13
  134. data/generated/google/apis/doubleclickbidmanager_v1/classes.rb +709 -0
  135. data/generated/google/apis/doubleclickbidmanager_v1/representations.rb +297 -0
  136. data/generated/google/apis/doubleclickbidmanager_v1/service.rb +349 -0
  137. data/generated/google/apis/doubleclicksearch_v2.rb +35 -0
  138. data/generated/google/apis/doubleclicksearch_v2/classes.rb +947 -0
  139. data/generated/google/apis/doubleclicksearch_v2/representations.rb +315 -0
  140. data/generated/google/apis/doubleclicksearch_v2/service.rb +490 -0
  141. data/generated/google/apis/drive_v2.rb +55 -0
  142. data/generated/google/apis/drive_v2/classes.rb +2519 -0
  143. data/generated/google/apis/drive_v2/representations.rb +781 -0
  144. data/generated/google/apis/drive_v2/service.rb +2685 -0
  145. data/generated/google/apis/fitness_v1.rb +49 -0
  146. data/generated/google/apis/fitness_v1/classes.rb +809 -0
  147. data/generated/google/apis/fitness_v1/representations.rb +295 -0
  148. data/generated/google/apis/fitness_v1/service.rb +684 -0
  149. data/generated/google/apis/fusiontables_v2.rb +37 -0
  150. data/generated/google/apis/fusiontables_v2/classes.rb +1048 -0
  151. data/generated/google/apis/fusiontables_v2/representations.rb +409 -0
  152. data/generated/google/apis/fusiontables_v2/service.rb +1496 -0
  153. data/generated/google/apis/games_configuration_v1configuration.rb +34 -0
  154. data/generated/google/apis/games_configuration_v1configuration/classes.rb +506 -0
  155. data/generated/google/apis/games_configuration_v1configuration/representations.rb +206 -0
  156. data/generated/google/apis/games_configuration_v1configuration/service.rb +578 -0
  157. data/generated/google/apis/games_v1.rb +40 -0
  158. data/generated/google/apis/games_v1/classes.rb +4578 -0
  159. data/generated/google/apis/games_v1/representations.rb +1570 -0
  160. data/generated/google/apis/games_v1/service.rb +2306 -0
  161. data/generated/google/apis/gan_v1beta1.rb +31 -0
  162. data/generated/google/apis/gan_v1beta1/classes.rb +1428 -0
  163. data/generated/google/apis/gan_v1beta1/representations.rb +428 -0
  164. data/generated/google/apis/gan_v1beta1/service.rb +692 -0
  165. data/generated/google/apis/genomics_v1beta2.rb +46 -0
  166. data/generated/google/apis/genomics_v1beta2/classes.rb +3288 -0
  167. data/generated/google/apis/genomics_v1beta2/representations.rb +1194 -0
  168. data/generated/google/apis/genomics_v1beta2/service.rb +2356 -0
  169. data/generated/google/apis/gmail_v1.rb +49 -0
  170. data/generated/google/apis/gmail_v1/classes.rb +794 -0
  171. data/generated/google/apis/gmail_v1/representations.rb +339 -0
  172. data/generated/google/apis/gmail_v1/service.rb +1502 -0
  173. data/generated/google/apis/groupsmigration_v1.rb +34 -0
  174. data/generated/google/apis/groupsmigration_v1/classes.rb +51 -0
  175. data/generated/google/apis/groupsmigration_v1/representations.rb +38 -0
  176. data/generated/google/apis/groupsmigration_v1/service.rb +111 -0
  177. data/generated/google/apis/groupssettings_v1.rb +34 -0
  178. data/generated/google/apis/groupssettings_v1/classes.rb +221 -0
  179. data/generated/google/apis/groupssettings_v1/representations.rb +64 -0
  180. data/generated/google/apis/groupssettings_v1/service.rb +179 -0
  181. data/generated/google/apis/identitytoolkit_v3.rb +31 -0
  182. data/generated/google/apis/identitytoolkit_v3/classes.rb +1229 -0
  183. data/generated/google/apis/identitytoolkit_v3/representations.rb +422 -0
  184. data/generated/google/apis/identitytoolkit_v3/service.rb +491 -0
  185. data/generated/google/apis/licensing_v1.rb +34 -0
  186. data/generated/google/apis/licensing_v1/classes.rb +132 -0
  187. data/generated/google/apis/licensing_v1/representations.rb +68 -0
  188. data/generated/google/apis/licensing_v1/service.rb +376 -0
  189. data/generated/google/apis/logging_v1beta3.rb +35 -0
  190. data/generated/google/apis/logging_v1beta3/classes.rb +505 -0
  191. data/generated/google/apis/logging_v1beta3/representations.rb +222 -0
  192. data/generated/google/apis/logging_v1beta3/service.rb +670 -0
  193. data/generated/google/apis/manager_v1beta2.rb +50 -0
  194. data/generated/google/apis/manager_v1beta2/classes.rb +1287 -0
  195. data/generated/google/apis/manager_v1beta2/representations.rb +536 -0
  196. data/generated/google/apis/manager_v1beta2/service.rb +380 -0
  197. data/generated/google/apis/mapsengine_v1.rb +38 -0
  198. data/generated/google/apis/mapsengine_v1/classes.rb +2873 -0
  199. data/generated/google/apis/mapsengine_v1/representations.rb +1235 -0
  200. data/generated/google/apis/mapsengine_v1/service.rb +3465 -0
  201. data/generated/google/apis/mirror_v1.rb +37 -0
  202. data/generated/google/apis/mirror_v1/classes.rb +1072 -0
  203. data/generated/google/apis/mirror_v1/representations.rb +350 -0
  204. data/generated/google/apis/mirror_v1/service.rb +1001 -0
  205. data/generated/google/apis/oauth2_v2.rb +43 -0
  206. data/generated/google/apis/oauth2_v2/classes.rb +245 -0
  207. data/generated/google/apis/oauth2_v2/representations.rb +94 -0
  208. data/generated/google/apis/oauth2_v2/service.rb +203 -0
  209. data/generated/google/apis/pagespeedonline_v2.rb +32 -0
  210. data/generated/google/apis/pagespeedonline_v2/classes.rb +614 -0
  211. data/generated/google/apis/pagespeedonline_v2/representations.rb +244 -0
  212. data/generated/google/apis/pagespeedonline_v2/service.rb +120 -0
  213. data/generated/google/apis/plus_domains_v1.rb +61 -0
  214. data/generated/google/apis/plus_domains_v1/classes.rb +2402 -0
  215. data/generated/google/apis/plus_domains_v1/representations.rb +873 -0
  216. data/generated/google/apis/plus_domains_v1/service.rb +924 -0
  217. data/generated/google/apis/plus_v1.rb +43 -0
  218. data/generated/google/apis/plus_v1/classes.rb +2384 -0
  219. data/generated/google/apis/plus_v1/representations.rb +812 -0
  220. data/generated/google/apis/plus_v1/service.rb +616 -0
  221. data/generated/google/apis/prediction_v1_6.rb +44 -0
  222. data/generated/google/apis/prediction_v1_6/classes.rb +751 -0
  223. data/generated/google/apis/prediction_v1_6/representations.rb +327 -0
  224. data/generated/google/apis/prediction_v1_6/service.rb +388 -0
  225. data/generated/google/apis/pubsub_v1beta2.rb +37 -0
  226. data/generated/google/apis/pubsub_v1beta2/classes.rb +824 -0
  227. data/generated/google/apis/pubsub_v1beta2/representations.rb +366 -0
  228. data/generated/google/apis/pubsub_v1beta2/service.rb +778 -0
  229. data/generated/google/apis/qpx_express_v1.rb +31 -0
  230. data/generated/google/apis/qpx_express_v1/classes.rb +1268 -0
  231. data/generated/google/apis/qpx_express_v1/representations.rb +424 -0
  232. data/generated/google/apis/qpx_express_v1/service.rb +101 -0
  233. data/generated/google/apis/replicapool_v1beta2.rb +41 -0
  234. data/generated/google/apis/replicapool_v1beta2/classes.rb +621 -0
  235. data/generated/google/apis/replicapool_v1beta2/representations.rb +235 -0
  236. data/generated/google/apis/replicapool_v1beta2/service.rb +620 -0
  237. data/generated/google/apis/replicapoolupdater_v1beta1.rb +41 -0
  238. data/generated/google/apis/replicapoolupdater_v1beta1/classes.rb +682 -0
  239. data/generated/google/apis/replicapoolupdater_v1beta1/representations.rb +247 -0
  240. data/generated/google/apis/replicapoolupdater_v1beta1/service.rb +472 -0
  241. data/generated/google/apis/reseller_v1.rb +37 -0
  242. data/generated/google/apis/reseller_v1/classes.rb +502 -0
  243. data/generated/google/apis/reseller_v1/representations.rb +199 -0
  244. data/generated/google/apis/reseller_v1/service.rb +637 -0
  245. data/generated/google/apis/resourceviews_v1beta2.rb +47 -0
  246. data/generated/google/apis/resourceviews_v1beta2/classes.rb +660 -0
  247. data/generated/google/apis/resourceviews_v1beta2/representations.rb +269 -0
  248. data/generated/google/apis/resourceviews_v1beta2/service.rb +574 -0
  249. data/generated/google/apis/site_verification_v1.rb +37 -0
  250. data/generated/google/apis/site_verification_v1/classes.rb +185 -0
  251. data/generated/google/apis/site_verification_v1/representations.rb +101 -0
  252. data/generated/google/apis/site_verification_v1/service.rb +322 -0
  253. data/generated/google/apis/sqladmin_v1beta4.rb +37 -0
  254. data/generated/google/apis/sqladmin_v1beta4/classes.rb +1817 -0
  255. data/generated/google/apis/sqladmin_v1beta4/representations.rb +688 -0
  256. data/generated/google/apis/sqladmin_v1beta4/service.rb +1534 -0
  257. data/generated/google/apis/storage_v1.rb +43 -0
  258. data/generated/google/apis/storage_v1/classes.rb +1177 -0
  259. data/generated/google/apis/storage_v1/representations.rb +427 -0
  260. data/generated/google/apis/storage_v1/service.rb +1920 -0
  261. data/generated/google/apis/tagmanager_v1.rb +52 -0
  262. data/generated/google/apis/tagmanager_v1/classes.rb +1226 -0
  263. data/generated/google/apis/tagmanager_v1/representations.rb +461 -0
  264. data/generated/google/apis/tagmanager_v1/service.rb +1978 -0
  265. data/generated/google/apis/taskqueue_v1beta2.rb +37 -0
  266. data/generated/google/apis/taskqueue_v1beta2/classes.rb +254 -0
  267. data/generated/google/apis/taskqueue_v1beta2/representations.rb +114 -0
  268. data/generated/google/apis/taskqueue_v1beta2/service.rb +416 -0
  269. data/generated/google/apis/tasks_v1.rb +37 -0
  270. data/generated/google/apis/tasks_v1/classes.rb +296 -0
  271. data/generated/google/apis/tasks_v1/representations.rb +115 -0
  272. data/generated/google/apis/tasks_v1/service.rb +657 -0
  273. data/generated/google/apis/translate_v2.rb +31 -0
  274. data/generated/google/apis/translate_v2/classes.rb +168 -0
  275. data/generated/google/apis/translate_v2/representations.rb +109 -0
  276. data/generated/google/apis/translate_v2/service.rb +185 -0
  277. data/generated/google/apis/urlshortener_v1.rb +34 -0
  278. data/generated/google/apis/urlshortener_v1/classes.rb +246 -0
  279. data/generated/google/apis/urlshortener_v1/representations.rb +111 -0
  280. data/generated/google/apis/urlshortener_v1/service.rb +179 -0
  281. data/generated/google/apis/webmasters_v3.rb +37 -0
  282. data/generated/google/apis/webmasters_v3/classes.rb +563 -0
  283. data/generated/google/apis/webmasters_v3/representations.rb +250 -0
  284. data/generated/google/apis/webmasters_v3/service.rb +587 -0
  285. data/generated/google/apis/youtube_analytics_v1.rb +46 -0
  286. data/generated/google/apis/youtube_analytics_v1/classes.rb +540 -0
  287. data/generated/google/apis/youtube_analytics_v1/representations.rb +242 -0
  288. data/generated/google/apis/youtube_analytics_v1/service.rb +567 -0
  289. data/generated/google/apis/youtube_v3.rb +49 -0
  290. data/generated/google/apis/youtube_v3/classes.rb +7225 -0
  291. data/generated/google/apis/youtube_v3/representations.rb +2529 -0
  292. data/generated/google/apis/youtube_v3/service.rb +4051 -0
  293. data/google-api-client.gemspec +27 -39
  294. data/lib/google/api_client/auth/storage.rb +3 -2
  295. data/lib/google/api_client/auth/storages/file_store.rb +1 -3
  296. data/lib/google/api_client/auth/storages/redis_store.rb +6 -2
  297. data/lib/google/apis.rb +48 -0
  298. data/lib/google/apis/core/api_command.rb +128 -0
  299. data/lib/google/apis/core/base_service.rb +314 -0
  300. data/lib/google/apis/core/batch.rb +222 -0
  301. data/lib/google/apis/core/download.rb +94 -0
  302. data/lib/google/apis/core/hashable.rb +44 -0
  303. data/lib/google/apis/core/http_command.rb +275 -0
  304. data/lib/google/apis/core/json_representation.rb +122 -0
  305. data/lib/google/{api_client/version.rb → apis/core/logging.rb} +12 -8
  306. data/lib/google/apis/core/multipart.rb +173 -0
  307. data/lib/google/apis/core/upload.rb +275 -0
  308. data/lib/google/{api_client → apis}/errors.rb +32 -28
  309. data/lib/google/apis/generator.rb +70 -0
  310. data/lib/google/apis/generator/annotator.rb +271 -0
  311. data/lib/google/apis/generator/helpers.rb +74 -0
  312. data/lib/google/apis/generator/model.rb +130 -0
  313. data/lib/google/apis/generator/template.rb +124 -0
  314. data/lib/google/apis/generator/templates/_class.tmpl +40 -0
  315. data/lib/google/apis/generator/templates/_method.tmpl +90 -0
  316. data/lib/google/apis/generator/templates/_representation.tmpl +51 -0
  317. data/lib/google/apis/generator/templates/_representation_stub.tmpl +15 -0
  318. data/lib/google/apis/generator/templates/_representation_type.tmpl +10 -0
  319. data/lib/google/{api_client/reference.rb → apis/generator/templates/classes.rb.tmpl} +11 -9
  320. data/lib/google/apis/generator/templates/module.rb.tmpl +40 -0
  321. data/lib/google/apis/generator/templates/representations.rb.tmpl +32 -0
  322. data/lib/google/apis/generator/templates/service.rb.tmpl +60 -0
  323. data/lib/google/apis/options.rb +79 -0
  324. data/lib/google/apis/version.rb +39 -0
  325. data/rakelib/metrics.rake +22 -0
  326. data/rakelib/rubocop.rake +10 -0
  327. data/rakelib/spec.rake +11 -0
  328. data/rakelib/yard.rake +11 -0
  329. data/samples/calendar/calendar.rb +43 -0
  330. data/samples/drive/drive.rb +40 -0
  331. data/samples/pubsub/pubsub.rb +52 -0
  332. data/{lib/google/api_client/discovery.rb → samples/translate/translate.rb} +14 -5
  333. data/script/generate +79 -0
  334. data/script/package +8 -0
  335. data/script/release +15 -0
  336. data/spec/fixtures/files/api_names.yaml +3 -0
  337. data/spec/fixtures/files/auth_stored_credentials.json +8 -0
  338. data/spec/fixtures/files/client_secrets.json +1 -0
  339. data/spec/fixtures/files/test.blah +1 -0
  340. data/spec/fixtures/files/test.txt +1 -0
  341. data/spec/fixtures/files/test_api.json +440 -0
  342. data/spec/google/api_client/auth/storage_spec.rb +1 -3
  343. data/spec/google/api_client/auth/storages/file_store_spec.rb +1 -2
  344. data/spec/google/api_client/auth/storages/redis_store_spec.rb +1 -3
  345. data/spec/google/apis/core/api_command_spec.rb +170 -0
  346. data/spec/google/apis/core/batch_spec.rb +128 -0
  347. data/spec/google/apis/core/download_spec.rb +90 -0
  348. data/spec/google/apis/core/hashable_spec.rb +60 -0
  349. data/spec/google/apis/core/http_command_spec.rb +238 -0
  350. data/spec/google/apis/core/json_representation_spec.rb +192 -0
  351. data/spec/google/apis/core/service_spec.rb +247 -0
  352. data/spec/google/apis/core/upload_spec.rb +238 -0
  353. data/{lib/google/api_client/service_account.rb → spec/google/apis/generated_spec.rb} +14 -8
  354. data/spec/google/apis/generator/generator_spec.rb +272 -0
  355. data/spec/google/apis/logging_spec.rb +45 -0
  356. data/spec/google/apis/options_spec.rb +40 -0
  357. data/spec/integration_tests/drive_spec.rb +35 -0
  358. data/spec/integration_tests/pubsub_spec.rb +48 -0
  359. data/spec/integration_tests/url_shortener_spec.rb +31 -0
  360. data/spec/spec_helper.rb +102 -46
  361. metadata +433 -178
  362. data/lib/compat/multi_json.rb +0 -19
  363. data/lib/google/api_client.rb +0 -750
  364. data/lib/google/api_client/auth/file_storage.rb +0 -59
  365. data/lib/google/api_client/auth/jwt_asserter.rb +0 -126
  366. data/lib/google/api_client/auth/key_utils.rb +0 -93
  367. data/lib/google/api_client/auth/pkcs12.rb +0 -41
  368. data/lib/google/api_client/batch.rb +0 -326
  369. data/lib/google/api_client/charset.rb +0 -33
  370. data/lib/google/api_client/discovery/api.rb +0 -310
  371. data/lib/google/api_client/discovery/media.rb +0 -77
  372. data/lib/google/api_client/discovery/method.rb +0 -363
  373. data/lib/google/api_client/discovery/resource.rb +0 -156
  374. data/lib/google/api_client/discovery/schema.rb +0 -117
  375. data/lib/google/api_client/environment.rb +0 -42
  376. data/lib/google/api_client/gzip.rb +0 -28
  377. data/lib/google/api_client/logging.rb +0 -32
  378. data/lib/google/api_client/media.rb +0 -259
  379. data/lib/google/api_client/railtie.rb +0 -18
  380. data/lib/google/api_client/request.rb +0 -350
  381. data/lib/google/api_client/result.rb +0 -255
  382. data/lib/google/api_client/service.rb +0 -233
  383. data/lib/google/api_client/service/batch.rb +0 -110
  384. data/lib/google/api_client/service/request.rb +0 -144
  385. data/lib/google/api_client/service/resource.rb +0 -40
  386. data/lib/google/api_client/service/result.rb +0 -162
  387. data/lib/google/api_client/service/simple_file_store.rb +0 -151
  388. data/lib/google/api_client/service/stub_generator.rb +0 -61
  389. data/spec/google/api_client/batch_spec.rb +0 -248
  390. data/spec/google/api_client/discovery_spec.rb +0 -708
  391. data/spec/google/api_client/gzip_spec.rb +0 -98
  392. data/spec/google/api_client/media_spec.rb +0 -178
  393. data/spec/google/api_client/result_spec.rb +0 -207
  394. data/spec/google/api_client/service_account_spec.rb +0 -169
  395. data/spec/google/api_client/service_spec.rb +0 -618
  396. data/spec/google/api_client/simple_file_store_spec.rb +0 -133
  397. data/spec/google/api_client_spec.rb +0 -352
@@ -0,0 +1,50 @@
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/manager_v1beta2/service.rb'
16
+ require 'google/apis/manager_v1beta2/classes.rb'
17
+ require 'google/apis/manager_v1beta2/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Deployment Manager API
22
+ #
23
+ # The Deployment Manager API allows users to declaratively configure, deploy and
24
+ # run complex solutions on the Google Cloud Platform.
25
+ #
26
+ # @see https://developers.google.com/deployment-manager/
27
+ module ManagerV1beta2
28
+ VERSION = 'V1beta2'
29
+ REVISION = '20140915'
30
+
31
+ # View and manage your applications deployed on Google App Engine
32
+ AUTH_APPENGINE_ADMIN = 'https://www.googleapis.com/auth/appengine.admin'
33
+
34
+ # View and manage your data across Google Cloud Platform services
35
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
36
+
37
+ # View and manage your Google Compute Engine resources
38
+ AUTH_COMPUTE = 'https://www.googleapis.com/auth/compute'
39
+
40
+ # Manage your data in Google Cloud Storage
41
+ AUTH_DEVSTORAGE_READ_WRITE = 'https://www.googleapis.com/auth/devstorage.read_write'
42
+
43
+ # View and manage your Google Cloud Platform management resources and deployment status information
44
+ AUTH_NDEV_CLOUDMAN = 'https://www.googleapis.com/auth/ndev.cloudman'
45
+
46
+ # View your Google Cloud Platform management resources and deployment status information
47
+ AUTH_NDEV_CLOUDMAN_READONLY = 'https://www.googleapis.com/auth/ndev.cloudman.readonly'
48
+ end
49
+ end
50
+ end
@@ -0,0 +1,1287 @@
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 ManagerV1beta2
24
+
25
+ # A Compute Engine network accessConfig. Identical to the accessConfig on
26
+ # corresponding Compute Engine resource.
27
+ class AccessConfig
28
+ include Google::Apis::Core::Hashable
29
+
30
+ # Name of this access configuration.
31
+ # Corresponds to the JSON property `name`
32
+ # @return [String]
33
+ attr_accessor :name
34
+
35
+ # An external IP address associated with this instance.
36
+ # Corresponds to the JSON property `natIp`
37
+ # @return [String]
38
+ attr_accessor :nat_ip
39
+
40
+ # Type of this access configuration file. (Currently only ONE_TO_ONE_NAT is
41
+ # legal.)
42
+ # Corresponds to the JSON property `type`
43
+ # @return [String]
44
+ attr_accessor :type
45
+
46
+ def initialize(**args)
47
+ update!(**args)
48
+ end
49
+
50
+ # Update properties of this object
51
+ def update!(**args)
52
+ @name = args[:name] unless args[:name].nil?
53
+ @nat_ip = args[:nat_ip] unless args[:nat_ip].nil?
54
+ @type = args[:type] unless args[:type].nil?
55
+ end
56
+ end
57
+
58
+ # An Action encapsulates a set of commands as a single runnable module with
59
+ # additional information needed during run-time.
60
+ class Action
61
+ include Google::Apis::Core::Hashable
62
+
63
+ # A list of commands to run sequentially for this action.
64
+ # Corresponds to the JSON property `commands`
65
+ # @return [Array<String>]
66
+ attr_accessor :commands
67
+
68
+ # The timeout in milliseconds for this action to run.
69
+ # Corresponds to the JSON property `timeoutMs`
70
+ # @return [Fixnum]
71
+ attr_accessor :timeout_ms
72
+
73
+ def initialize(**args)
74
+ update!(**args)
75
+ end
76
+
77
+ # Update properties of this object
78
+ def update!(**args)
79
+ @commands = args[:commands] unless args[:commands].nil?
80
+ @timeout_ms = args[:timeout_ms] unless args[:timeout_ms].nil?
81
+ end
82
+ end
83
+
84
+ # An allowed port resource.
85
+ class AllowedRule
86
+ include Google::Apis::Core::Hashable
87
+
88
+ # ?tcp?, ?udp? or ?icmp?
89
+ # Corresponds to the JSON property `IPProtocol`
90
+ # @return [String]
91
+ attr_accessor :ip_protocol
92
+
93
+ # List of ports or port ranges (Example inputs include: ["22"], [?33?, "12345-
94
+ # 12349"].
95
+ # Corresponds to the JSON property `ports`
96
+ # @return [Array<String>]
97
+ attr_accessor :ports
98
+
99
+ def initialize(**args)
100
+ update!(**args)
101
+ end
102
+
103
+ # Update properties of this object
104
+ def update!(**args)
105
+ @ip_protocol = args[:ip_protocol] unless args[:ip_protocol].nil?
106
+ @ports = args[:ports] unless args[:ports].nil?
107
+ end
108
+ end
109
+
110
+ #
111
+ class AutoscalingModule
112
+ include Google::Apis::Core::Hashable
113
+
114
+ #
115
+ # Corresponds to the JSON property `coolDownPeriodSec`
116
+ # @return [Fixnum]
117
+ attr_accessor :cool_down_period_sec
118
+
119
+ #
120
+ # Corresponds to the JSON property `description`
121
+ # @return [String]
122
+ attr_accessor :description
123
+
124
+ #
125
+ # Corresponds to the JSON property `maxNumReplicas`
126
+ # @return [Fixnum]
127
+ attr_accessor :max_num_replicas
128
+
129
+ #
130
+ # Corresponds to the JSON property `minNumReplicas`
131
+ # @return [Fixnum]
132
+ attr_accessor :min_num_replicas
133
+
134
+ #
135
+ # Corresponds to the JSON property `signalType`
136
+ # @return [String]
137
+ attr_accessor :signal_type
138
+
139
+ #
140
+ # Corresponds to the JSON property `targetModule`
141
+ # @return [String]
142
+ attr_accessor :target_module
143
+
144
+ # target_utilization should be in range [0,1].
145
+ # Corresponds to the JSON property `targetUtilization`
146
+ # @return [Float]
147
+ attr_accessor :target_utilization
148
+
149
+ def initialize(**args)
150
+ update!(**args)
151
+ end
152
+
153
+ # Update properties of this object
154
+ def update!(**args)
155
+ @cool_down_period_sec = args[:cool_down_period_sec] unless args[:cool_down_period_sec].nil?
156
+ @description = args[:description] unless args[:description].nil?
157
+ @max_num_replicas = args[:max_num_replicas] unless args[:max_num_replicas].nil?
158
+ @min_num_replicas = args[:min_num_replicas] unless args[:min_num_replicas].nil?
159
+ @signal_type = args[:signal_type] unless args[:signal_type].nil?
160
+ @target_module = args[:target_module] unless args[:target_module].nil?
161
+ @target_utilization = args[:target_utilization] unless args[:target_utilization].nil?
162
+ end
163
+ end
164
+
165
+ #
166
+ class AutoscalingModuleStatus
167
+ include Google::Apis::Core::Hashable
168
+
169
+ # [Output Only] The URL of the corresponding Autoscaling configuration.
170
+ # Corresponds to the JSON property `autoscalingConfigUrl`
171
+ # @return [String]
172
+ attr_accessor :autoscaling_config_url
173
+
174
+ def initialize(**args)
175
+ update!(**args)
176
+ end
177
+
178
+ # Update properties of this object
179
+ def update!(**args)
180
+ @autoscaling_config_url = args[:autoscaling_config_url] unless args[:autoscaling_config_url].nil?
181
+ end
182
+ end
183
+
184
+ # [Output Only] The current state of a replica or module.
185
+ class DeployState
186
+ include Google::Apis::Core::Hashable
187
+
188
+ # [Output Only] Human readable details about the current state.
189
+ # Corresponds to the JSON property `details`
190
+ # @return [String]
191
+ attr_accessor :details
192
+
193
+ # [Output Only] The status of the deployment. Possible values include:
194
+ # - UNKNOWN
195
+ # - DEPLOYING
196
+ # - DEPLOYED
197
+ # - DEPLOYMENT_FAILED
198
+ # - DELETING
199
+ # - DELETED
200
+ # - DELETE_FAILED
201
+ # Corresponds to the JSON property `status`
202
+ # @return [String]
203
+ attr_accessor :status
204
+
205
+ def initialize(**args)
206
+ update!(**args)
207
+ end
208
+
209
+ # Update properties of this object
210
+ def update!(**args)
211
+ @details = args[:details] unless args[:details].nil?
212
+ @status = args[:status] unless args[:status].nil?
213
+ end
214
+ end
215
+
216
+ # A deployment represents a physical instantiation of a Template.
217
+ class Deployment
218
+ include Google::Apis::Core::Hashable
219
+
220
+ # [Output Only] The time when this deployment was created.
221
+ # Corresponds to the JSON property `creationDate`
222
+ # @return [String]
223
+ attr_accessor :creation_date
224
+
225
+ # A user-supplied description of this Deployment.
226
+ # Corresponds to the JSON property `description`
227
+ # @return [String]
228
+ attr_accessor :description
229
+
230
+ # [Output Only] List of status for the modules in this deployment.
231
+ # Corresponds to the JSON property `modules`
232
+ # @return [Hash<String,Google::Apis::ManagerV1beta2::ModuleStatus>]
233
+ attr_accessor :modules
234
+
235
+ # Name of this deployment. The name must conform to the following regular
236
+ # expression: [a-zA-Z0-9-_]`1,64`
237
+ # Corresponds to the JSON property `name`
238
+ # @return [String]
239
+ attr_accessor :name
240
+
241
+ # The set of parameter overrides to apply to the corresponding Template before
242
+ # deploying.
243
+ # Corresponds to the JSON property `overrides`
244
+ # @return [Array<Google::Apis::ManagerV1beta2::ParamOverride>]
245
+ attr_accessor :overrides
246
+
247
+ # [Output Only] The current state of a replica or module.
248
+ # Corresponds to the JSON property `state`
249
+ # @return [Google::Apis::ManagerV1beta2::DeployState]
250
+ attr_accessor :state
251
+
252
+ # The name of the Template on which this deployment is based.
253
+ # Corresponds to the JSON property `templateName`
254
+ # @return [String]
255
+ attr_accessor :template_name
256
+
257
+ def initialize(**args)
258
+ update!(**args)
259
+ end
260
+
261
+ # Update properties of this object
262
+ def update!(**args)
263
+ @creation_date = args[:creation_date] unless args[:creation_date].nil?
264
+ @description = args[:description] unless args[:description].nil?
265
+ @modules = args[:modules] unless args[:modules].nil?
266
+ @name = args[:name] unless args[:name].nil?
267
+ @overrides = args[:overrides] unless args[:overrides].nil?
268
+ @state = args[:state] unless args[:state].nil?
269
+ @template_name = args[:template_name] unless args[:template_name].nil?
270
+ end
271
+ end
272
+
273
+ #
274
+ class ListDeploymentsResponse
275
+ include Google::Apis::Core::Hashable
276
+
277
+ #
278
+ # Corresponds to the JSON property `nextPageToken`
279
+ # @return [String]
280
+ attr_accessor :next_page_token
281
+
282
+ #
283
+ # Corresponds to the JSON property `resources`
284
+ # @return [Array<Google::Apis::ManagerV1beta2::Deployment>]
285
+ attr_accessor :resources
286
+
287
+ def initialize(**args)
288
+ update!(**args)
289
+ end
290
+
291
+ # Update properties of this object
292
+ def update!(**args)
293
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
294
+ @resources = args[:resources] unless args[:resources].nil?
295
+ end
296
+ end
297
+
298
+ # How to attach a disk to a Replica.
299
+ class DiskAttachment
300
+ include Google::Apis::Core::Hashable
301
+
302
+ # The device name of this disk.
303
+ # Corresponds to the JSON property `deviceName`
304
+ # @return [String]
305
+ attr_accessor :device_name
306
+
307
+ # A zero-based index to assign to this disk, where 0 is reserved for the boot
308
+ # disk. If not specified, this is assigned by the server.
309
+ # Corresponds to the JSON property `index`
310
+ # @return [Fixnum]
311
+ attr_accessor :index
312
+
313
+ def initialize(**args)
314
+ update!(**args)
315
+ end
316
+
317
+ # Update properties of this object
318
+ def update!(**args)
319
+ @device_name = args[:device_name] unless args[:device_name].nil?
320
+ @index = args[:index] unless args[:index].nil?
321
+ end
322
+ end
323
+
324
+ # An environment variable.
325
+ class EnvVariable
326
+ include Google::Apis::Core::Hashable
327
+
328
+ # Whether this variable is hidden or visible.
329
+ # Corresponds to the JSON property `hidden`
330
+ # @return [Boolean]
331
+ attr_accessor :hidden
332
+ alias_method :hidden?, :hidden
333
+
334
+ # Value of the environment variable.
335
+ # Corresponds to the JSON property `value`
336
+ # @return [String]
337
+ attr_accessor :value
338
+
339
+ def initialize(**args)
340
+ update!(**args)
341
+ end
342
+
343
+ # Update properties of this object
344
+ def update!(**args)
345
+ @hidden = args[:hidden] unless args[:hidden].nil?
346
+ @value = args[:value] unless args[:value].nil?
347
+ end
348
+ end
349
+
350
+ # A pre-existing persistent disk that will be attached to every Replica in the
351
+ # Pool.
352
+ class ExistingDisk
353
+ include Google::Apis::Core::Hashable
354
+
355
+ # How to attach a disk to a Replica.
356
+ # Corresponds to the JSON property `attachment`
357
+ # @return [Google::Apis::ManagerV1beta2::DiskAttachment]
358
+ attr_accessor :attachment
359
+
360
+ # The fully-qualified URL of the Persistent Disk resource. It must be in the
361
+ # same zone as the Pool.
362
+ # Corresponds to the JSON property `source`
363
+ # @return [String]
364
+ attr_accessor :source
365
+
366
+ def initialize(**args)
367
+ update!(**args)
368
+ end
369
+
370
+ # Update properties of this object
371
+ def update!(**args)
372
+ @attachment = args[:attachment] unless args[:attachment].nil?
373
+ @source = args[:source] unless args[:source].nil?
374
+ end
375
+ end
376
+
377
+ # A Firewall resource
378
+ class FirewallModule
379
+ include Google::Apis::Core::Hashable
380
+
381
+ # The allowed ports or port ranges.
382
+ # Corresponds to the JSON property `allowed`
383
+ # @return [Array<Google::Apis::ManagerV1beta2::AllowedRule>]
384
+ attr_accessor :allowed
385
+
386
+ # The description of the firewall (optional)
387
+ # Corresponds to the JSON property `description`
388
+ # @return [String]
389
+ attr_accessor :description
390
+
391
+ # The NetworkModule to which this firewall should apply. If not specified, or if
392
+ # specified as 'default', this firewall will be applied to the 'default' network.
393
+ # Corresponds to the JSON property `network`
394
+ # @return [String]
395
+ attr_accessor :network
396
+
397
+ # Source IP ranges to apply this firewall to, see the GCE Spec for details on
398
+ # syntax
399
+ # Corresponds to the JSON property `sourceRanges`
400
+ # @return [Array<String>]
401
+ attr_accessor :source_ranges
402
+
403
+ # Source Tags to apply this firewall to, see the GCE Spec for details on syntax
404
+ # Corresponds to the JSON property `sourceTags`
405
+ # @return [Array<String>]
406
+ attr_accessor :source_tags
407
+
408
+ # Target Tags to apply this firewall to, see the GCE Spec for details on syntax
409
+ # Corresponds to the JSON property `targetTags`
410
+ # @return [Array<String>]
411
+ attr_accessor :target_tags
412
+
413
+ def initialize(**args)
414
+ update!(**args)
415
+ end
416
+
417
+ # Update properties of this object
418
+ def update!(**args)
419
+ @allowed = args[:allowed] unless args[:allowed].nil?
420
+ @description = args[:description] unless args[:description].nil?
421
+ @network = args[:network] unless args[:network].nil?
422
+ @source_ranges = args[:source_ranges] unless args[:source_ranges].nil?
423
+ @source_tags = args[:source_tags] unless args[:source_tags].nil?
424
+ @target_tags = args[:target_tags] unless args[:target_tags].nil?
425
+ end
426
+ end
427
+
428
+ #
429
+ class FirewallModuleStatus
430
+ include Google::Apis::Core::Hashable
431
+
432
+ # [Output Only] The URL of the corresponding Firewall resource.
433
+ # Corresponds to the JSON property `firewallUrl`
434
+ # @return [String]
435
+ attr_accessor :firewall_url
436
+
437
+ def initialize(**args)
438
+ update!(**args)
439
+ end
440
+
441
+ # Update properties of this object
442
+ def update!(**args)
443
+ @firewall_url = args[:firewall_url] unless args[:firewall_url].nil?
444
+ end
445
+ end
446
+
447
+ #
448
+ class HealthCheckModule
449
+ include Google::Apis::Core::Hashable
450
+
451
+ #
452
+ # Corresponds to the JSON property `checkIntervalSec`
453
+ # @return [Fixnum]
454
+ attr_accessor :check_interval_sec
455
+
456
+ #
457
+ # Corresponds to the JSON property `description`
458
+ # @return [String]
459
+ attr_accessor :description
460
+
461
+ #
462
+ # Corresponds to the JSON property `healthyThreshold`
463
+ # @return [Fixnum]
464
+ attr_accessor :healthy_threshold
465
+
466
+ #
467
+ # Corresponds to the JSON property `host`
468
+ # @return [String]
469
+ attr_accessor :host
470
+
471
+ #
472
+ # Corresponds to the JSON property `path`
473
+ # @return [String]
474
+ attr_accessor :path
475
+
476
+ #
477
+ # Corresponds to the JSON property `port`
478
+ # @return [Fixnum]
479
+ attr_accessor :port
480
+
481
+ #
482
+ # Corresponds to the JSON property `timeoutSec`
483
+ # @return [Fixnum]
484
+ attr_accessor :timeout_sec
485
+
486
+ #
487
+ # Corresponds to the JSON property `unhealthyThreshold`
488
+ # @return [Fixnum]
489
+ attr_accessor :unhealthy_threshold
490
+
491
+ def initialize(**args)
492
+ update!(**args)
493
+ end
494
+
495
+ # Update properties of this object
496
+ def update!(**args)
497
+ @check_interval_sec = args[:check_interval_sec] unless args[:check_interval_sec].nil?
498
+ @description = args[:description] unless args[:description].nil?
499
+ @healthy_threshold = args[:healthy_threshold] unless args[:healthy_threshold].nil?
500
+ @host = args[:host] unless args[:host].nil?
501
+ @path = args[:path] unless args[:path].nil?
502
+ @port = args[:port] unless args[:port].nil?
503
+ @timeout_sec = args[:timeout_sec] unless args[:timeout_sec].nil?
504
+ @unhealthy_threshold = args[:unhealthy_threshold] unless args[:unhealthy_threshold].nil?
505
+ end
506
+ end
507
+
508
+ #
509
+ class HealthCheckModuleStatus
510
+ include Google::Apis::Core::Hashable
511
+
512
+ # [Output Only] The HealthCheck URL.
513
+ # Corresponds to the JSON property `healthCheckUrl`
514
+ # @return [String]
515
+ attr_accessor :health_check_url
516
+
517
+ def initialize(**args)
518
+ update!(**args)
519
+ end
520
+
521
+ # Update properties of this object
522
+ def update!(**args)
523
+ @health_check_url = args[:health_check_url] unless args[:health_check_url].nil?
524
+ end
525
+ end
526
+
527
+ #
528
+ class LbModule
529
+ include Google::Apis::Core::Hashable
530
+
531
+ #
532
+ # Corresponds to the JSON property `description`
533
+ # @return [String]
534
+ attr_accessor :description
535
+
536
+ #
537
+ # Corresponds to the JSON property `healthChecks`
538
+ # @return [Array<String>]
539
+ attr_accessor :health_checks
540
+
541
+ #
542
+ # Corresponds to the JSON property `ipAddress`
543
+ # @return [String]
544
+ attr_accessor :ip_address
545
+
546
+ #
547
+ # Corresponds to the JSON property `ipProtocol`
548
+ # @return [String]
549
+ attr_accessor :ip_protocol
550
+
551
+ #
552
+ # Corresponds to the JSON property `portRange`
553
+ # @return [String]
554
+ attr_accessor :port_range
555
+
556
+ #
557
+ # Corresponds to the JSON property `sessionAffinity`
558
+ # @return [String]
559
+ attr_accessor :session_affinity
560
+
561
+ #
562
+ # Corresponds to the JSON property `targetModules`
563
+ # @return [Array<String>]
564
+ attr_accessor :target_modules
565
+
566
+ def initialize(**args)
567
+ update!(**args)
568
+ end
569
+
570
+ # Update properties of this object
571
+ def update!(**args)
572
+ @description = args[:description] unless args[:description].nil?
573
+ @health_checks = args[:health_checks] unless args[:health_checks].nil?
574
+ @ip_address = args[:ip_address] unless args[:ip_address].nil?
575
+ @ip_protocol = args[:ip_protocol] unless args[:ip_protocol].nil?
576
+ @port_range = args[:port_range] unless args[:port_range].nil?
577
+ @session_affinity = args[:session_affinity] unless args[:session_affinity].nil?
578
+ @target_modules = args[:target_modules] unless args[:target_modules].nil?
579
+ end
580
+ end
581
+
582
+ #
583
+ class LbModuleStatus
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # [Output Only] The URL of the corresponding ForwardingRule in GCE.
587
+ # Corresponds to the JSON property `forwardingRuleUrl`
588
+ # @return [String]
589
+ attr_accessor :forwarding_rule_url
590
+
591
+ # [Output Only] The URL of the corresponding TargetPool resource in GCE.
592
+ # Corresponds to the JSON property `targetPoolUrl`
593
+ # @return [String]
594
+ attr_accessor :target_pool_url
595
+
596
+ def initialize(**args)
597
+ update!(**args)
598
+ end
599
+
600
+ # Update properties of this object
601
+ def update!(**args)
602
+ @forwarding_rule_url = args[:forwarding_rule_url] unless args[:forwarding_rule_url].nil?
603
+ @target_pool_url = args[:target_pool_url] unless args[:target_pool_url].nil?
604
+ end
605
+ end
606
+
607
+ # A Compute Engine metadata entry. Identical to the metadata on the
608
+ # corresponding Compute Engine resource.
609
+ class Metadata
610
+ include Google::Apis::Core::Hashable
611
+
612
+ # The fingerprint of the metadata.
613
+ # Corresponds to the JSON property `fingerPrint`
614
+ # @return [String]
615
+ attr_accessor :finger_print
616
+
617
+ # A list of metadata items.
618
+ # Corresponds to the JSON property `items`
619
+ # @return [Array<Google::Apis::ManagerV1beta2::MetadataItem>]
620
+ attr_accessor :items
621
+
622
+ def initialize(**args)
623
+ update!(**args)
624
+ end
625
+
626
+ # Update properties of this object
627
+ def update!(**args)
628
+ @finger_print = args[:finger_print] unless args[:finger_print].nil?
629
+ @items = args[:items] unless args[:items].nil?
630
+ end
631
+ end
632
+
633
+ # A Compute Engine metadata item, defined as a key:value pair. Identical to the
634
+ # metadata on the corresponding Compute Engine resource.
635
+ class MetadataItem
636
+ include Google::Apis::Core::Hashable
637
+
638
+ # A metadata key.
639
+ # Corresponds to the JSON property `key`
640
+ # @return [String]
641
+ attr_accessor :key
642
+
643
+ # A metadata value.
644
+ # Corresponds to the JSON property `value`
645
+ # @return [String]
646
+ attr_accessor :value
647
+
648
+ def initialize(**args)
649
+ update!(**args)
650
+ end
651
+
652
+ # Update properties of this object
653
+ def update!(**args)
654
+ @key = args[:key] unless args[:key].nil?
655
+ @value = args[:value] unless args[:value].nil?
656
+ end
657
+ end
658
+
659
+ # A module in a configuration. A module represents a single homogeneous,
660
+ # possibly replicated task.
661
+ class Module
662
+ include Google::Apis::Core::Hashable
663
+
664
+ #
665
+ # Corresponds to the JSON property `autoscalingModule`
666
+ # @return [Google::Apis::ManagerV1beta2::AutoscalingModule]
667
+ attr_accessor :autoscaling_module
668
+
669
+ # A Firewall resource
670
+ # Corresponds to the JSON property `firewallModule`
671
+ # @return [Google::Apis::ManagerV1beta2::FirewallModule]
672
+ attr_accessor :firewall_module
673
+
674
+ #
675
+ # Corresponds to the JSON property `healthCheckModule`
676
+ # @return [Google::Apis::ManagerV1beta2::HealthCheckModule]
677
+ attr_accessor :health_check_module
678
+
679
+ #
680
+ # Corresponds to the JSON property `lbModule`
681
+ # @return [Google::Apis::ManagerV1beta2::LbModule]
682
+ attr_accessor :lb_module
683
+
684
+ #
685
+ # Corresponds to the JSON property `networkModule`
686
+ # @return [Google::Apis::ManagerV1beta2::NetworkModule]
687
+ attr_accessor :network_module
688
+
689
+ #
690
+ # Corresponds to the JSON property `replicaPoolModule`
691
+ # @return [Google::Apis::ManagerV1beta2::ReplicaPoolModule]
692
+ attr_accessor :replica_pool_module
693
+
694
+ # The type of this module. Valid values ("AUTOSCALING", "FIREWALL", "
695
+ # HEALTH_CHECK", "LOAD_BALANCING", "NETWORK", "REPLICA_POOL")
696
+ # Corresponds to the JSON property `type`
697
+ # @return [String]
698
+ attr_accessor :type
699
+
700
+ def initialize(**args)
701
+ update!(**args)
702
+ end
703
+
704
+ # Update properties of this object
705
+ def update!(**args)
706
+ @autoscaling_module = args[:autoscaling_module] unless args[:autoscaling_module].nil?
707
+ @firewall_module = args[:firewall_module] unless args[:firewall_module].nil?
708
+ @health_check_module = args[:health_check_module] unless args[:health_check_module].nil?
709
+ @lb_module = args[:lb_module] unless args[:lb_module].nil?
710
+ @network_module = args[:network_module] unless args[:network_module].nil?
711
+ @replica_pool_module = args[:replica_pool_module] unless args[:replica_pool_module].nil?
712
+ @type = args[:type] unless args[:type].nil?
713
+ end
714
+ end
715
+
716
+ # [Output Only] Aggregate status for a module.
717
+ class ModuleStatus
718
+ include Google::Apis::Core::Hashable
719
+
720
+ # [Output Only] The status of the AutoscalingModule, set for type AUTOSCALING.
721
+ # Corresponds to the JSON property `autoscalingModuleStatus`
722
+ # @return [Google::Apis::ManagerV1beta2::AutoscalingModuleStatus]
723
+ attr_accessor :autoscaling_module_status
724
+
725
+ # [Output Only] The status of the FirewallModule, set for type FIREWALL.
726
+ # Corresponds to the JSON property `firewallModuleStatus`
727
+ # @return [Google::Apis::ManagerV1beta2::FirewallModuleStatus]
728
+ attr_accessor :firewall_module_status
729
+
730
+ # [Output Only] The status of the HealthCheckModule, set for type HEALTH_CHECK.
731
+ # Corresponds to the JSON property `healthCheckModuleStatus`
732
+ # @return [Google::Apis::ManagerV1beta2::HealthCheckModuleStatus]
733
+ attr_accessor :health_check_module_status
734
+
735
+ # [Output Only] The status of the LbModule, set for type LOAD_BALANCING.
736
+ # Corresponds to the JSON property `lbModuleStatus`
737
+ # @return [Google::Apis::ManagerV1beta2::LbModuleStatus]
738
+ attr_accessor :lb_module_status
739
+
740
+ # [Output Only] The status of the NetworkModule, set for type NETWORK.
741
+ # Corresponds to the JSON property `networkModuleStatus`
742
+ # @return [Google::Apis::ManagerV1beta2::NetworkModuleStatus]
743
+ attr_accessor :network_module_status
744
+
745
+ # [Output Only] The status of the ReplicaPoolModule, set for type VM.
746
+ # Corresponds to the JSON property `replicaPoolModuleStatus`
747
+ # @return [Google::Apis::ManagerV1beta2::ReplicaPoolModuleStatus]
748
+ attr_accessor :replica_pool_module_status
749
+
750
+ # [Output Only] The current state of a replica or module.
751
+ # Corresponds to the JSON property `state`
752
+ # @return [Google::Apis::ManagerV1beta2::DeployState]
753
+ attr_accessor :state
754
+
755
+ # [Output Only] The type of the module.
756
+ # Corresponds to the JSON property `type`
757
+ # @return [String]
758
+ attr_accessor :type
759
+
760
+ def initialize(**args)
761
+ update!(**args)
762
+ end
763
+
764
+ # Update properties of this object
765
+ def update!(**args)
766
+ @autoscaling_module_status = args[:autoscaling_module_status] unless args[:autoscaling_module_status].nil?
767
+ @firewall_module_status = args[:firewall_module_status] unless args[:firewall_module_status].nil?
768
+ @health_check_module_status = args[:health_check_module_status] unless args[:health_check_module_status].nil?
769
+ @lb_module_status = args[:lb_module_status] unless args[:lb_module_status].nil?
770
+ @network_module_status = args[:network_module_status] unless args[:network_module_status].nil?
771
+ @replica_pool_module_status = args[:replica_pool_module_status] unless args[:replica_pool_module_status].nil?
772
+ @state = args[:state] unless args[:state].nil?
773
+ @type = args[:type] unless args[:type].nil?
774
+ end
775
+ end
776
+
777
+ # A Compute Engine NetworkInterface resource. Identical to the NetworkInterface
778
+ # on the corresponding Compute Engine resource.
779
+ class NetworkInterface
780
+ include Google::Apis::Core::Hashable
781
+
782
+ # An array of configurations for this interface. This specifies how this
783
+ # interface is configured to interact with other network services
784
+ # Corresponds to the JSON property `accessConfigs`
785
+ # @return [Array<Google::Apis::ManagerV1beta2::AccessConfig>]
786
+ attr_accessor :access_configs
787
+
788
+ # Name of the interface.
789
+ # Corresponds to the JSON property `name`
790
+ # @return [String]
791
+ attr_accessor :name
792
+
793
+ # The name of the NetworkModule to which this interface applies. If not
794
+ # specified, or specified as 'default', this will use the 'default' network.
795
+ # Corresponds to the JSON property `network`
796
+ # @return [String]
797
+ attr_accessor :network
798
+
799
+ # An optional IPV4 internal network address to assign to the instance for this
800
+ # network interface.
801
+ # Corresponds to the JSON property `networkIp`
802
+ # @return [String]
803
+ attr_accessor :network_ip
804
+
805
+ def initialize(**args)
806
+ update!(**args)
807
+ end
808
+
809
+ # Update properties of this object
810
+ def update!(**args)
811
+ @access_configs = args[:access_configs] unless args[:access_configs].nil?
812
+ @name = args[:name] unless args[:name].nil?
813
+ @network = args[:network] unless args[:network].nil?
814
+ @network_ip = args[:network_ip] unless args[:network_ip].nil?
815
+ end
816
+ end
817
+
818
+ #
819
+ class NetworkModule
820
+ include Google::Apis::Core::Hashable
821
+
822
+ # Required; The range of internal addresses that are legal on this network. This
823
+ # range is a CIDR specification, for example: 192.168.0.0/16.
824
+ # Corresponds to the JSON property `IPv4Range`
825
+ # @return [String]
826
+ attr_accessor :i_pv4_range
827
+
828
+ # The description of the network.
829
+ # Corresponds to the JSON property `description`
830
+ # @return [String]
831
+ attr_accessor :description
832
+
833
+ # An optional address that is used for default routing to other networks. This
834
+ # must be within the range specified by IPv4Range, and is typicall the first
835
+ # usable address in that range. If not specified, the default value is the first
836
+ # usable address in IPv4Range.
837
+ # Corresponds to the JSON property `gatewayIPv4`
838
+ # @return [String]
839
+ attr_accessor :gateway_i_pv4
840
+
841
+ def initialize(**args)
842
+ update!(**args)
843
+ end
844
+
845
+ # Update properties of this object
846
+ def update!(**args)
847
+ @i_pv4_range = args[:i_pv4_range] unless args[:i_pv4_range].nil?
848
+ @description = args[:description] unless args[:description].nil?
849
+ @gateway_i_pv4 = args[:gateway_i_pv4] unless args[:gateway_i_pv4].nil?
850
+ end
851
+ end
852
+
853
+ #
854
+ class NetworkModuleStatus
855
+ include Google::Apis::Core::Hashable
856
+
857
+ # [Output Only] The URL of the corresponding Network resource.
858
+ # Corresponds to the JSON property `networkUrl`
859
+ # @return [String]
860
+ attr_accessor :network_url
861
+
862
+ def initialize(**args)
863
+ update!(**args)
864
+ end
865
+
866
+ # Update properties of this object
867
+ def update!(**args)
868
+ @network_url = args[:network_url] unless args[:network_url].nil?
869
+ end
870
+ end
871
+
872
+ # A Persistent Disk resource that will be created and attached to each Replica
873
+ # in the Pool. Each Replica will have a unique persistent disk that is created
874
+ # and attached to that Replica.
875
+ class NewDisk
876
+ include Google::Apis::Core::Hashable
877
+
878
+ # How to attach a disk to a Replica.
879
+ # Corresponds to the JSON property `attachment`
880
+ # @return [Google::Apis::ManagerV1beta2::DiskAttachment]
881
+ attr_accessor :attachment
882
+
883
+ # If true, then this disk will be deleted when the instance is deleted.
884
+ # Corresponds to the JSON property `autoDelete`
885
+ # @return [Boolean]
886
+ attr_accessor :auto_delete
887
+ alias_method :auto_delete?, :auto_delete
888
+
889
+ # If true, indicates that this is the root persistent disk.
890
+ # Corresponds to the JSON property `boot`
891
+ # @return [Boolean]
892
+ attr_accessor :boot
893
+ alias_method :boot?, :boot
894
+
895
+ # Initialization parameters for creating a new disk.
896
+ # Corresponds to the JSON property `initializeParams`
897
+ # @return [Google::Apis::ManagerV1beta2::NewDiskInitializeParams]
898
+ attr_accessor :initialize_params
899
+
900
+ def initialize(**args)
901
+ update!(**args)
902
+ end
903
+
904
+ # Update properties of this object
905
+ def update!(**args)
906
+ @attachment = args[:attachment] unless args[:attachment].nil?
907
+ @auto_delete = args[:auto_delete] unless args[:auto_delete].nil?
908
+ @boot = args[:boot] unless args[:boot].nil?
909
+ @initialize_params = args[:initialize_params] unless args[:initialize_params].nil?
910
+ end
911
+ end
912
+
913
+ # Initialization parameters for creating a new disk.
914
+ class NewDiskInitializeParams
915
+ include Google::Apis::Core::Hashable
916
+
917
+ # The size of the created disk in gigabytes.
918
+ # Corresponds to the JSON property `diskSizeGb`
919
+ # @return [String]
920
+ attr_accessor :disk_size_gb
921
+
922
+ # Name of the disk type resource describing which disk type to use to create the
923
+ # disk. For example 'pd-ssd' or 'pd-standard'. Default is 'pd-standard'
924
+ # Corresponds to the JSON property `diskType`
925
+ # @return [String]
926
+ attr_accessor :disk_type
927
+
928
+ # The fully-qualified URL of a source image to use to create this disk.
929
+ # Corresponds to the JSON property `sourceImage`
930
+ # @return [String]
931
+ attr_accessor :source_image
932
+
933
+ def initialize(**args)
934
+ update!(**args)
935
+ end
936
+
937
+ # Update properties of this object
938
+ def update!(**args)
939
+ @disk_size_gb = args[:disk_size_gb] unless args[:disk_size_gb].nil?
940
+ @disk_type = args[:disk_type] unless args[:disk_type].nil?
941
+ @source_image = args[:source_image] unless args[:source_image].nil?
942
+ end
943
+ end
944
+
945
+ # A specification for overriding parameters in a Template that corresponds to
946
+ # the Deployment.
947
+ class ParamOverride
948
+ include Google::Apis::Core::Hashable
949
+
950
+ # A JSON Path expression that specifies which parameter should be overridden.
951
+ # Corresponds to the JSON property `path`
952
+ # @return [String]
953
+ attr_accessor :path
954
+
955
+ # The new value to assign to the overridden parameter.
956
+ # Corresponds to the JSON property `value`
957
+ # @return [String]
958
+ attr_accessor :value
959
+
960
+ def initialize(**args)
961
+ update!(**args)
962
+ end
963
+
964
+ # Update properties of this object
965
+ def update!(**args)
966
+ @path = args[:path] unless args[:path].nil?
967
+ @value = args[:value] unless args[:value].nil?
968
+ end
969
+ end
970
+
971
+ #
972
+ class ReplicaPoolModule
973
+ include Google::Apis::Core::Hashable
974
+
975
+ # A list of environment variables.
976
+ # Corresponds to the JSON property `envVariables`
977
+ # @return [Hash<String,Google::Apis::ManagerV1beta2::EnvVariable>]
978
+ attr_accessor :env_variables
979
+
980
+ # The Health Checks to configure for the ReplicaPoolModule
981
+ # Corresponds to the JSON property `healthChecks`
982
+ # @return [Array<String>]
983
+ attr_accessor :health_checks
984
+
985
+ # Number of replicas in this module.
986
+ # Corresponds to the JSON property `numReplicas`
987
+ # @return [Fixnum]
988
+ attr_accessor :num_replicas
989
+
990
+ # Configuration information for a ReplicaPools resource. Specifying an item
991
+ # within will determine the ReplicaPools API version used for a
992
+ # ReplicaPoolModule. Only one may be specified.
993
+ # Corresponds to the JSON property `replicaPoolParams`
994
+ # @return [Google::Apis::ManagerV1beta2::ReplicaPoolParams]
995
+ attr_accessor :replica_pool_params
996
+
997
+ # [Output Only] The name of the Resource View associated with a
998
+ # ReplicaPoolModule. This field will be generated by the service.
999
+ # Corresponds to the JSON property `resourceView`
1000
+ # @return [String]
1001
+ attr_accessor :resource_view
1002
+
1003
+ def initialize(**args)
1004
+ update!(**args)
1005
+ end
1006
+
1007
+ # Update properties of this object
1008
+ def update!(**args)
1009
+ @env_variables = args[:env_variables] unless args[:env_variables].nil?
1010
+ @health_checks = args[:health_checks] unless args[:health_checks].nil?
1011
+ @num_replicas = args[:num_replicas] unless args[:num_replicas].nil?
1012
+ @replica_pool_params = args[:replica_pool_params] unless args[:replica_pool_params].nil?
1013
+ @resource_view = args[:resource_view] unless args[:resource_view].nil?
1014
+ end
1015
+ end
1016
+
1017
+ #
1018
+ class ReplicaPoolModuleStatus
1019
+ include Google::Apis::Core::Hashable
1020
+
1021
+ # [Output Only] The URL of the associated ReplicaPool resource.
1022
+ # Corresponds to the JSON property `replicaPoolUrl`
1023
+ # @return [String]
1024
+ attr_accessor :replica_pool_url
1025
+
1026
+ # [Output Only] The URL of the Resource Group associated with this ReplicaPool.
1027
+ # Corresponds to the JSON property `resourceViewUrl`
1028
+ # @return [String]
1029
+ attr_accessor :resource_view_url
1030
+
1031
+ def initialize(**args)
1032
+ update!(**args)
1033
+ end
1034
+
1035
+ # Update properties of this object
1036
+ def update!(**args)
1037
+ @replica_pool_url = args[:replica_pool_url] unless args[:replica_pool_url].nil?
1038
+ @resource_view_url = args[:resource_view_url] unless args[:resource_view_url].nil?
1039
+ end
1040
+ end
1041
+
1042
+ # Configuration information for a ReplicaPools resource. Specifying an item
1043
+ # within will determine the ReplicaPools API version used for a
1044
+ # ReplicaPoolModule. Only one may be specified.
1045
+ class ReplicaPoolParams
1046
+ include Google::Apis::Core::Hashable
1047
+
1048
+ # Configuration information for a ReplicaPools v1beta1 API resource. Directly
1049
+ # maps to ReplicaPool InitTemplate.
1050
+ # Corresponds to the JSON property `v1beta1`
1051
+ # @return [Google::Apis::ManagerV1beta2::ReplicaPoolParamsV1Beta1]
1052
+ attr_accessor :v1beta1
1053
+
1054
+ def initialize(**args)
1055
+ update!(**args)
1056
+ end
1057
+
1058
+ # Update properties of this object
1059
+ def update!(**args)
1060
+ @v1beta1 = args[:v1beta1] unless args[:v1beta1].nil?
1061
+ end
1062
+ end
1063
+
1064
+ # Configuration information for a ReplicaPools v1beta1 API resource. Directly
1065
+ # maps to ReplicaPool InitTemplate.
1066
+ class ReplicaPoolParamsV1Beta1
1067
+ include Google::Apis::Core::Hashable
1068
+
1069
+ # Whether these replicas should be restarted if they experience a failure. The
1070
+ # default value is true.
1071
+ # Corresponds to the JSON property `autoRestart`
1072
+ # @return [Boolean]
1073
+ attr_accessor :auto_restart
1074
+ alias_method :auto_restart?, :auto_restart
1075
+
1076
+ # The base name for instances within this ReplicaPool.
1077
+ # Corresponds to the JSON property `baseInstanceName`
1078
+ # @return [String]
1079
+ attr_accessor :base_instance_name
1080
+
1081
+ # Enables IP Forwarding
1082
+ # Corresponds to the JSON property `canIpForward`
1083
+ # @return [Boolean]
1084
+ attr_accessor :can_ip_forward
1085
+ alias_method :can_ip_forward?, :can_ip_forward
1086
+
1087
+ # An optional textual description of the resource.
1088
+ # Corresponds to the JSON property `description`
1089
+ # @return [String]
1090
+ attr_accessor :description
1091
+
1092
+ # A list of existing Persistent Disk resources to attach to each replica in the
1093
+ # pool. Each disk will be attached in read-only mode to every replica.
1094
+ # Corresponds to the JSON property `disksToAttach`
1095
+ # @return [Array<Google::Apis::ManagerV1beta2::ExistingDisk>]
1096
+ attr_accessor :disks_to_attach
1097
+
1098
+ # A list of Disk resources to create and attach to each Replica in the Pool.
1099
+ # Currently, you can only define one disk and it must be a root persistent disk.
1100
+ # Note that Replica Pool will create a root persistent disk for each replica.
1101
+ # Corresponds to the JSON property `disksToCreate`
1102
+ # @return [Array<Google::Apis::ManagerV1beta2::NewDisk>]
1103
+ attr_accessor :disks_to_create
1104
+
1105
+ # Name of the Action to be run during initialization of a ReplicaPoolModule.
1106
+ # Corresponds to the JSON property `initAction`
1107
+ # @return [String]
1108
+ attr_accessor :init_action
1109
+
1110
+ # The machine type for this instance. Either a complete URL, or the resource
1111
+ # name (e.g. n1-standard-1).
1112
+ # Corresponds to the JSON property `machineType`
1113
+ # @return [String]
1114
+ attr_accessor :machine_type
1115
+
1116
+ # A Compute Engine metadata entry. Identical to the metadata on the
1117
+ # corresponding Compute Engine resource.
1118
+ # Corresponds to the JSON property `metadata`
1119
+ # @return [Google::Apis::ManagerV1beta2::Metadata]
1120
+ attr_accessor :metadata
1121
+
1122
+ # A list of network interfaces for the instance. Currently only one interface is
1123
+ # supported by Google Compute Engine.
1124
+ # Corresponds to the JSON property `networkInterfaces`
1125
+ # @return [Array<Google::Apis::ManagerV1beta2::NetworkInterface>]
1126
+ attr_accessor :network_interfaces
1127
+
1128
+ #
1129
+ # Corresponds to the JSON property `onHostMaintenance`
1130
+ # @return [String]
1131
+ attr_accessor :on_host_maintenance
1132
+
1133
+ # A list of Service Accounts to enable for this instance.
1134
+ # Corresponds to the JSON property `serviceAccounts`
1135
+ # @return [Array<Google::Apis::ManagerV1beta2::ServiceAccount>]
1136
+ attr_accessor :service_accounts
1137
+
1138
+ # A Compute Engine Instance tag, identical to the tags on the corresponding
1139
+ # Compute Engine Instance resource.
1140
+ # Corresponds to the JSON property `tags`
1141
+ # @return [Google::Apis::ManagerV1beta2::Tag]
1142
+ attr_accessor :tags
1143
+
1144
+ # The zone for this ReplicaPool.
1145
+ # Corresponds to the JSON property `zone`
1146
+ # @return [String]
1147
+ attr_accessor :zone
1148
+
1149
+ def initialize(**args)
1150
+ update!(**args)
1151
+ end
1152
+
1153
+ # Update properties of this object
1154
+ def update!(**args)
1155
+ @auto_restart = args[:auto_restart] unless args[:auto_restart].nil?
1156
+ @base_instance_name = args[:base_instance_name] unless args[:base_instance_name].nil?
1157
+ @can_ip_forward = args[:can_ip_forward] unless args[:can_ip_forward].nil?
1158
+ @description = args[:description] unless args[:description].nil?
1159
+ @disks_to_attach = args[:disks_to_attach] unless args[:disks_to_attach].nil?
1160
+ @disks_to_create = args[:disks_to_create] unless args[:disks_to_create].nil?
1161
+ @init_action = args[:init_action] unless args[:init_action].nil?
1162
+ @machine_type = args[:machine_type] unless args[:machine_type].nil?
1163
+ @metadata = args[:metadata] unless args[:metadata].nil?
1164
+ @network_interfaces = args[:network_interfaces] unless args[:network_interfaces].nil?
1165
+ @on_host_maintenance = args[:on_host_maintenance] unless args[:on_host_maintenance].nil?
1166
+ @service_accounts = args[:service_accounts] unless args[:service_accounts].nil?
1167
+ @tags = args[:tags] unless args[:tags].nil?
1168
+ @zone = args[:zone] unless args[:zone].nil?
1169
+ end
1170
+ end
1171
+
1172
+ # A Compute Engine service account, identical to the Compute Engine resource.
1173
+ class ServiceAccount
1174
+ include Google::Apis::Core::Hashable
1175
+
1176
+ # Service account email address.
1177
+ # Corresponds to the JSON property `email`
1178
+ # @return [String]
1179
+ attr_accessor :email
1180
+
1181
+ # List of OAuth2 scopes to obtain for the service account.
1182
+ # Corresponds to the JSON property `scopes`
1183
+ # @return [Array<String>]
1184
+ attr_accessor :scopes
1185
+
1186
+ def initialize(**args)
1187
+ update!(**args)
1188
+ end
1189
+
1190
+ # Update properties of this object
1191
+ def update!(**args)
1192
+ @email = args[:email] unless args[:email].nil?
1193
+ @scopes = args[:scopes] unless args[:scopes].nil?
1194
+ end
1195
+ end
1196
+
1197
+ # A Compute Engine Instance tag, identical to the tags on the corresponding
1198
+ # Compute Engine Instance resource.
1199
+ class Tag
1200
+ include Google::Apis::Core::Hashable
1201
+
1202
+ # The fingerprint of the tag.
1203
+ # Corresponds to the JSON property `fingerPrint`
1204
+ # @return [String]
1205
+ attr_accessor :finger_print
1206
+
1207
+ # Items contained in this tag.
1208
+ # Corresponds to the JSON property `items`
1209
+ # @return [Array<String>]
1210
+ attr_accessor :items
1211
+
1212
+ def initialize(**args)
1213
+ update!(**args)
1214
+ end
1215
+
1216
+ # Update properties of this object
1217
+ def update!(**args)
1218
+ @finger_print = args[:finger_print] unless args[:finger_print].nil?
1219
+ @items = args[:items] unless args[:items].nil?
1220
+ end
1221
+ end
1222
+
1223
+ # A Template represents a complete configuration for a Deployment.
1224
+ class Template
1225
+ include Google::Apis::Core::Hashable
1226
+
1227
+ # Action definitions for use in Module intents in this Template.
1228
+ # Corresponds to the JSON property `actions`
1229
+ # @return [Hash<String,Google::Apis::ManagerV1beta2::Action>]
1230
+ attr_accessor :actions
1231
+
1232
+ # A user-supplied description of this Template.
1233
+ # Corresponds to the JSON property `description`
1234
+ # @return [String]
1235
+ attr_accessor :description
1236
+
1237
+ # A list of modules for this Template.
1238
+ # Corresponds to the JSON property `modules`
1239
+ # @return [Hash<String,Google::Apis::ManagerV1beta2::Module>]
1240
+ attr_accessor :modules
1241
+
1242
+ # Name of this Template. The name must conform to the expression: [a-zA-Z0-9-_]`
1243
+ # 1,64`
1244
+ # Corresponds to the JSON property `name`
1245
+ # @return [String]
1246
+ attr_accessor :name
1247
+
1248
+ def initialize(**args)
1249
+ update!(**args)
1250
+ end
1251
+
1252
+ # Update properties of this object
1253
+ def update!(**args)
1254
+ @actions = args[:actions] unless args[:actions].nil?
1255
+ @description = args[:description] unless args[:description].nil?
1256
+ @modules = args[:modules] unless args[:modules].nil?
1257
+ @name = args[:name] unless args[:name].nil?
1258
+ end
1259
+ end
1260
+
1261
+ #
1262
+ class ListTemplatesResponse
1263
+ include Google::Apis::Core::Hashable
1264
+
1265
+ #
1266
+ # Corresponds to the JSON property `nextPageToken`
1267
+ # @return [String]
1268
+ attr_accessor :next_page_token
1269
+
1270
+ #
1271
+ # Corresponds to the JSON property `resources`
1272
+ # @return [Array<Google::Apis::ManagerV1beta2::Template>]
1273
+ attr_accessor :resources
1274
+
1275
+ def initialize(**args)
1276
+ update!(**args)
1277
+ end
1278
+
1279
+ # Update properties of this object
1280
+ def update!(**args)
1281
+ @next_page_token = args[:next_page_token] unless args[:next_page_token].nil?
1282
+ @resources = args[:resources] unless args[:resources].nil?
1283
+ end
1284
+ end
1285
+ end
1286
+ end
1287
+ end