i2cssh 1.7.1 → 1.8.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.
- data/README.markdown +32 -2
- data/VERSION +1 -1
- data/bin/i2cssh +5 -1
- data/i2cssh.gemspec +2 -2
- data/lib/i2cssh.rb +1 -1
- metadata +5 -5
data/README.markdown
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# i2cssh
|
2
2
|
|
3
|
-
i2cssh is a http://code.google.com/p/csshx/ like tool for connecting over ssh to multiple machines. But instead of creating separate windows and having
|
3
|
+
i2cssh is a csshX (http://code.google.com/p/csshx/) like tool for connecting over ssh to multiple machines. But instead of creating separate windows and having
|
4
4
|
a master window for input, i2cssh uses iterm2 split panes and "Send input to all sessions" (cmd-shift-i) to send commands
|
5
5
|
to all sessions.
|
6
6
|
|
@@ -20,6 +20,7 @@ to all sessions.
|
|
20
20
|
-nb, --nobroadcast Disable broadcast
|
21
21
|
-p, --profile PROFILE Name of the iTerm2 profile (default: Default)
|
22
22
|
-2, --iterm2 Use iTerm2 instead of iTerm
|
23
|
+
-i, --itermname NAME Name of the application to use (default: iTerm)
|
23
24
|
-f, --file FILE Cluster file (one hostname per line)
|
24
25
|
-c, --cluster CLUSTERNAME Name of the cluster specified in ~/.i2csshrc
|
25
26
|
-r, --rank Send LC_RANK with the host number as environment variable
|
@@ -38,7 +39,7 @@ The following commands are exactly the same, however, they might serve different
|
|
38
39
|
|
39
40
|
Using the `-l` option will override all usernames:
|
40
41
|
|
41
|
-
$
|
42
|
+
$ i2cssh -l foo user1@host1 user2@host2
|
42
43
|
|
43
44
|
This will connect to both `host1` and `host2` as the user `foo`
|
44
45
|
|
@@ -66,6 +67,7 @@ Optional parameters can be used globablly or per cluster and include:
|
|
66
67
|
rows: <rows> # Amount of rows
|
67
68
|
sleep: <secs> # Seconds to sleep between creating SSH sessions
|
68
69
|
direction: (column/row) # Direction that new sessions are created (default: column)
|
70
|
+
itermname: # iTerm app name (default: iTerm)
|
69
71
|
|
70
72
|
environment: # Send the following enviroment variables
|
71
73
|
- LC_FOO: foo
|
@@ -123,6 +125,10 @@ Use a specific iTerm profile
|
|
123
125
|
|
124
126
|
Use iTerm2.app instead of iTerm.app
|
125
127
|
|
128
|
+
### -i, --itermname NAME
|
129
|
+
|
130
|
+
Name of the application to use (default: iTerm). It happens sometimes iTerm isn't called iTerm. Use this parameter to override what app i2cssh interacts with.
|
131
|
+
|
126
132
|
### -f, --file
|
127
133
|
|
128
134
|
Will read nodes from a file. These will be added to any hosts specified on the command line or in the config
|
@@ -139,13 +145,37 @@ Send a LC_RANK environment variable different for each host (from 0 to n)
|
|
139
145
|
|
140
146
|
Connect to the machines a, b and c
|
141
147
|
|
148
|
+
### -s, --sleep SLEEP
|
149
|
+
|
150
|
+
Wait SLEEP seconds between starting each ssh session. This will take decimals as well (0.5 for half a second)
|
151
|
+
|
152
|
+
### -X, --extra EXTRA
|
153
|
+
|
154
|
+
Set extra ssh parameters in the form -Xk=v. For example:
|
155
|
+
|
156
|
+
i2cssh -Xi=myidentity.pem
|
157
|
+
|
158
|
+
will result in
|
159
|
+
|
160
|
+
ssh -i myidentity.pem
|
161
|
+
|
162
|
+
Or,
|
163
|
+
|
164
|
+
i2cssh -Xp=2222 -XL=8080:localhost:8080
|
165
|
+
|
166
|
+
will result in
|
167
|
+
|
168
|
+
ssh -p 2222 -L 8080:localhost:8080
|
169
|
+
|
142
170
|
## Known issues
|
143
171
|
|
144
172
|
- i2cssh uses rb-appscript and that only seems to work on ruby 1.8.7 and breaks on 1.9.x
|
173
|
+
- appscript is no longer supported (http://appscript.sourceforge.net/status.html). This means that i2cssh might have to move to something else in the future. I haven't really looked at anything, but let me know if you find a good alternative!
|
145
174
|
|
146
175
|
## TODO
|
147
176
|
|
148
177
|
- Functional parity with csshX (as far as possible)
|
178
|
+
- -X support in config file
|
149
179
|
|
150
180
|
## Contributing to i2cssh
|
151
181
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.8.0
|
data/bin/i2cssh
CHANGED
@@ -36,7 +36,7 @@ def set_options(config_hash, login_override=nil)
|
|
36
36
|
exit 1
|
37
37
|
end
|
38
38
|
|
39
|
-
[:broadcast, :profile, :rank, :iterm2, :login, :columns, :rows, :sleep, :direction].each do |p|
|
39
|
+
[:broadcast, :profile, :rank, :iterm2, :login, :columns, :rows, :sleep, :direction, :itermname].each do |p|
|
40
40
|
@i2_options[p] = config_hash[p.to_s].nil? ? @i2_options[p] : config_hash[p.to_s]
|
41
41
|
end
|
42
42
|
|
@@ -143,6 +143,10 @@ optparse = OptionParser.new do |opts|
|
|
143
143
|
'Use iTerm2 instead of iTerm' do
|
144
144
|
opts_from_cmdline[:iterm2] = true
|
145
145
|
end
|
146
|
+
opts.on "-i", '--itermname NAME', String,
|
147
|
+
'Name of the application to use (default: iTerm)' do |i|
|
148
|
+
opts_from_cmdline[:itermname] = i
|
149
|
+
end
|
146
150
|
opts.on '-s', '--sleep SLEEP', Float,
|
147
151
|
'Number of seconds to sleep between creating SSH sessions' do |s|
|
148
152
|
opts_from_cmdline[:sleep] = s
|
data/i2cssh.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "i2cssh"
|
8
|
-
s.version = "1.
|
8
|
+
s.version = "1.8.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Wouter de Bie"]
|
12
|
-
s.date = "2012-11-
|
12
|
+
s.date = "2012-11-13"
|
13
13
|
s.description = "csshX like cluster ssh using iTerm2 panes"
|
14
14
|
s.email = "wouter@evenflow.se"
|
15
15
|
s.executables = ["i2cssh"]
|
data/lib/i2cssh.rb
CHANGED
@@ -8,7 +8,7 @@ class I2Cssh
|
|
8
8
|
@servers = servers
|
9
9
|
@ssh_environment = ssh_environment
|
10
10
|
|
11
|
-
app_name = (i2_options[:iterm2]) ? 'iTerm2' : 'iTerm'
|
11
|
+
app_name = (i2_options[:iterm2]) ? 'iTerm2' : ((i2_options[:itermname]) ? i2_options[:itermname] : 'iTerm')
|
12
12
|
|
13
13
|
raise Exception.new 'No servers given' if servers.empty?
|
14
14
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: i2cssh
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 55
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
-
|
10
|
-
version: 1.
|
8
|
+
- 8
|
9
|
+
- 0
|
10
|
+
version: 1.8.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Wouter de Bie
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2012-11-
|
18
|
+
date: 2012-11-13 00:00:00 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
prerelease: false
|