openstudio-aws 0.1.26 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (351) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/Rakefile +33 -34
  4. data/lib/openstudio/aws/aws.rb +148 -24
  5. data/lib/openstudio/aws/config.rb +1 -0
  6. data/lib/openstudio/aws/version.rb +1 -1
  7. data/lib/openstudio/lib/ami_list.rb +1 -1
  8. data/lib/openstudio/lib/openstudio_aws_instance.rb +260 -26
  9. data/lib/openstudio/lib/openstudio_aws_logger.rb +0 -18
  10. data/lib/openstudio/lib/openstudio_aws_wrapper.rb +111 -75
  11. data/lib/openstudio/lib/os-aws.rb +14 -6
  12. data/lib/openstudio/lib/server_script.sh +40 -26
  13. data/lib/openstudio/lib/worker_script.sh.template +26 -16
  14. data/lib/openstudio-aws.rb +2 -0
  15. data/spec/aws_instances/aws_spec_api.rb +80 -4
  16. data/spec/openstudio-aws/aws_instance_spec.rb +19 -0
  17. data/spec/openstudio-aws/aws_spec.rb +32 -11
  18. data/spec/openstudio-aws/aws_wrapper_spec.rb +5 -5
  19. data/spec/openstudio-aws/config_spec.rb +1 -1
  20. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.0.xml +11 -0
  21. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.1.xml +11 -0
  22. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.10.xml +11 -0
  23. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.11.xml +11 -0
  24. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.12.xml +11 -0
  25. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.13.xml +11 -0
  26. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.2.xml +11 -0
  27. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.3.xml +11 -0
  28. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.4.xml +11 -0
  29. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.5.xml +11 -0
  30. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.6.xml +11 -0
  31. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.7.xml +11 -0
  32. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.8.xml +11 -0
  33. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.9.xml +11 -0
  34. data/spec/reports/SPEC-OpenStudio-Aws-Aws-ami-lists.xml +11 -0
  35. data/spec/reports/SPEC-OpenStudio-Aws-Aws-create-a-new-instance.0.xml +26 -0
  36. data/spec/reports/SPEC-OpenStudio-Aws-Aws-create-a-new-instance.xml +35 -0
  37. data/spec/reports/SPEC-OpenStudio-Aws-Aws-create-ebs-storage.0.xml +14 -0
  38. data/spec/reports/SPEC-OpenStudio-Aws-Aws-create-ebs-storage.xml +14 -0
  39. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.0.xml +14 -0
  40. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.1.xml +21 -0
  41. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.2.xml +11 -0
  42. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.3.xml +11 -0
  43. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.4.xml +11 -0
  44. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.5.xml +11 -0
  45. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.6.xml +11 -0
  46. data/spec/reports/SPEC-OpenStudio-Aws-Aws-custom-keys.xml +16 -0
  47. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.0.xml +13 -0
  48. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.1.xml +13 -0
  49. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.10.xml +13 -0
  50. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.11.xml +13 -0
  51. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.12.xml +13 -0
  52. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.13.xml +13 -0
  53. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.2.xml +13 -0
  54. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.3.xml +13 -0
  55. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.4.xml +13 -0
  56. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.5.xml +13 -0
  57. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.6.xml +13 -0
  58. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.7.xml +13 -0
  59. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.8.xml +13 -0
  60. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.9.xml +13 -0
  61. data/spec/reports/SPEC-OpenStudio-Aws-Aws-proxy-configuration.xml +13 -0
  62. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.0.xml +9 -0
  63. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.1.xml +9 -0
  64. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.10.xml +9 -0
  65. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.11.xml +9 -0
  66. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.12.xml +9 -0
  67. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.13.xml +9 -0
  68. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.2.xml +9 -0
  69. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.3.xml +9 -0
  70. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.4.xml +9 -0
  71. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.5.xml +9 -0
  72. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.6.xml +9 -0
  73. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.7.xml +9 -0
  74. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.8.xml +9 -0
  75. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.9.xml +9 -0
  76. data/spec/reports/SPEC-OpenStudio-Aws-Aws-should-error.xml +9 -0
  77. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.0.xml +9 -0
  78. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.1.xml +9 -0
  79. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.10.xml +9 -0
  80. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.11.xml +9 -0
  81. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.12.xml +9 -0
  82. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.13.xml +9 -0
  83. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.2.xml +9 -0
  84. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.3.xml +9 -0
  85. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.4.xml +9 -0
  86. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.5.xml +9 -0
  87. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.6.xml +9 -0
  88. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.7.xml +9 -0
  89. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.8.xml +9 -0
  90. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.9.xml +9 -0
  91. data/spec/reports/SPEC-OpenStudio-Aws-Aws-version-testing.xml +9 -0
  92. data/spec/reports/SPEC-OpenStudio-Aws-Aws-workers-before-server.0.xml +9 -0
  93. data/spec/reports/SPEC-OpenStudio-Aws-Aws-workers-before-server.xml +9 -0
  94. data/spec/reports/SPEC-OpenStudio-Aws-Aws.0.xml +7 -0
  95. data/spec/reports/SPEC-OpenStudio-Aws-Aws.1.xml +7 -0
  96. data/spec/reports/SPEC-OpenStudio-Aws-Aws.10.xml +7 -0
  97. data/spec/reports/SPEC-OpenStudio-Aws-Aws.11.xml +7 -0
  98. data/spec/reports/SPEC-OpenStudio-Aws-Aws.12.xml +7 -0
  99. data/spec/reports/SPEC-OpenStudio-Aws-Aws.13.xml +7 -0
  100. data/spec/reports/SPEC-OpenStudio-Aws-Aws.14.xml +7 -0
  101. data/spec/reports/SPEC-OpenStudio-Aws-Aws.15.xml +7 -0
  102. data/spec/reports/SPEC-OpenStudio-Aws-Aws.2.xml +7 -0
  103. data/spec/reports/SPEC-OpenStudio-Aws-Aws.3.xml +7 -0
  104. data/spec/reports/SPEC-OpenStudio-Aws-Aws.4.xml +7 -0
  105. data/spec/reports/SPEC-OpenStudio-Aws-Aws.5.xml +7 -0
  106. data/spec/reports/SPEC-OpenStudio-Aws-Aws.6.xml +7 -0
  107. data/spec/reports/SPEC-OpenStudio-Aws-Aws.7.xml +7 -0
  108. data/spec/reports/SPEC-OpenStudio-Aws-Aws.8.xml +7 -0
  109. data/spec/reports/SPEC-OpenStudio-Aws-Aws.9.xml +7 -0
  110. data/spec/reports/SPEC-OpenStudio-Aws-Aws.xml +7 -0
  111. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.0.xml +9 -0
  112. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.1.xml +9 -0
  113. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.10.xml +9 -0
  114. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.11.xml +9 -0
  115. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.12.xml +9 -0
  116. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.2.xml +9 -0
  117. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.3.xml +9 -0
  118. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.4.xml +9 -0
  119. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.5.xml +9 -0
  120. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.6.xml +9 -0
  121. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.7.xml +9 -0
  122. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.8.xml +9 -0
  123. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.9.xml +9 -0
  124. data/spec/reports/SPEC-OpenStudio-Aws-Config-create-a-new-config.xml +9 -0
  125. data/spec/reports/SPEC-OpenStudio-Aws-Config.0.xml +7 -0
  126. data/spec/reports/SPEC-OpenStudio-Aws-Config.1.xml +7 -0
  127. data/spec/reports/SPEC-OpenStudio-Aws-Config.10.xml +7 -0
  128. data/spec/reports/SPEC-OpenStudio-Aws-Config.11.xml +7 -0
  129. data/spec/reports/SPEC-OpenStudio-Aws-Config.12.xml +7 -0
  130. data/spec/reports/SPEC-OpenStudio-Aws-Config.2.xml +7 -0
  131. data/spec/reports/SPEC-OpenStudio-Aws-Config.3.xml +7 -0
  132. data/spec/reports/SPEC-OpenStudio-Aws-Config.4.xml +7 -0
  133. data/spec/reports/SPEC-OpenStudio-Aws-Config.5.xml +7 -0
  134. data/spec/reports/SPEC-OpenStudio-Aws-Config.6.xml +7 -0
  135. data/spec/reports/SPEC-OpenStudio-Aws-Config.7.xml +7 -0
  136. data/spec/reports/SPEC-OpenStudio-Aws-Config.8.xml +7 -0
  137. data/spec/reports/SPEC-OpenStudio-Aws-Config.9.xml +7 -0
  138. data/spec/reports/SPEC-OpenStudio-Aws-Config.xml +7 -0
  139. data/spec/reports/SPEC-OpenStudioAmis-version-1.0.xml +13 -0
  140. data/spec/reports/SPEC-OpenStudioAmis-version-1.1.xml +13 -0
  141. data/spec/reports/SPEC-OpenStudioAmis-version-1.10.xml +13 -0
  142. data/spec/reports/SPEC-OpenStudioAmis-version-1.11.xml +13 -0
  143. data/spec/reports/SPEC-OpenStudioAmis-version-1.12.xml +13 -0
  144. data/spec/reports/SPEC-OpenStudioAmis-version-1.13.xml +13 -0
  145. data/spec/reports/SPEC-OpenStudioAmis-version-1.2.xml +13 -0
  146. data/spec/reports/SPEC-OpenStudioAmis-version-1.3.xml +13 -0
  147. data/spec/reports/SPEC-OpenStudioAmis-version-1.4.xml +13 -0
  148. data/spec/reports/SPEC-OpenStudioAmis-version-1.5.xml +13 -0
  149. data/spec/reports/SPEC-OpenStudioAmis-version-1.6.xml +13 -0
  150. data/spec/reports/SPEC-OpenStudioAmis-version-1.7.xml +13 -0
  151. data/spec/reports/SPEC-OpenStudioAmis-version-1.8.xml +13 -0
  152. data/spec/reports/SPEC-OpenStudioAmis-version-1.9.xml +13 -0
  153. data/spec/reports/SPEC-OpenStudioAmis-version-1.xml +13 -0
  154. data/spec/reports/SPEC-OpenStudioAmis-version-2.0.xml +9 -0
  155. data/spec/reports/SPEC-OpenStudioAmis-version-2.1.xml +9 -0
  156. data/spec/reports/SPEC-OpenStudioAmis-version-2.10.xml +9 -0
  157. data/spec/reports/SPEC-OpenStudioAmis-version-2.11.xml +9 -0
  158. data/spec/reports/SPEC-OpenStudioAmis-version-2.12.xml +9 -0
  159. data/spec/reports/SPEC-OpenStudioAmis-version-2.13.xml +9 -0
  160. data/spec/reports/SPEC-OpenStudioAmis-version-2.2.xml +9 -0
  161. data/spec/reports/SPEC-OpenStudioAmis-version-2.3.xml +9 -0
  162. data/spec/reports/SPEC-OpenStudioAmis-version-2.4.xml +9 -0
  163. data/spec/reports/SPEC-OpenStudioAmis-version-2.5.xml +9 -0
  164. data/spec/reports/SPEC-OpenStudioAmis-version-2.6.xml +9 -0
  165. data/spec/reports/SPEC-OpenStudioAmis-version-2.7.xml +9 -0
  166. data/spec/reports/SPEC-OpenStudioAmis-version-2.8.xml +9 -0
  167. data/spec/reports/SPEC-OpenStudioAmis-version-2.9.xml +9 -0
  168. data/spec/reports/SPEC-OpenStudioAmis-version-2.xml +9 -0
  169. data/spec/reports/SPEC-OpenStudioAmis.0.xml +7 -0
  170. data/spec/reports/SPEC-OpenStudioAmis.1.xml +7 -0
  171. data/spec/reports/SPEC-OpenStudioAmis.10.xml +7 -0
  172. data/spec/reports/SPEC-OpenStudioAmis.11.xml +7 -0
  173. data/spec/reports/SPEC-OpenStudioAmis.12.xml +7 -0
  174. data/spec/reports/SPEC-OpenStudioAmis.13.xml +7 -0
  175. data/spec/reports/SPEC-OpenStudioAmis.2.xml +7 -0
  176. data/spec/reports/SPEC-OpenStudioAmis.3.xml +7 -0
  177. data/spec/reports/SPEC-OpenStudioAmis.4.xml +7 -0
  178. data/spec/reports/SPEC-OpenStudioAmis.5.xml +7 -0
  179. data/spec/reports/SPEC-OpenStudioAmis.6.xml +7 -0
  180. data/spec/reports/SPEC-OpenStudioAmis.7.xml +7 -0
  181. data/spec/reports/SPEC-OpenStudioAmis.8.xml +7 -0
  182. data/spec/reports/SPEC-OpenStudioAmis.9.xml +7 -0
  183. data/spec/reports/SPEC-OpenStudioAmis.xml +7 -0
  184. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.0.xml +21 -0
  185. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.1.xml +11 -0
  186. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.10.xml +11 -0
  187. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.11.xml +11 -0
  188. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.2.xml +11 -0
  189. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.3.xml +25 -0
  190. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.4.xml +11 -0
  191. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.5.xml +11 -0
  192. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.6.xml +11 -0
  193. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.7.xml +11 -0
  194. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.8.xml +11 -0
  195. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.9.xml +11 -0
  196. data/spec/reports/SPEC-OpenStudioAwsInstance-processors.xml +25 -0
  197. data/spec/reports/SPEC-OpenStudioAwsInstance.0.xml +7 -0
  198. data/spec/reports/SPEC-OpenStudioAwsInstance.1.xml +7 -0
  199. data/spec/reports/SPEC-OpenStudioAwsInstance.10.xml +7 -0
  200. data/spec/reports/SPEC-OpenStudioAwsInstance.11.xml +7 -0
  201. data/spec/reports/SPEC-OpenStudioAwsInstance.2.xml +7 -0
  202. data/spec/reports/SPEC-OpenStudioAwsInstance.3.xml +7 -0
  203. data/spec/reports/SPEC-OpenStudioAwsInstance.4.xml +7 -0
  204. data/spec/reports/SPEC-OpenStudioAwsInstance.5.xml +7 -0
  205. data/spec/reports/SPEC-OpenStudioAwsInstance.6.xml +7 -0
  206. data/spec/reports/SPEC-OpenStudioAwsInstance.7.xml +7 -0
  207. data/spec/reports/SPEC-OpenStudioAwsInstance.8.xml +7 -0
  208. data/spec/reports/SPEC-OpenStudioAwsInstance.9.xml +7 -0
  209. data/spec/reports/SPEC-OpenStudioAwsInstance.xml +7 -0
  210. data/spec/reports/SPEC-OpenStudioAwsMethods-processors.0.xml +11 -0
  211. data/spec/reports/SPEC-OpenStudioAwsMethods-processors.1.xml +11 -0
  212. data/spec/reports/SPEC-OpenStudioAwsMethods-processors.xml +11 -0
  213. data/spec/reports/SPEC-OpenStudioAwsMethods.0.xml +7 -0
  214. data/spec/reports/SPEC-OpenStudioAwsMethods.1.xml +7 -0
  215. data/spec/reports/SPEC-OpenStudioAwsMethods.xml +7 -0
  216. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.0.xml +9 -0
  217. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.1.xml +9 -0
  218. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.10.xml +9 -0
  219. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.11.xml +9 -0
  220. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.12.xml +9 -0
  221. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.2.xml +9 -0
  222. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.3.xml +9 -0
  223. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.4.xml +9 -0
  224. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.5.xml +9 -0
  225. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.6.xml +9 -0
  226. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.7.xml +9 -0
  227. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.8.xml +9 -0
  228. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.9.xml +9 -0
  229. data/spec/reports/SPEC-OpenStudioAwsWrapper-ami-list.xml +9 -0
  230. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.0.xml +11 -0
  231. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.1.xml +11 -0
  232. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.10.xml +11 -0
  233. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.11.xml +11 -0
  234. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.12.xml +11 -0
  235. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.13.xml +11 -0
  236. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.2.xml +11 -0
  237. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.3.xml +11 -0
  238. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.4.xml +11 -0
  239. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.5.xml +11 -0
  240. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.6.xml +11 -0
  241. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.7.xml +11 -0
  242. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.8.xml +11 -0
  243. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.9.xml +11 -0
  244. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-availability.xml +11 -0
  245. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.0.xml +11 -0
  246. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.1.xml +11 -0
  247. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.10.xml +11 -0
  248. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.11.xml +11 -0
  249. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.12.xml +11 -0
  250. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.13.xml +11 -0
  251. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.2.xml +11 -0
  252. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.3.xml +11 -0
  253. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.4.xml +11 -0
  254. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.5.xml +11 -0
  255. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.6.xml +9 -0
  256. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.7.xml +11 -0
  257. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.8.xml +11 -0
  258. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.9.xml +11 -0
  259. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-create-new-ami-json.xml +11 -0
  260. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.0.xml +9 -0
  261. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.1.xml +9 -0
  262. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.10.xml +9 -0
  263. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.11.xml +9 -0
  264. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.12.xml +9 -0
  265. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.13.xml +9 -0
  266. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.2.xml +9 -0
  267. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.3.xml +9 -0
  268. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.4.xml +9 -0
  269. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.5.xml +9 -0
  270. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.6.xml +9 -0
  271. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.7.xml +9 -0
  272. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.8.xml +9 -0
  273. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.9.xml +9 -0
  274. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-new-instance.xml +9 -0
  275. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.0.xml +103 -0
  276. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.1.xml +103 -0
  277. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.10.xml +107 -0
  278. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.11.xml +107 -0
  279. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.12.xml +107 -0
  280. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.2.xml +103 -0
  281. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.3.xml +103 -0
  282. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.4.xml +107 -0
  283. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.5.xml +107 -0
  284. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.6.xml +107 -0
  285. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.7.xml +107 -0
  286. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.8.xml +107 -0
  287. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.9.xml +107 -0
  288. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-1.xml +103 -0
  289. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.0.xml +1111 -0
  290. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.1.xml +1111 -0
  291. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.10.xml +1113 -0
  292. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.11.xml +1113 -0
  293. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.12.xml +1133 -0
  294. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.2.xml +1111 -0
  295. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.3.xml +1111 -0
  296. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.4.xml +1113 -0
  297. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.5.xml +1113 -0
  298. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.6.xml +1113 -0
  299. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.7.xml +1113 -0
  300. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.8.xml +1113 -0
  301. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.9.xml +1113 -0
  302. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session-version-2.xml +1111 -0
  303. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.0.xml +7 -0
  304. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.1.xml +7 -0
  305. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.10.xml +7 -0
  306. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.11.xml +7 -0
  307. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.12.xml +7 -0
  308. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.13.xml +7 -0
  309. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.2.xml +7 -0
  310. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.3.xml +7 -0
  311. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.4.xml +7 -0
  312. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.5.xml +7 -0
  313. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.6.xml +7 -0
  314. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.7.xml +7 -0
  315. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.8.xml +7 -0
  316. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.9.xml +7 -0
  317. data/spec/reports/SPEC-OpenStudioAwsWrapper-authenticated-session.xml +7 -0
  318. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.0.xml +9 -0
  319. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.1.xml +9 -0
  320. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.10.xml +9 -0
  321. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.11.xml +9 -0
  322. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.12.xml +9 -0
  323. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.13.xml +9 -0
  324. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.2.xml +9 -0
  325. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.3.xml +9 -0
  326. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.4.xml +9 -0
  327. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.5.xml +9 -0
  328. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.6.xml +9 -0
  329. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.7.xml +9 -0
  330. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.8.xml +9 -0
  331. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.9.xml +9 -0
  332. data/spec/reports/SPEC-OpenStudioAwsWrapper-unauthenticated-session.xml +9 -0
  333. data/spec/reports/SPEC-OpenStudioAwsWrapper.0.xml +7 -0
  334. data/spec/reports/SPEC-OpenStudioAwsWrapper.1.xml +7 -0
  335. data/spec/reports/SPEC-OpenStudioAwsWrapper.10.xml +7 -0
  336. data/spec/reports/SPEC-OpenStudioAwsWrapper.11.xml +7 -0
  337. data/spec/reports/SPEC-OpenStudioAwsWrapper.12.xml +7 -0
  338. data/spec/reports/SPEC-OpenStudioAwsWrapper.13.xml +7 -0
  339. data/spec/reports/SPEC-OpenStudioAwsWrapper.2.xml +7 -0
  340. data/spec/reports/SPEC-OpenStudioAwsWrapper.3.xml +7 -0
  341. data/spec/reports/SPEC-OpenStudioAwsWrapper.4.xml +7 -0
  342. data/spec/reports/SPEC-OpenStudioAwsWrapper.5.xml +7 -0
  343. data/spec/reports/SPEC-OpenStudioAwsWrapper.6.xml +7 -0
  344. data/spec/reports/SPEC-OpenStudioAwsWrapper.7.xml +7 -0
  345. data/spec/reports/SPEC-OpenStudioAwsWrapper.8.xml +7 -0
  346. data/spec/reports/SPEC-OpenStudioAwsWrapper.9.xml +7 -0
  347. data/spec/reports/SPEC-OpenStudioAwsWrapper.xml +7 -0
  348. data/spec/resources/upload_me.sh +5 -0
  349. metadata +664 -7
  350. data/lib/openstudio/lib/openstudio_aws_methods.rb +0 -237
  351. data/spec/openstudio-aws/aws_methods_spec.rb +0 -24
