cast-ssh 0.1.5 → 0.1.6

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 (4) hide show
  1. data/lib/cast.rb +4 -15
  2. data/spec/lib/cast_spec.rb +26 -27
  3. metadata +34 -22
  4. checksums.yaml +0 -7
data/lib/cast.rb CHANGED
@@ -8,7 +8,7 @@ STDOUT.sync = true
8
8
  STDERR.sync = true
9
9
 
10
10
  module Cast
11
- VERSION = '0.1.5'
11
+ VERSION = '0.1.6'
12
12
  DEFAULTGROUPS = '~/.cast.yml'
13
13
 
14
14
  @@mux = Mutex.new
@@ -68,23 +68,12 @@ module Cast
68
68
  def self.remote host, cmd, ssh = 'ssh'
69
69
  fullcmd = "#{ssh} #{host} '#{cmd}'"
70
70
  log "running #{fullcmd}"
71
- local fullcmd, host
72
- end
73
-
74
- def self.ensure_local cmd, prefix = nil
75
- r = local cmd, prefix
76
- raise "command failed: #{cmd}" unless r == 0
77
- return r
71
+ local fullcmd
78
72
  end
79
73
 
80
74
  def self.local cmd, options = {}
81
- prefix = nil
82
-
83
- if options.is_a? String
84
- prefix = options # this is for backwards compatibility
85
- elsif options[:prefix]
86
- prefix = options[:prefix]
87
- end
75
+ options = {} if options == nil
76
+ prefix = options[:prefix]
88
77
 
89
78
  r = nil
90
79
 
@@ -3,51 +3,50 @@ require 'spec_helper'
3
3
  describe Cast do
4
4
  it 'should return the command output' do
5
5
  r = Cast::local 'true'
6
- r.should == 0
6
+ expect(r).to eq(0)
7
7
 
8
8
  r = Cast::local 'false'
9
- r.should == 1
9
+ expect(r).to eq(1)
10
10
  end
11
11
 
12
12
  it 'should ensure local commands finish' do
13
- r = Cast::ensure_local 'true'
14
- r.should == 0
15
-
16
- expect { Cast::ensure_local 'false'}.to raise_error
13
+ r = Cast::local 'true', {:ensure => true}
14
+ expect(r).to eq(0)
15
+ expect { Cast::local('false', {:ensure => true}) }.to raise_error
17
16
  end
18
17
 
19
18
  it 'should load groups' do
20
19
  groups = Cast::load_groups 'spec/test.yml'
21
- groups.size.should == 2
22
- groups['group1'].size.should == 3
23
- groups['group1'][0].should == 'host1'
20
+ expect(groups.size).to eq(2)
21
+ expect(groups['group1'].size).to eq(3)
22
+ expect(groups['group1'][0]).to eq('host1')
24
23
  end
25
24
 
26
25
  it 'should expand groups' do
27
26
  groups = Cast::load_groups 'spec/test.yml'
28
27
  hosts = Cast::expand_groups ['group1'], groups
29
- hosts.size.should == 3
30
- hosts[0].should == 'host1'
31
- hosts[1].should == 'host2'
32
- hosts[2].should == 'host3'
28
+ expect(hosts.size).to eq(3)
29
+ expect(hosts[0]).to eq('host1')
30
+ expect(hosts[1]).to eq('host2')
31
+ expect(hosts[2]).to eq('host3')
33
32
 
34
33
  hosts = Cast::expand_groups ['group1', 'group2']
35
- hosts.size.should == 5
36
- hosts[0].should == 'host1'
37
- hosts[1].should == 'host2'
38
- hosts[2].should == 'host3'
39
- hosts[3].should == 'host4'
40
- hosts[4].should == 'host5'
34
+ expect(hosts.size).to eq(5)
35
+ expect(hosts[0]).to eq('host1')
36
+ expect(hosts[1]).to eq('host2')
37
+ expect(hosts[2]).to eq('host3')
38
+ expect(hosts[3]).to eq('host4')
39
+ expect(hosts[4]).to eq('host5')
41
40
 
42
41
  hosts = Cast::expand_groups ['host10', 'group1', 'host11', 'group2']
43
- hosts.size.should == 7
44
- hosts[0].should == 'host10'
45
- hosts[1].should == 'host1'
46
- hosts[2].should == 'host2'
47
- hosts[3].should == 'host3'
48
- hosts[4].should == 'host11'
49
- hosts[5].should == 'host4'
50
- hosts[6].should == 'host5'
42
+ expect(hosts.size).to eq(7)
43
+ expect(hosts[0]).to eq('host10')
44
+ expect(hosts[1]).to eq('host1')
45
+ expect(hosts[2]).to eq('host2')
46
+ expect(hosts[3]).to eq('host3')
47
+ expect(hosts[4]).to eq('host11')
48
+ expect(hosts[5]).to eq('host4')
49
+ expect(hosts[6]).to eq('host5')
51
50
  end
