zaws 0.0.5 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +2 -0
  3. data/.travis.yml +9 -18
  4. data/Gemfile +0 -0
  5. data/Gemfile.lock +26 -35
  6. data/Gemfile.lock.linux +69 -0
  7. data/Gemfile.lock.mac +81 -0
  8. data/Gemfile.lock.windows +77 -0
  9. data/LICENSE +0 -0
  10. data/README.md +11 -0
  11. data/Rakefile +1 -7
  12. data/archive/cloud_trail/cloud_trail.feature +124 -0
  13. data/bin/win_zaws.bat +2 -0
  14. data/lib/zaws.rb +54 -41
  15. data/lib/zaws/command/ai.rb +34 -0
  16. data/lib/zaws/command/bucket.rb +35 -0
  17. data/lib/zaws/command/cloud_trail.rb +43 -0
  18. data/lib/zaws/command/compute.rb +152 -87
  19. data/lib/zaws/command/config.rb +42 -0
  20. data/lib/zaws/command/elasticip.rb +19 -9
  21. data/lib/zaws/command/hosted_zone.rb +31 -18
  22. data/lib/zaws/command/iam.rb +37 -0
  23. data/lib/zaws/command/load_balancer.rb +54 -51
  24. data/lib/zaws/command/nessus.rb +41 -0
  25. data/lib/zaws/command/newrelic.rb +30 -0
  26. data/lib/zaws/command/route_table.rb +135 -122
  27. data/lib/zaws/command/security_group.rb +95 -82
  28. data/lib/zaws/command/subnet.rb +58 -46
  29. data/lib/zaws/command/sumo.rb +34 -0
  30. data/lib/zaws/command/vpc.rb +53 -0
  31. data/lib/zaws/external/awscli/awscli.rb +65 -0
  32. data/lib/zaws/external/awscli/commands.rb +10 -0
  33. data/lib/zaws/external/awscli/commands/aws.rb +40 -0
  34. data/lib/zaws/external/awscli/commands/ec2.rb +74 -0
  35. data/lib/zaws/external/awscli/commands/ec2/allocate_address.rb +42 -0
  36. data/lib/zaws/external/awscli/commands/ec2/assign_private_ip_addresses.rb +49 -0
  37. data/lib/zaws/external/awscli/commands/ec2/associate_address.rb +48 -0
  38. data/lib/zaws/external/awscli/commands/ec2/associate_route_table.rb +48 -0
  39. data/lib/zaws/external/awscli/commands/ec2/authorize_security_group_ingress.rb +70 -0
  40. data/lib/zaws/external/awscli/commands/ec2/create_route.rb +60 -0
  41. data/lib/zaws/external/awscli/commands/ec2/create_route_table.rb +40 -0
  42. data/lib/zaws/external/awscli/commands/ec2/create_security_group.rb +58 -0
  43. data/lib/zaws/external/awscli/commands/ec2/create_subnet.rb +62 -0
  44. data/lib/zaws/external/awscli/commands/ec2/create_tags.rb +53 -0
  45. data/lib/zaws/external/awscli/commands/ec2/create_vpc.rb +21 -0
  46. data/lib/zaws/external/awscli/commands/ec2/delete_route.rb +54 -0
  47. data/lib/zaws/external/awscli/commands/ec2/delete_route_table.rb +46 -0
  48. data/lib/zaws/external/awscli/commands/ec2/delete_security_group.rb +46 -0
  49. data/lib/zaws/external/awscli/commands/ec2/delete_subnet.rb +46 -0
  50. data/lib/zaws/external/awscli/commands/ec2/describe_addresses.rb +41 -0
  51. data/lib/zaws/external/awscli/commands/ec2/describe_images.rb +58 -0
  52. data/lib/zaws/external/awscli/commands/ec2/describe_instances.rb +56 -0
  53. data/lib/zaws/external/awscli/commands/ec2/describe_route_tables.rb +44 -0
  54. data/lib/zaws/external/awscli/commands/ec2/describe_security_groups.rb +50 -0
  55. data/lib/zaws/external/awscli/commands/ec2/describe_subnets.rb +48 -0
  56. data/lib/zaws/external/awscli/commands/ec2/describe_vpc_peering_connections.rb +23 -0
  57. data/lib/zaws/external/awscli/commands/ec2/describe_vpcs.rb +26 -0
  58. data/lib/zaws/external/awscli/commands/ec2/disable_vgw_route_propagation.rb +48 -0
  59. data/lib/zaws/external/awscli/commands/ec2/disassociate-address.rb +42 -0
  60. data/lib/zaws/external/awscli/commands/ec2/disassociate_route_table.rb +41 -0
  61. data/lib/zaws/external/awscli/commands/ec2/enable_vgw_route_propagation.rb +48 -0
  62. data/lib/zaws/external/awscli/commands/ec2/filter.rb +115 -0
  63. data/lib/zaws/external/awscli/commands/ec2/modify_instance_attribute.rb +62 -0
  64. data/lib/zaws/external/awscli/commands/ec2/network_interfaces.rb +63 -0
  65. data/lib/zaws/external/awscli/commands/ec2/release_address.rb +42 -0
  66. data/lib/zaws/external/awscli/commands/ec2/revoke_security_group_ingress.rb +70 -0
  67. data/lib/zaws/external/awscli/commands/ec2/run_instances.rb +21 -0
  68. data/lib/zaws/external/awscli/commands/ec2/stop_instances.rb +21 -0
  69. data/lib/zaws/external/awscli/commands/ec2/terminate_instances.rb +40 -0
  70. data/lib/zaws/external/awscli/commands/ec2/unassign_private_ip_addresses.rb +49 -0
  71. data/lib/zaws/external/awscli/commands/elb.rb +19 -0
  72. data/lib/zaws/external/awscli/commands/elb/create_load_balancer.rb +64 -0
  73. data/lib/zaws/external/awscli/commands/elb/create_load_balancer_listeners.rb +47 -0
  74. data/lib/zaws/external/awscli/commands/elb/delete_load_balancer.rb +40 -0
  75. data/lib/zaws/external/awscli/commands/elb/delete_load_balancer_listeners.rb +49 -0
  76. data/lib/zaws/external/awscli/commands/elb/deregister_instances_with_load_balancer.rb +49 -0
  77. data/lib/zaws/external/awscli/commands/elb/describe_load_balancers.rb +30 -0
  78. data/lib/zaws/external/awscli/commands/elb/register_instances_with_load_balancer.rb +49 -0
  79. data/lib/zaws/external/awscli/commands/iam.rb +31 -0
  80. data/lib/zaws/external/awscli/commands/iam/GetPolicy.rb +21 -0
  81. data/lib/zaws/external/awscli/commands/iam/GetPolicyVersion.rb +21 -0
  82. data/lib/zaws/external/awscli/commands/iam/GetRolePolicy.rb +21 -0
  83. data/lib/zaws/external/awscli/commands/route53.rb +19 -0
  84. data/lib/zaws/external/awscli/commands/route53/list_hosted_zones.rb +30 -0
  85. data/lib/zaws/external/awscli/commands/route53/list_resource_record_sets.rb +41 -0
  86. data/lib/zaws/external/awscli/commands/s3/ls.rb +34 -0
  87. data/lib/zaws/external/awscli/commands/s3/mb.rb +41 -0
  88. data/lib/zaws/external/awscli/commands/s3/sync.rb +48 -0
  89. data/lib/zaws/external/awscli/credentials.rb +22 -0
  90. data/lib/zaws/external/awscli/data.rb +10 -0
  91. data/lib/zaws/external/awscli/data/ec2.rb +33 -0
  92. data/lib/zaws/external/awscli/data/ec2/instance.rb +162 -0
  93. data/lib/zaws/external/awscli/data/ec2/security_group.rb +51 -0
  94. data/lib/zaws/external/awscli/data/ec2/subnet.rb +59 -0
  95. data/lib/zaws/external/awscli/data/ec2/vpc.rb +85 -0
  96. data/lib/zaws/external/awscli/data/iam.rb +34 -0
  97. data/lib/zaws/external/awscli/data/iam/policy.rb +42 -0
  98. data/lib/zaws/external/awscli/data/iam/policy_document.rb +52 -0
  99. data/lib/zaws/external/awscli/data/iam/policy_version.rb +42 -0
  100. data/lib/zaws/external/awscli/data/iam/role_policy.rb +52 -0
  101. data/lib/zaws/external/awscli/generators/result/ec2/addresses.rb +70 -0
  102. data/lib/zaws/external/awscli/generators/result/ec2/allocation_id.rb +39 -0
  103. data/lib/zaws/external/awscli/generators/result/ec2/association_id.rb +29 -0
  104. data/lib/zaws/external/awscli/generators/result/ec2/images.rb +46 -0
  105. data/lib/zaws/external/awscli/generators/result/ec2/instances.rb +57 -0
  106. data/lib/zaws/external/awscli/generators/result/ec2/ip_permissions.rb +70 -0
  107. data/lib/zaws/external/awscli/generators/result/ec2/network_interfaces.rb +53 -0
  108. data/lib/zaws/external/awscli/generators/result/ec2/private_ip_addresses.rb +41 -0
  109. data/lib/zaws/external/awscli/generators/result/ec2/route_tables.rb +80 -0
  110. data/lib/zaws/external/awscli/generators/result/ec2/routes.rb +58 -0
  111. data/lib/zaws/external/awscli/generators/result/ec2/security_groups.rb +73 -0
  112. data/lib/zaws/external/awscli/generators/result/ec2/subnets.rb +88 -0
  113. data/lib/zaws/external/awscli/generators/result/ec2/tags.rb +34 -0
  114. data/lib/zaws/external/awscli/generators/result/ec2/virtual_gateway.rb +32 -0
  115. data/lib/zaws/external/awscli/generators/result/elb/listeners.rb +65 -0
  116. data/lib/zaws/external/awscli/generators/result/elb/load_balancers.rb +61 -0
  117. data/lib/zaws/external/awscli/generators/result/route53/hosted_zones.rb +52 -0
  118. data/lib/zaws/external/awscli/regions.rb +13 -0
  119. data/lib/zaws/external/nessusapi/data/agents.rb +36 -0
  120. data/lib/zaws/external/nessusapi/data/scanners.rb +35 -0
  121. data/lib/zaws/external/nessusapi/nessusapi.rb +57 -0
  122. data/lib/zaws/external/nessusapi/reources.rb +10 -0
  123. data/lib/zaws/external/nessusapi/resources/agents.rb +18 -0
  124. data/lib/zaws/external/nessusapi/resources/agents/list.rb +20 -0
  125. data/lib/zaws/external/nessusapi/resources/scanners.rb +18 -0
  126. data/lib/zaws/external/nessusapi/resources/scanners/list.rb +20 -0
  127. data/lib/zaws/external/newrelicapi/data/servers.rb +36 -0
  128. data/lib/zaws/external/newrelicapi/newrelic_client.rb +64 -0
  129. data/lib/zaws/external/newrelicapi/newrelic_creds.rb +60 -0
  130. data/lib/zaws/external/newrelicapi/newrelicapi.rb +46 -0
  131. data/lib/zaws/external/newrelicapi/resources/servers.rb +18 -0
  132. data/lib/zaws/external/newrelicapi/resources/servers/list.rb +20 -0
  133. data/lib/zaws/external/sumoapi/data/collectors.rb +35 -0
  134. data/lib/zaws/external/sumoapi/data/sources.rb +35 -0
  135. data/lib/zaws/external/sumoapi/resources/collectors.rb +18 -0
  136. data/lib/zaws/external/sumoapi/resources/collectors/list.rb +20 -0
  137. data/lib/zaws/external/sumoapi/resources/sources.rb +18 -0
  138. data/lib/zaws/external/sumoapi/resources/sources/list.rb +20 -0
  139. data/lib/zaws/external/sumoapi/sumo_client.rb +63 -0
  140. data/lib/zaws/external/sumoapi/sumo_creds.rb +67 -0
  141. data/lib/zaws/external/sumoapi/sumoapi.rb +56 -0
  142. data/lib/zaws/helper/data_lattice.rb +22 -0
  143. data/lib/zaws/helper/filestore.rb +48 -0
  144. data/lib/zaws/helper/filter.rb +15 -0
  145. data/lib/zaws/helper/inifile.rb +632 -0
  146. data/lib/zaws/helper/nessus_client.rb +143 -0
  147. data/lib/zaws/helper/nessus_creds.rb +67 -0
  148. data/lib/zaws/helper/option.rb +14 -15
  149. data/lib/zaws/helper/output.rb +81 -29
  150. data/lib/zaws/helper/process_hash.rb +47 -0
  151. data/lib/zaws/helper/shell.rb +0 -0
  152. data/lib/zaws/helper/verbose.rb +15 -0
  153. data/lib/zaws/helper/zfile.rb +8 -8
  154. data/lib/zaws/services/ai.rb +35 -0
  155. data/lib/zaws/services/ai/query.rb +135 -0
  156. data/lib/zaws/services/aws.rb +41 -0
  157. data/lib/zaws/services/chef.rb +0 -0
  158. data/lib/zaws/services/cloud_trail.rb +76 -0
  159. data/lib/zaws/services/config.rb +31 -0
  160. data/lib/zaws/services/ec2.rb +47 -0
  161. data/lib/zaws/services/ec2/compute.rb +352 -0
  162. data/lib/zaws/services/ec2/elasticip.rb +82 -0
  163. data/lib/zaws/services/ec2/route_table.rb +210 -0
  164. data/lib/zaws/services/ec2/security_group.rb +186 -0
  165. data/lib/zaws/services/ec2/subnet.rb +111 -0
  166. data/lib/zaws/services/ec2/vpc.rb +69 -0
  167. data/lib/zaws/{elb.rb → services/elb.rb} +3 -2
  168. data/lib/zaws/services/elb/load_balancer.rb +160 -0
  169. data/lib/zaws/services/iam.rb +25 -0
  170. data/lib/zaws/services/iam/policy.rb +25 -0
  171. data/lib/zaws/services/iam/role.rb +23 -0
  172. data/lib/zaws/services/nessus.rb +24 -0
  173. data/lib/zaws/services/nessus/agents.rb +19 -0
  174. data/lib/zaws/services/nessus/scanners.rb +19 -0
  175. data/lib/zaws/services/newrelic.rb +21 -0
  176. data/lib/zaws/services/newrelic/servers.rb +19 -0
  177. data/lib/zaws/{route53.rb → services/route53.rb} +1 -1
  178. data/lib/zaws/services/route53/hosted_zone.rb +36 -0
  179. data/lib/zaws/services/s3.rb +15 -0
  180. data/lib/zaws/services/s3/bucket.rb +42 -0
  181. data/lib/zaws/services/sumo.rb +21 -0
  182. data/lib/zaws/services/sumo/collectors.rb +19 -0
  183. data/lib/zaws/services/vmware.rb +0 -0
  184. data/lib/zaws/version.rb +1 -1
  185. data/shove_all.sh +6 -0
  186. data/shove_all_mac.sh +6 -0
  187. data/shove_all_windows.sh +6 -0
  188. data/spec/spec_helper.rb +0 -0
  189. data/spec/zaws/command/ec2/compute/assoc_security_group_spec.rb +135 -0
  190. data/spec/zaws/command/ec2/compute/compute_spec.rb +321 -0
  191. data/spec/zaws/command/ec2/compute/images_spec.rb +69 -0
  192. data/spec/zaws/command/ec2/compute/management_spec.rb +364 -0
  193. data/spec/zaws/command/ec2/compute/network_spec.rb +93 -0
  194. data/spec/zaws/command/ec2/compute/node_spec.rb +70 -0
  195. data/spec/zaws/command/ec2/compute/secondary_ip_spec.rb +212 -0
  196. data/spec/zaws/command/ec2/compute/storage_spec.rb +63 -0
  197. data/spec/zaws/command/ec2/elasticip_spec.rb +271 -0
  198. data/spec/zaws/command/ec2/route_table_spec.rb +844 -0
  199. data/spec/zaws/command/ec2/security_group_spec.rb +710 -0
  200. data/spec/zaws/command/ec2/subnet_spec.rb +273 -0
  201. data/spec/zaws/command/ec2/vpc_spec.rb +180 -0
  202. data/spec/zaws/command/elb/load_balancer_spec.rb +633 -0
  203. data/spec/zaws/command/iam/policy_spec.rb +101 -0
  204. data/spec/zaws/command/iam/role_policy_spec.rb +35 -0
  205. data/spec/zaws/command/route53/hosted_zone_spec.rb +100 -0
  206. data/spec/zaws/command/s3/bucket_spec.rb +70 -0
  207. data/spec/zaws/external/awscli/data/ec2/instance_spec.rb +90 -0
  208. data/spec/zaws/external/awscli/data/iam/policy_document_spec.rb +56 -0
  209. data/spec/zaws/external/awscli/data/iam/role_policy_spec.rb +54 -0
  210. data/spec/zaws/external/awscli/get_aws_version_spec.rb +18 -0
  211. data/spec/zaws/helper/option_spec.rb +54 -0
  212. data/spec/zaws/helper/output_spec.rb +144 -0
  213. data/spec/zaws/helper/process_hash_spec.rb +48 -0
  214. data/spec/zaws/helper/shell_spec.rb +56 -0
  215. data/spec/zaws/nessus/scanners.json +0 -0
  216. data/spec/zaws/version_spec.rb +18 -0
  217. data/zaws.gemspec +1 -3
  218. metadata +260 -189
  219. data/feature/compute/assoc_security_group.feature +0 -55
  220. data/feature/compute/compute.feature +0 -138
  221. data/feature/compute/secondary_ip.feature +0 -107
  222. data/feature/compute/view.feature +0 -23
  223. data/feature/compute/view_images.feature +0 -24
  224. data/feature/elasticip/elasticip.feature +0 -138
  225. data/feature/elasticip/view.feature +0 -18
  226. data/feature/hosted_zone/view.feature +0 -17
  227. data/feature/hosted_zone/view_record.feature +0 -29
  228. data/feature/load_balancer/instance_registration.feature +0 -120
  229. data/feature/load_balancer/listener.feature +0 -86
  230. data/feature/load_balancer/load_balancer.feature +0 -101
  231. data/feature/load_balancer/view.feature +0 -18
  232. data/feature/route_table/assoc_subnet.feature +0 -128
  233. data/feature/route_table/route_propagation.feature +0 -93
  234. data/feature/route_table/route_table.feature +0 -91
  235. data/feature/route_table/route_to_gateway.feature +0 -69
  236. data/feature/route_table/route_to_instance.feature +0 -115
  237. data/feature/route_table/view.feature +0 -25
  238. data/feature/security_group/ingress_cidr.feature +0 -144
  239. data/feature/security_group/ingress_group.feature +0 -184
  240. data/feature/security_group/security_group.feature +0 -107
  241. data/feature/security_group/view.feature +0 -23
  242. data/feature/subnet/subnet.feature +0 -94
  243. data/feature/subnet/view.feature +0 -24
  244. data/feature/support/env.rb +0 -14
  245. data/feature/version.feature +0 -6
  246. data/lib/zaws/aws.rb +0 -26
  247. data/lib/zaws/ec2.rb +0 -40
  248. data/lib/zaws/ec2/compute.rb +0 -247
  249. data/lib/zaws/ec2/elasticip.rb +0 -79
  250. data/lib/zaws/ec2/route_table.rb +0 -207
  251. data/lib/zaws/ec2/security_group.rb +0 -154
  252. data/lib/zaws/ec2/subnet.rb +0 -109
  253. data/lib/zaws/elb/load_balancer.rb +0 -157
  254. data/lib/zaws/route53/hosted_zone.rb +0 -36
  255. data/spec/zaws/ec2/compute/add_volume_spec.rb +0 -39
  256. data/spec/zaws/ec2/compute/block_device_mapping_spec.rb +0 -31
  257. data/spec/zaws/ec2/compute/instance_id_by_external_id_spec.rb +0 -23
  258. data/spec/zaws/ec2/compute/instance_ping_spec.rb +0 -34
  259. data/spec/zaws/ec2/compute/instance_running_spec.rb +0 -47
  260. data/spec/zaws/ec2/compute/network_interface_json_spec.rb +0 -57
  261. data/spec/zaws/ec2/compute/nosdcheck_spec.rb +0 -17
  262. data/spec/zaws/ec2/compute/tag_instance_spec.rb +0 -21
  263. data/spec/zaws/ec2/security_group/id_by_name_spec.rb +0 -32
  264. data/spec/zaws/ec2/subnet/available_spec.rb +0 -22
  265. data/spec/zaws/ec2/subnet/declare_spec.rb +0 -31
  266. data/spec/zaws/ec2/subnet/exists_spec.rb +0 -33
  267. data/spec/zaws/ec2/subnet/id_array_by_cidrblock_array_spec.rb +0 -48
  268. data/spec/zaws/ec2/subnet/id_by_cidrblock_spec.rb +0 -35
  269. data/spec/zaws/ec2/subnet/id_by_ip_spec.rb +0 -42
  270. data/spec/zaws/ec2/subnet/view_spec.rb +0 -34
  271. data/spec/zaws/elb/load_balancer/calculated_listener_spec.rb +0 -18
  272. data/spec/zaws/helper/option/absent_spec.rb +0 -14
  273. data/spec/zaws/helper/option/exclusive_spec.rb +0 -14
  274. data/spec/zaws/helper/option/exists_spec.rb +0 -18
  275. data/spec/zaws/helper/option/minimum_spec.rb +0 -14
  276. data/spec/zaws/helper/output/binary_nagios_check_spec.rb +0 -19
  277. data/spec/zaws/helper/output/colorize_spec.rb +0 -30
  278. data/spec/zaws/helper/output/opt_exclusive_spec.rb +0 -14
  279. data/spec/zaws/helper/output/opt_minimum_spec.rb +0 -15
  280. data/spec/zaws/helper/output/opt_required_spec.rb +0 -12
  281. data/spec/zaws/helper/shell/cli_spec.rb +0 -33
  282. data/spec/zaws/helper/shell/if_then_spec.rb +0 -24
