awsm 0.1.0 → 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: eebcaae0b291828f84a17fb57d59282e318fecd7
4
- data.tar.gz: 450021bfc6e2ab511f174cc2909bd01c713a8e3f
3
+ metadata.gz: 6c0760aac1a04a84ba085735e844a06e4c4db720
4
+ data.tar.gz: eb50f1aa317fb91d43c05e200c30ddab17fafac1
5
5
  SHA512:
6
- metadata.gz: a19ee21ce8f9743b6793425016dfb19377c89aea81ab15ac8931983423638e4238d3a33f203030b40a648168e8450258fd643cd800bf66d62d852b3b35203fb1
7
- data.tar.gz: 55b976091a7193935e979b52d3fd89cf8ac269d7a254b39b04f89e07dc9f5a9b9f658440cc16c8f04bcc086814441a8d7440a59ba49b706ab9d86d07be165ba5
6
+ metadata.gz: ceddb99e184494e1e2313ec41d6a1c69315a2c4d4e2cbfc19853015d057a6c3578667ca445857ace30f93bfe3e98cdd68bc84d336a47c4d0ead4fb69a03391b7
7
+ data.tar.gz: 3276c0051091ed83dde7b27b3fea69fd29981f5d1e24c30a1846de20ace567f09ccefd3032028d0ccbae0ca004200ef95e928861fc2c8ab4d29f6afddb9e0829
@@ -15,28 +15,47 @@ module Awsm
15
15
  c.image_id( preset )
16
16
  else
17
17
  c = Awsm::spin_config( preset )
18
+ end
18
19
 
19
- unless options[:image_id].nil?
20
- unless c.image_id.nil?
21
- override_alert( 'image_id', c.image_id, options[:image_id] )
22
- end
23
- c.image_id( options[:image_id] )
20
+ unless options[:image_id].nil?
21
+ unless c.image_id.nil?
22
+ override_alert( 'image_id', c.image_id, options[:image_id] )
24
23
  end
24
+ c.image_id( options[:image_id] )
25
+ end
25
26
 
26
- unless options[:key_name].nil?
27
- unless c.key_name.nil?
28
- override_alert( 'key_name', c.key_name, options[:key_name] )
29
- end
30
- c.key_name( options[:key_name] )
27
+ unless options[:key_name].nil?
28
+ unless c.key_name.nil?
29
+ override_alert( 'key_name', c.key_name, options[:key_name] )
31
30
  end
32
-
33
- spin_up( c )
31
+ c.key_name( options[:key_name] )
34
32
  end
33
+
34
+ spin_up( c )
35
35
  end
36
36
 
37
37
  desc 'down [INSTANCE_ID]',
38
38
  "Spin down the specified instance"
39
39
  def down( instance_id )
40
+ response = ec2.describe_instances(
41
+ instance_ids: [ instance_id ]
42
+ )
43
+
44
+ if response.reservations.first.instances.length == 0
45
+ say "Instance #{instance_id} not found."
46
+ return
47
+ end
48
+
49
+ instance = response.reservations.first.instances.first
50
+ owner_tag = instance.tags.select do |t|
51
+ t.key == 'awsm:owner' && t.value == whoami
52
+ end
53
+
54
+ if owner_tag.length == 0
55
+ say "Instance #{instance_id} doesn't belong to you, leave it alone."
56
+ return
57
+ end
58
+
40
59
  say "Spinning down (terminating) #{instance_id}...", :red
41
60
  ec2.terminate_instances(
42
61
  instance_ids: [ instance_id ]
@@ -1,3 +1,3 @@
1
1
  module Awsm
2
- VERSION = "0.1.0"
2
+ VERSION = "0.1.1"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: awsm
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Kendell