@@ -1,237 +0,0 @@
1
- # NOTE: Do not modify this file as it is copied over. Modify the source file and rerun rake import_files
2
- ######################################################################
3
- # Copyright (c) 2008-2014, Alliance for Sustainable Energy.
4
- # All rights reserved.
5
- #
6
- # This library is free software; you can redistribute it and/or
7
- # modify it under the terms of the GNU Lesser General Public
8
- # License as published by the Free Software Foundation; either
9
- # version 2.1 of the License, or (at your option) any later version.
10
- #
11
- # This library is distributed in the hope that it will be useful,
12
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
- # Lesser General Public License for more details.
15
- #
16
- # You should have received a copy of the GNU Lesser General Public
17
- # License along with this library; if not, write to the Free Software
18
- # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
- ######################################################################
20
-
21
- ######################################################################
22
- # == Synopsis
23
- #
24
- # Methods module for openstudio aws
25
- #
26
- # == Usage
27
- #
28
- # Inside the class in which this file is included make sure to implement the following
29
- #
30
- # Member Variables:
31
- # private_key : the in memory private key
32
- # logger : logger class in which to write log messages
33
- # @proxy : proxy setting if available
34
- ######################################################################
35
-
36
- module OpenStudioAwsMethods
37
- # This list of processors can be pulled out of the ../../doc/amazon_prices.xlsx file
38
- def find_processors(instance)
39
- lookup = {
40
- 'm3.medium' => 1,
41
- 'm3.large' => 2,
42
- 'm3.xlarge' => 4,
43
- 'm3.2xlarge' => 8,
44
- 'c3.large' => 2,
45
- 'c3.xlarge' => 4,
46
- 'c3.2xlarge' => 8,
47
- 'c3.4xlarge' => 8,
48
- 'c3.8xlarge' => 16,
49
- 'r3.large' => 2,
50
- 'r3.xlarge' => 4,
51
- 'r3.2xlarge' => 8,
52
- 'r3.4xlarge' => 16,
53
- 'r3.8xlarge' => 32,
54
- 't1.micro' => 1,
55
- 'm1.small' => 1,
56
- }
57
-
58
- processors = 1
59
- if lookup.key?(instance)
60
- processors = lookup[instance]
61
- else
62
- # logger.warn "Could not find the number of processors for instance type of #{instance}" if logger
63
- end
64
-
65
- processors
66
- end
67
-
68
- def get_proxy
69
- proxy = nil
70
- if @proxy
71
- if @proxy[:username]
72
- proxy = Net::SSH::Proxy::HTTP.new(@proxy[:host], @proxy[:port], user: @proxy[:username], password: proxy[:password])
73
- else
74
- proxy = Net::SSH::Proxy::HTTP.new(@proxy[:host], @proxy[:port])
75
- end
76
- end
77
-
78
- proxy
79
- end
80
-
81
- def upload_file(host, local_path, remote_path)
82
- retries = 0
83
- begin
84
- Net::SCP.start(host, 'ubuntu', proxy: get_proxy, key_data: [@private_key]) do |scp|
85
- scp.upload! local_path, remote_path
86
- end
87
- rescue SystemCallError, Timeout::Error => e
88
- # port 22 might not be available immediately after the instance finishes launching
89
- return if retries == 5
90
- retries += 1
91
- sleep 1
92
- retry
93
- rescue
94
- # Unknown upload error, retry
95
- return if retries == 5
96
- retries += 1
97
- sleep 1
98
- retry
99
- end
100
- end
101
-
102
- def send_command(host, command)
103
- # retries = 0
104
- begin
105
- output = ''
106
- Net::SSH.start(host, 'ubuntu', proxy: get_proxy, key_data: [@private_key]) do |ssh|
107
- response = ssh.exec!(command)
108
- output += response unless response.nil?
109
- end
110
- return output
111
- rescue Net::SSH::HostKeyMismatch => e
112
- e.remember_host!
113
- # key mismatch, retry
114
- # return if retries == 5
115
- # retries += 1
116
- sleep 1
117
- retry
118
- rescue Net::SSH::AuthenticationFailed
119
- error(-1, 'Incorrect private key')
120
- rescue SystemCallError, Timeout::Error => e
121
- # port 22 might not be available immediately after the instance finishes launching
122
- # return if retries == 5
123
- # retries += 1
124
- sleep 1
125
- retry
126
- rescue Exception => e
127
- puts e.message
128
- puts e.backtrace.inspect
129
- end
130
- end
131
-
132
- # ======================= send command ======================#
133
- # Send a command through SSH Shell to an instance.
134
- # Need to pass instance object and the command as a string.
135
- def shell_command(host, command)
136
- begin
137
- @logger.info("ssh_command #{command}")
138
- Net::SSH.start(host, 'ubuntu', proxy: get_proxy, key_data: [@private_key]) do |ssh|
139
- channel = ssh.open_channel do |ch|
140
- ch.exec "#{command}" do |ch, success|
141
- fail "could not execute #{command}" unless success
142
-
143
- # "on_data" is called when the process writes something to stdout
144
- ch.on_data do |c, data|
145
- # $stdout.print data
146
- @logger.info("#{data.inspect}")
147
- end
148
-
149
- # "on_extended_data" is called when the process writes something to stderr
150
- ch.on_extended_data do |c, type, data|
151
- # $stderr.print data
152
- @logger.info("#{data.inspect}")
153
- end
154
- end
155
- end
156
- end
157
- rescue Net::SSH::HostKeyMismatch => e
158
- e.remember_host!
159
- @logger.info('key mismatch, retry')
160
- sleep 1
161
- retry
162
- rescue SystemCallError, Timeout::Error => e
163
- # port 22 might not be available immediately after the instance finishes launching
164
- sleep 1
165
- @logger.info('Not Yet')
166
- retry
167
- end
168
- end
169
-
170
- def wait_command(host, command)
171
- begin
172
- flag = 0
173
- while flag == 0
174
- @logger.info("wait_command #{command}")
175
- Net::SSH.start(host, 'ubuntu', proxy: get_proxy, key_data: [@private_key]) do |ssh|
176
- channel = ssh.open_channel do |ch|
177
- ch.exec "#{command}" do |ch, success|
178
- fail "could not execute #{command}" unless success
179
-
180
- # "on_data" is called when the process writes something to stdout
181
- ch.on_data do |c, data|
182
- @logger.info("#{data.inspect}")
183
- if data.chomp == 'true'
184
- @logger.info("wait_command #{command} is true")
185
- flag = 1
186
- else
187
- sleep 5
188
- end
189
- end
190
-
191
- # "on_extended_data" is called when the process writes something to stderr
192
- ch.on_extended_data do |c, type, data|
193
- @logger.info("#{data.inspect}")
194
- if data == 'true'
195
- @logger.info("wait_command #{command} is true")
196
- flag = 1
197
- else
198
- sleep 5
199
- end
200
- end
201
- end
202
- end
203
- end
204
- end
205
- rescue Net::SSH::HostKeyMismatch => e
206
- e.remember_host!
207
- @logger.info('key mismatch, retry')
208
- sleep 5
209
- retry
210
- rescue SystemCallError, Timeout::Error => e
211
- # port 22 might not be available immediately after the instance finishes launching
212
- sleep 5
213
- @logger.info('Timeout. Perhaps there is a communication error to EC2? Will try again')
214
- retry
215
- end
216
- end
217
-
218
- def download_file(host, remote_path, local_path)
219
- retries = 0
220
- begin
221
- Net::SCP.start(host, 'ubuntu', proxy: get_proxy, key_data: [@private_key]) do |scp|
222
- scp.download! remote_path, local_path
223
- end
224
- rescue SystemCallError, Timeout::Error => e
225
- # port 22 might not be available immediately after the instance finishes launching
226
- return if retries == 5
227
- retries += 1
228
- sleep 1
229
- retry
230
- rescue
231
- return if retries == 5
232
- retries += 1
233
- sleep 1
234
- retry
235
- end
236
- end
237
- end
@@ -1,24 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe OpenStudioAwsMethods do
4
- class DummyClass
5
- end
6
-
7
- before :each do
8
- @dummy_class = DummyClass.new
9
- @dummy_class.extend(OpenStudioAwsMethods)
10
- end
11
-
12
- context 'processors' do
13
- it 'should default to 1 with a warning' do
14
- r = @dummy_class.find_processors('unknowninstance')
15
- expect(r).to eq(1)
16
- end
17
-
18
- it 'should return known values for various instances' do
19
- r = @dummy_class.find_processors('c3.8xlarge')
20
- expect(r).to eq(16)
21
- end
22
-
23
- end
24
- end