@@ -1,35 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::EC2 do
4
-
5
- it "subnet id by cidr block" do
6
-
7
- # example output for: aws ec2 escribe-subnets
8
- subnets = <<-eos
9
- { "Subnets": [
10
-
11
- {
12
- "VpcId": "vpc-XXXXXX",
13
- "CidrBlock": "10.0.0.0/24",
14
- "MapPublicIpOnLaunch": false,
15
- "DefaultForAz": false,
16
- "State": "available",
17
- "SubnetId": "subnet-YYYYYY",
18
- "AvailableIpAddressCount": 251
19
- }
20
- ]
21
- }
22
- eos
23
-
24
- textout=double('outout')
25
- shellout=double('ZAWS::Helper::Shell')
26
- expect(shellout).to receive(:cli).with("aws --output json --region us-west-1 ec2 describe-subnets --filter 'Name=vpc-id,Values=vpc-XXXXXX' 'Name=cidr,Values=10.0.0.0/24'",nil).and_return(subnets)
27
- expect(textout).to receive(:puts).with('subnet-YYYYYY')
28
- aws=ZAWS::AWS.new(shellout)
29
- aws.ec2.subnet.id_by_cidrblock('us-west-1',textout,nil,'vpc-XXXXXX','10.0.0.0/24')
30
-
31
- end
32
-
33
- end
34
-
35
-
@@ -1,42 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::EC2 do
4
-
5
- it "get subnet id by ip" do
6
-
7
- # example output for: aws ec2 escribe-subnets
8
- subnets = <<-eos
9
- { "Subnets": [
10
- {
11
- "VpcId": "vpc-XXXXXX",
12
- "CidrBlock": "10.0.1.0/24",
13
- "MapPublicIpOnLaunch": false,
14
- "DefaultForAz": false,
15
- "State": "available",
16
- "SubnetId": "subnet-XXXXXX",
17
- "AvailableIpAddressCount": 251
18
- },
19
- {
20
- "VpcId": "vpc-XXXXXX",
21
- "CidrBlock": "10.0.0.0/24",
22
- "MapPublicIpOnLaunch": false,
23
- "DefaultForAz": false,
24
- "State": "available",
25
- "SubnetId": "subnet-YYYYYY",
26
- "AvailableIpAddressCount": 251
27
- }
28
- ]
29
- }
30
- eos
31
-
32
- textout=double('outout')
33
- shellout=double('ZAWS::Helper::Shell')
34
- expect(shellout).to receive(:cli).with("aws --output json --region us-west-1 ec2 describe-subnets --filter 'Name=vpc-id,Values=vpc-XXXXXX'",nil).and_return(subnets)
35
- expect(textout).to receive(:puts).with('subnet-YYYYYY')
36
- aws=ZAWS::AWS.new(shellout)
37
- aws.ec2.subnet.id_by_ip('us-west-1',textout,nil,'vpc-XXXXXX','10.0.0.24')
38
- end
39
-
40
- end
41
-
42
-
@@ -1,34 +0,0 @@
1
-
2
- require 'spec_helper'
3
-
4
- describe ZAWS::EC2 do
5
-
6
- it "view subnets, table view" do
7
- textout=double('outout')
8
- shellout=double('ZAWS::Helper::Shell')
9
- expect(shellout).to receive(:cli).with("aws --output table --region us-west-1 ec2 describe-subnets",nil).ordered.and_return('test output')
10
- expect(textout).to receive(:puts).with('test output').ordered
11
- aws=ZAWS::AWS.new(shellout)
12
- aws.ec2.subnet.view('us-west-1','table',textout)
13
- end
14
-
15
- it "view subnets, json view" do
16
- textout=double('outout')
17
- shellout=double('ZAWS::Helper::Shell')
18
- expect(shellout).to receive(:cli).with("aws --output json --region us-west-1 ec2 describe-subnets",nil).ordered.and_return('test output')
19
- expect(textout).to receive(:puts).with('test output').ordered
20
- aws=ZAWS::AWS.new(shellout)
21
- aws.ec2.subnet.view('us-west-1','json',textout)
22
- end
23
-
24
- it "view subnets with verbose" do
25
- textout=double('outout')
26
- shellout=double('ZAWS::Helper::Shell')
27
- expect(shellout).to receive(:cli).with("aws --output table --region us-west-1 ec2 describe-subnets",textout).ordered.and_return('test output')
28
- expect(textout).to receive(:puts).with('test output').ordered
29
- aws=ZAWS::AWS.new(shellout)
30
- aws.ec2.subnet.view('us-west-1','table',textout,textout)
31
- end
32
-
33
-
34
- end
@@ -1,18 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::ELBServices::LoadBalancer do
4
-
5
- it "Creates a JSON object with a listner definition" do
6
-
7
- # example output for: aws ec2 escribe-subnets
8
- json_expectation = "[{\"Protocol\":\"tcp\",\"LoadBalancerPort\":80,\"InstanceProtocol\":\"tcp\",\"InstancePort\":80}]"
9
-
10
- shellout=double('ZAWS::Helper::Shell')
11
- aws=ZAWS::AWS.new(shellout)
12
- expect(aws.elb.load_balancer.calculated_listener("tcp","80","tcp","80")).to eql(json_expectation)
13
-
14
- end
15
-
16
- end
17
-
18
-
@@ -1,14 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Option do
4
-
5
- it "absent options" do
6
- ZAWS::Helper::Option.absent([:option1,:option2],{:option1=>'option1'}).should =~ [:option2]
7
- end
8
-
9
- it "no absent options" do
10
- ZAWS::Helper::Option.absent([:option1,:option2],{:option1=>'option1',:option2=>'option2'}).should =~ []
11
- end
12
-
13
- end
14
-
@@ -1,14 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Option do
4
-
5
- it "options not exclusive" do
6
- ZAWS::Helper::Option.exclusive?([:option1,:option2],{:option1=>'option1',:option2=>'option2'}).should be_false
7
- end
8
-
9
- it "option is exclusive" do
10
- ZAWS::Helper::Option.exclusive?([:option1,:option2],{:option1=>'option1'}).should be_true
11
- end
12
-
13
- end
14
-
@@ -1,18 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Option do
4
-
5
- it "option exist" do
6
- ZAWS::Helper::Option.exists?([:option1],{:option1=>'option1'}).should be_true
7
- end
8
-
9
- it "all options do not exist" do
10
- ZAWS::Helper::Option.exists?([:option1,:option2],{:option1=>'option1'}).should be_false
11
- end
12
-
13
- it "all options exist" do
14
- ZAWS::Helper::Option.exists?([:option1,:option2],{:option1=>'option1',:option2=>'option2'}).should be_true
15
- end
16
-
17
- end
18
-
@@ -1,14 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Option do
4
-
5
- it "minimum of 1 option specified" do
6
- ZAWS::Helper::Option.minimum?(1,[:option1,:option2],{:option1=>'option1'}).should be_true
7
- end
8
-
9
- it "minimum of 2 options not specified" do
10
- ZAWS::Helper::Option.minimum?(2,[:option1,:option2],{:option1=>'option1'}).should be_false
11
- end
12
-
13
- end
14
-
@@ -1,19 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Output do
4
-
5
- it "does a binary nagios check and reports critical,exit 2 if condition is false" do
6
- output = double ('output')
7
- output.should_receive(:puts).with("critical")
8
- expect(ZAWS::Helper::Output.binary_nagios_check(false,"ok","critical",output)).to eq(2)
9
- end
10
-
11
- it "does a binary nagios check and reports ok,exit 0 if condition is true" do
12
- output = double ('output')
13
- output.should_receive(:puts).with("ok")
14
- expect(ZAWS::Helper::Output.binary_nagios_check(true,"ok","critical",output)).to eq(0)
15
- end
16
-
17
-
18
- end
19
-
@@ -1,30 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Output do
4
-
5
- it "colorize text red" do
6
- ZAWS::Helper::Output.colorize("text",AWS_consts::COLOR_RED).should eql("\e[31mtext\e[0m")
7
- end
8
-
9
- it "colorize text yellow" do
10
- ZAWS::Helper::Output.colorize("text",AWS_consts::COLOR_YELLOW).should eql("\e[33mtext\e[0m")
11
- end
12
-
13
- it "colorize text green" do
14
- ZAWS::Helper::Output.colorize("text",AWS_consts::COLOR_GREEN).should eql("\e[32mtext\e[0m")
15
- end
16
-
17
- it "colorize text blue" do
18
- ZAWS::Helper::Output.colorize("text",AWS_consts::COLOR_BLUE).should eql("\e[34mtext\e[0m")
19
- end
20
-
21
- it "colorize text cyan" do
22
- ZAWS::Helper::Output.colorize("text",AWS_consts::COLOR_CYAN).should eql("\e[36mtext\e[0m")
23
- end
24
-
25
- it "colorize text default" do
26
- ZAWS::Helper::Output.colorize("text",AWS_consts::COLOR_DEFAULT).should eql("\e[39mtext\e[0m")
27
- end
28
-
29
- end
30
-
@@ -1,14 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Output do
4
-
5
- it "output exclusive options" do
6
- output = double ('output')
7
- output.should_receive(:puts).with(" These options cannot be combined:").ordered
8
- output.should_receive(:puts).with(" --option1").ordered
9
- output.should_receive(:puts).with(" --option2").ordered
10
- ZAWS::Helper::Output.opt_exclusive(output,[:option1,:option2])
11
- end
12
-
13
- end
14
-
@@ -1,15 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Output do
4
-
5
- it "output minimum 1 options" do
6
- output = double ('output')
7
- output.should_receive(:puts).with(" At mininum, 1 of the following is required:").ordered
8
- output.should_receive(:puts).with(" --option1").ordered
9
- output.should_receive(:puts).with(" --option2").ordered
10
- ZAWS::Helper::Output.opt_minimum(output,1,[:option1,:option2])
11
- end
12
-
13
-
14
- end
15
-
@@ -1,12 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Output do
4
-
5
- it "output required options" do
6
- output = double ('output')
7
- output.should_receive(:puts).with(' --option1 required!')
8
- ZAWS::Helper::Output.opt_required(output,[:option1])
9
- end
10
-
11
- end
12
-
@@ -1,33 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Shell do
4
-
5
- it "echo 'text' should return text" do
6
- shell=ZAWS::Helper::Shell.new
7
- expect(shell.cli("echo 'text'")).to eq("text\n")
8
- end
9
-
10
- it "ls_no_such_command should raise an error" do
11
- shell=ZAWS::Helper::Shell.new
12
- expect {shell.cli("ls_no_such_command")}.to raise_error(Errno::ENOENT)
13
- end
14
-
15
- it "grep exit code of 1 should raise an error" do
16
- shell=ZAWS::Helper::Shell.new
17
- expect {shell.cli("echo 'lookup' | grep 'lookout'")}.to raise_error(Mixlib::ShellOut::ShellCommandFailed)
18
- end
19
-
20
- it "grep exit code of 1 should raise an error" do
21
- shell=ZAWS::Helper::Shell.new
22
- expect {shell.cli("echo 'lookup' | grep 'lookout'")}.to raise_error(Mixlib::ShellOut::ShellCommandFailed)
23
- end
24
-
25
- it "should put colorize text to output" do
26
- shell=ZAWS::Helper::Shell.new
27
- output = double ('output')
28
- output.should_receive(:puts).with("\e[34mecho 'text'\e[0m")
29
- expect(shell.cli("echo 'text'",output)).to eq("text\n")
30
- end
31
-
32
- end
33
-
@@ -1,24 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe ZAWS::Helper::Shell do
4
-
5
- it "what if true should echo 'text' should return text" do
6
- shell=ZAWS::Helper::Shell.new
7
- expect(shell.if_then(true,"echo 'text'")).to eq("text\n")
8
- end
9
-
10
- it "what if false should return nil" do
11
- shell=ZAWS::Helper::Shell.new
12
- expect(shell.if_then(false,"echo 'text'")).to be_nil
13
- end
14
-
15
-
16
- it "what if false should return nil and output command" do
17
- shell=ZAWS::Helper::Shell.new
18
- output = double ('output')
19
- output.should_receive(:puts).with("\e[34mecho 'text'\e[0m")
20
- expect(shell.if_then(false,"echo 'text'",output)).to be_nil
21
- end
22
-
23
- end
24
-