awssh 0.2.5 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 5bc5aa5b09ca6745986bc0179e4838b5b9f472b9
4
- data.tar.gz: 42106ce073453191487fc13421dbb938720512fc
3
+ metadata.gz: b721718bef949156d98ecbc27718d89e54ed5062
4
+ data.tar.gz: b172e413246a458f6f39cb45ea3cae0d2c1d9276
5
5
  SHA512:
6
- metadata.gz: c73f7d73551c51ea64445c02139030091fcec46b2623370534f4fd3cc10f946db20df10e3772d644519dc83dfaec423c09619be6becd51db24205f8f374f33f5
7
- data.tar.gz: b9330ee423e263a465cf35e9760b732939c60949c2537b6ac22f3333f716df2721f27df474905bad8b6b1a333660ebb43c9379a34f3c3fb26325a052f48a1d99
6
+ metadata.gz: 3a4f48b1d3d5a741595263c810ad7afba86bb63528a264319c2e84fa719eb2f3973be0d2bad33c1adedd9ffb604653cdd32e34e355094317e3f5a62b614238c0
7
+ data.tar.gz: ca16f4960dd7b2fbfd2224633608b459f88ba23e0c1fc91b691f092326522b7533fdb628c4978fcfd1294fa440837fc3e5859ba70937a4a2ab4c5f09e9e0a272
data/awssh.gemspec CHANGED
@@ -18,7 +18,8 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency 'fog', '~> 1.30.0'
21
+ # spec.add_dependency 'fog', '~> 1.30.0'
22
+ spec.add_dependency 'aws-sdk', '~> 2.1.31'
22
23
  spec.add_dependency 'dotenv', '~> 2.0.1'
23
24
  spec.add_dependency 'activesupport'
24
25
 
data/bin/awssh CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require 'fog'
3
+ require 'aws-sdk'
4
4
  require 'optparse'
5
5
  require 'active_support/all'
6
6
  require 'awssh'
data/lib/awssh/cloud.rb CHANGED
@@ -4,6 +4,7 @@ module Awssh
4
4
  def connect(key, secret, region)
5
5
  @instance = new(key, secret, region)
6
6
  end
7
+
7
8
  def instance
8
9
  raise "not connected?" unless @instance
9
10
  @instance
@@ -14,21 +15,28 @@ module Awssh
14
15
  @key = key
15
16
  @secret = secret
16
17
  @region = region
17
- @fog = Fog::Compute.new(provider: 'AWS', aws_access_key_id: @key, aws_secret_access_key: @secret, region: @region)
18
18
  end
19
19
 
20
20
  def servers
21
21
  puts "requesting servers..."
22
- list = @fog.servers.all({'instance-state-name' => 'running'})
23
- list.inject([]) do |a, e|
22
+ Aws.config.update({region: @region, credentials: Aws::Credentials.new(@key, @secret)})
23
+ aws = Aws::EC2::Resource.new
24
+ aws.instances(filters:[{name: 'instance-state-name', values: ['running']}]).inject([]) do |a, instance|
25
+ tags = tags(instance)
24
26
  a << {
25
- id: e.id,
26
- name: e.tags['Name']||e.id,
27
- tags: e.tags.inject({}) {|h, e| (k,v) = e; h[k.downcase] = (v ? v.downcase : ""); h},
28
- private: e.private_ip_address,
29
- public: e.public_ip_address,
27
+ id: instance.id,
28
+ name: tags['Name'] || instance.id,
29
+ tags: tags,
30
+ private: instance.private_ip_address,
31
+ public: instance.public_ip_address,
30
32
  }
31
33
  end
32
34
  end
35
+
36
+ private
37
+
38
+ def tags(instance)
39
+ instance.tags.inject({}) {|h, e| h[e.key.downcase]=e.value.downcase; h}
40
+ end
33
41
  end
34
42
  end
data/lib/awssh/config.rb CHANGED
@@ -1,4 +1,5 @@
1
1
  require 'ostruct'
2
+ require 'yaml'
2
3
 
3
4
  module Awssh
4
5
  class Config
data/lib/awssh/version.rb CHANGED
@@ -1,8 +1,8 @@
1
1
  module Awssh
2
2
  module Version
3
3
  MAJOR = 0
4
- MINOR = 2
5
- TINY = 5
4
+ MINOR = 3
5
+ TINY = 0
6
6
  TAG = nil
7
7
  LIST = [MAJOR, MINOR, TINY, TAG].compact
8
8
  STRING = LIST.join('.')
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awssh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.5
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shawn Catanzarite
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-22 00:00:00.000000000 Z
11
+ date: 2015-10-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: fog
14
+ name: aws-sdk
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 1.30.0
19
+ version: 2.1.31
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 1.30.0
26
+ version: 2.1.31
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: dotenv
29
29
  requirement: !ruby/object:Gem::Requirement