52
51
  end
53
52
 
metadata CHANGED
@@ -1,83 +1,94 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cast-ssh
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.5
4
+ version: 0.1.6
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Peter Bakkum
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-10-26 00:00:00.000000000 Z
12
+ date: 2015-01-06 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: mocha
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
- - - ">="
19
+ - - ! '>='
18
20
  - !ruby/object:Gem::Version
19
21
  version: '0'
20
22
  type: :development
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
- - - ">="
27
+ - - ! '>='
25
28
  - !ruby/object:Gem::Version
26
29
  version: '0'
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rspec
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
- - - ">="
35
+ - - ! '>='
32
36
  - !ruby/object:Gem::Version
33
37
  version: '0'
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
- - - ">="
43
+ - - ! '>='
39
44
  - !ruby/object:Gem::Version
40
45
  version: '0'
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: autotest-standalone
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
- - - ">="
51
+ - - ! '>='
46
52
  - !ruby/object:Gem::Version
47
53
  version: '0'
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
- - - ">="
59
+ - - ! '>='
53
60
  - !ruby/object:Gem::Version
54
61
  version: '0'
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: peach
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
- - - ">="
67
+ - - ! '>='
60
68
  - !ruby/object:Gem::Version
61
69
  version: '0'
62
70
  type: :runtime
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
- - - ">="
75
+ - - ! '>='
67
76
  - !ruby/object:Gem::Version
68
77
  version: '0'
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: trollop
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
- - - ">="
83
+ - - ! '>='
74
84
  - !ruby/object:Gem::Version
75
85
  version: '0'
76
86
  type: :runtime
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
- - - ">="
91
+ - - ! '>='
81
92
  - !ruby/object:Gem::Version
82
93
  version: '0'
83
94
  description: Execute remote commands via ssh on groups of machines
@@ -90,41 +101,42 @@ extra_rdoc_files:
90
101
  - LICENSE.md
91
102
  - README.md
92
103
  files:
93
- - ".rspec"
94
- - ".travis.yml"
95
- - Gemfile
96
104
  - LICENSE.md
97
105
  - README.md
98
- - bin/cast
99
106
  - cast.gemspec
107
+ - Gemfile
108
+ - .rspec
109
+ - .travis.yml
100
110
  - lib/cast.rb
111
+ - bin/cast
101
112
  - spec/lib/cast_spec.rb
102
113
  - spec/spec_helper.rb
103
114
  - spec/test.yml
104
115
  homepage: http://github.com/bakks/cast
105
116
  licenses:
106
117
  - MIT
107
- metadata: {}
108
118
  post_install_message:
109
119
  rdoc_options:
110
- - "--charset=UTF-8"
120
+ - --charset=UTF-8
111
121
  require_paths:
112
122
  - lib
113
123
  required_ruby_version: !ruby/object:Gem::Requirement
124
+ none: false
114
125
  requirements:
115
- - - ">="
126
+ - - ! '>='
116
127
  - !ruby/object:Gem::Version
117
128
  version: '0'
118
129
  required_rubygems_version: !ruby/object:Gem::Requirement
130
+ none: false
119
131
  requirements:
120
- - - ">="
132
+ - - ! '>='
121
133
  - !ruby/object:Gem::Version
122
134
  version: 1.3.6
123
135
  requirements: []
124
136
  rubyforge_project:
125
- rubygems_version: 2.2.2
137
+ rubygems_version: 1.8.23.2
126
138
  signing_key:
127
- specification_version: 4
139
+ specification_version: 3
128
140
  summary: Execute remote commands via ssh on groups of machines
129
141
  test_files:
130
142
  - spec/lib/cast_spec.rb
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: cceed46756626f5c4c561cf1f6d906db52030585
4
- data.tar.gz: ea3828524600ca8e6f073b7b5de2da4d4b6e7ae6
5
- SHA512:
6
- metadata.gz: 7f15fca12981a9c221f10e3d5a5975d4da9950afc192d89b0c5db69d3709cf913a4014cd3915bf30e353ad1038eb2be8233a7d0e037a4945f25664151ee56c0c
7
- data.tar.gz: c873f60082c69d8c5bbac734243f4636db527e48f9e385e45c6fc7a9705b3227eaa54c637056cc67a2271ca9c3004fcfc4e104851e1ddcba0fd596adb42a75c2