piculet 0.2.7.beta → 0.2.7.beta2

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: 7d9cafe5310dd7b6df5016c66c85dfc47f9a04c1
4
- data.tar.gz: a261ba1ff4378fdf62dd876b90f57c71a0d56689
3
+ metadata.gz: a5a4e5ad26753b856259c29f44e1ced9e75080d6
4
+ data.tar.gz: 7a1ff3d5d9ed4247cf9bd1369158bc0a08b2b9ac
5
5
  SHA512:
6
- metadata.gz: f1f778f163c7d3da3b924d9f9e313ca925b27d3967bd39549f2e405518067ea8681f43ef3cf3440f7ef1bfeeece5d1c8cb1c76d7276d22140d13ccbd4de0da19
7
- data.tar.gz: 44f11549930395ba2ab2b28bbd035be43c1589b45ccf7b4369129ec96202cf555bcdd692b8e0f4b8581551fbd342b962f9661bea0975a3f0d899141f18807676
6
+ metadata.gz: bcb9e76e91f953a88ce90affac4ef8125d55bf283b45b18cce4398606340f950f2f99a4a5a3a87f34554f793caa6b9ce004d2be325e2c1f7eb65b70e8cb9328b
7
+ data.tar.gz: 39848264defc328aec427350d2031cb75d7e7f669b53184adbbdb5c69c2d6f17fe3da06dc309fa1bc76e5298d3beb726247fbfda14abb9681929fc7c2298f314
data/README.md CHANGED
@@ -167,3 +167,6 @@ ec2 "vpc-XXXXXXXX" do
167
167
  end
168
168
  end
169
169
  ```
170
+
171
+ ## Similar tools
172
+ * [Codenize.tools](http://codenize.tools/)
@@ -3,6 +3,8 @@ module Piculet
3
3
  class EC2
4
4
  class SecurityGroup
5
5
  class Permissions
6
+ include Logger::ClientHelper
7
+
6
8
  def initialize(security_group, direction, &block)
7
9
  @security_group = security_group
8
10
  @direction = direction
@@ -30,12 +32,19 @@ module Piculet
30
32
  end
31
33
 
32
34
  key = [protocol, port_range]
35
+ res = Permission.new(@security_group, @direction, key, &block).result
33
36
 
34
37
  if @result.has_key?(key)
35
- raise "SecurityGroup `#{@security_group}`: #{@direction}: #{key} is already defined"
36
- end
38
+ @result[key] = OpenStruct.new(@result[key].marshal_dump.merge(res.marshal_dump) {|hash_key, old_val, new_val|
39
+ if (duplicated = old_val & new_val).any?
40
+ log(:warn, "SecurityGroup `#{@security_group}`: #{@direction}: #{key}: #{hash_key}: #{duplicated} are duplicated", :yellow)
41
+ end
37
42
 
38
- @result[key] = Permission.new(@security_group, @direction, key, &block).result
43
+ old_val | new_val
44
+ })
45
+ else
46
+ @result[key] = res
47
+ end
39
48
  end
40
49
  end # Permissions
41
50
  end # SecurityGroup
@@ -1,3 +1,3 @@
1
1
  module Piculet
2
- VERSION = "0.2.7.beta"
2
+ VERSION = "0.2.7.beta2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: piculet
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7.beta
4
+ version: 0.2.7.beta2
5
5
  platform: ruby
6
6
  authors:
7
7
  - winebarrel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-12-22 00:00:00.000000000 Z
11
+ date: 2015-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk
@@ -131,7 +131,7 @@ files:
131
131
  - lib/piculet/wrapper/security-group-collection.rb
132
132
  - lib/piculet/wrapper/security-group.rb
133
133
  - lib/piculet.rb
134
- homepage: https://github.com/winebarrel/piculet
134
+ homepage: http://piculet.codenize.tools/
135
135
  licenses:
136
136
  - MIT
137
137
  metadata: {}