pec 0.8.4 → 0.8.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 7d767f21c81f292ff209756c5a8ab2d88d6a9ecf
4
- data.tar.gz: 2429a9b982c55c316cbdf557f4ce7783b5170e81
3
+ metadata.gz: e07e20b2c663e93a726c1a2d013606004aa68950
4
+ data.tar.gz: 4abb5bd4e9e2130d1bdba6f86884c02813a8a18e
5
5
  SHA512:
6
- metadata.gz: c509c4b70b4f91d7104b1be01ec66b700395421b8685bfaf821ac281e52e74f9097a1cd17fab58b3e0b8d44812514188d6ee5ca8879295346b1fbcb0bf326e14
7
- data.tar.gz: a71b925735c65c18371fc4cde42327f7007f671fce3214ae269e66a8cf8a46cdb8a6346c466e660226e258afe2585b61adbe180a3ee1e1b2237a59337b4bee35
6
+ metadata.gz: f0fc5d3306bd0b6462c48d166923f05411fdaf977fa68cf1a273cb8e693a93d3be272346a05b16dcf94e793d053bb3d0f97debebae5994eaa260a4e6f14bba50
7
+ data.tar.gz: bacea787eaa1173c2759e3ba3e87cb17285026a7094b812355f1c4d7b948ff2cf2d5a5563ce06a877d7370d84fdbdaa96e81efa899b1d088baf48eb40ffc2c9d
data/README.md CHANGED
@@ -28,6 +28,8 @@ create - /user_data/web_server.yaml.sample
28
28
 
29
29
  $ pec list
30
30
 
31
+ $ pec hosts
32
+
31
33
  $ pec config <hostname_regex> <hostname_regex>...
32
34
 
33
35
  ### Configure
data/lib/pec/cli.rb CHANGED
@@ -38,6 +38,11 @@ module Pec
38
38
  _sub_command(filter_hosts, options)
39
39
  end
40
40
 
41
+ desc "hosts", "/etc/hosts records"
42
+ def hosts
43
+ _sub_command([], options)
44
+ end
45
+
41
46
  map %w[--version -v] => :__print_version
42
47
  desc "--version, -v", "print the version"
43
48
  def __print_version
@@ -0,0 +1,40 @@
1
+ require 'ipaddr'
2
+ module Pec::Command
3
+ class Hosts < Base
4
+ def self.task(server, config)
5
+ ip_addresses(server).each do |i|
6
+ host_name = private_ip?(i) ? "#{config.name}.lan" : config.name
7
+ puts sprintf(
8
+ "%-15s %-35s",
9
+ i,
10
+ host_name,
11
+ )
12
+ end if server
13
+ end
14
+
15
+ def self.ip_addresses(server)
16
+ server.addresses.map do |ethers|
17
+ ethers[1].map do |ether|
18
+ ether["addr"]
19
+ end
20
+ end.flatten
21
+ end
22
+
23
+ def self.private_ip?(target)
24
+ ::IPAddr.new("10.0.0.0/8").include?(target) ||
25
+ ::IPAddr.new("172.16.0.0/12").include?(target) ||
26
+ ::IPAddr.new("192.168.0.0/16").include?(target)
27
+ end
28
+
29
+ def self.before_do
30
+ @_error = nil
31
+ Pec::Logger.warning "------ #{Date.today.strftime("%Y%m%d%H%M%S")} pec add start ------"
32
+ end
33
+
34
+ def self.after_do
35
+ m = ("-" * 16)
36
+ n = ("-" * 17)
37
+ Pec::Logger.warning m + " pec end " + n
38
+ end
39
+ end
40
+ end
data/lib/pec/command.rb CHANGED
@@ -8,5 +8,6 @@ module Pec
8
8
  autoload :Config, "pec/command/config"
9
9
  autoload :Init, "pec/command/init"
10
10
  autoload :List, "pec/command/list"
11
+ autoload :Hosts, "pec/command/hosts"
11
12
  end
12
13
  end
data/lib/pec/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Pec
2
- VERSION = "0.8.4"
2
+ VERSION = "0.8.5"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: pec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.4
4
+ version: 0.8.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - kazuhiko yamashita
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-22 00:00:00.000000000 Z
11
+ date: 2016-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thor
@@ -147,6 +147,7 @@ files:
147
147
  - lib/pec/command/config.rb
148
148
  - lib/pec/command/destroy.rb
149
149
  - lib/pec/command/halt.rb
150
+ - lib/pec/command/hosts.rb
150
151
  - lib/pec/command/init.rb
151
152
  - lib/pec/command/list.rb
152
153
  - lib/pec/command/status.rb