hem 1.0.1.beta4 → 1.0.1.beta5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/hem/lib/vm/command.rb +3 -38
- data/lib/hem/tasks/vm.rb +1 -1
- data/lib/hem/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 50ba9467abdcbc5240b09e934016f1195be6c165
|
4
|
+
data.tar.gz: ec8fcd39f9172bb05e5a0174647de1574dc1d5e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cc2a7ffdd94f60db5ec456c85caffeea69ea85d1a589fc0ebf5335f0bc31d039122a8236d567e83ed8f3fdf5548862e8fff801b84aa3866cf36ddea4e3b7b19d
|
7
|
+
data.tar.gz: 0de71d01152dbc13e9ca27b9b5deb3bb4c0d1aa783c95bd73e6af72572353fd904dd9826193ad9086ba852317c400acab9bb5ac535ccec6b4d087db3ccd3dc05
|
data/Gemfile.lock
CHANGED
data/lib/hem/lib/vm/command.rb
CHANGED
@@ -25,7 +25,7 @@ module Hem
|
|
25
25
|
|
26
26
|
case pipe_opts[:on]
|
27
27
|
when :vm
|
28
|
-
@pipe_in_vm = cmd
|
28
|
+
@pipe_in_vm = cmd
|
29
29
|
when :host
|
30
30
|
@pipe = cmd
|
31
31
|
else
|
@@ -43,44 +43,9 @@ module Hem
|
|
43
43
|
pipe cmd, :on => :vm
|
44
44
|
end
|
45
45
|
|
46
|
-
# TODO Refactor in to ssh helper with similar opts to shell helper
|
47
|
-
# TODO Migrate all vm_shell functionality this direction
|
48
46
|
def run
|
49
47
|
return if @command.nil?
|
50
|
-
|
51
|
-
opts = @@vm_inspector.ssh_config.merge(@opts)
|
52
|
-
|
53
|
-
Net::SSH::Simple.sync do
|
54
|
-
ssh_opts = {
|
55
|
-
:user => opts[:ssh_user],
|
56
|
-
:port => opts[:ssh_port],
|
57
|
-
:forward_agent => true,
|
58
|
-
:global_known_hosts_file => "/dev/null",
|
59
|
-
:paranoid => false,
|
60
|
-
:user_known_hosts_file => "/dev/null"
|
61
|
-
}
|
62
|
-
|
63
|
-
ssh_opts[:keys] = [opts[:ssh_identity]] if opts[:ssh_identity]
|
64
|
-
|
65
|
-
tmp = Tempfile.new "vm_command_exec"
|
66
|
-
|
67
|
-
begin
|
68
|
-
filename = File.basename(tmp.path)
|
69
|
-
remote_file = "/tmp/#{filename}"
|
70
|
-
tmp.write "#{@command}#{opts[:append]}"
|
71
|
-
tmp.close
|
72
|
-
|
73
|
-
scp_put opts[:ssh_host], tmp.path, remote_file, ssh_opts
|
74
|
-
result = ssh opts[:ssh_host], "cd #{opts[:pwd]}; exec /bin/bash #{remote_file}", ssh_opts
|
75
|
-
ssh opts[:ssh_host], "rm #{remote_file}", ssh_opts
|
76
|
-
|
77
|
-
# Throw exception if exit code not 0
|
78
|
-
|
79
|
-
return opts[:capture] ? result.stdout : result.success
|
80
|
-
ensure
|
81
|
-
tmp.unlink
|
82
|
-
end
|
83
|
-
end
|
48
|
+
shell to_s, @opts
|
84
49
|
end
|
85
50
|
|
86
51
|
# TODO Speed up Vagrant SSH connections
|
@@ -107,7 +72,7 @@ module Hem
|
|
107
72
|
pwd_set_command = " -- \"cd #{@opts[:pwd].shellescape}; exec /bin/bash"
|
108
73
|
|
109
74
|
vm_command = [
|
110
|
-
@pipe_in_vm,
|
75
|
+
@pipe_in_vm.nil? ? nil : @pipe_in_vm.gsub(/(\\+)/, '\\\\\1'),
|
111
76
|
@command
|
112
77
|
].compact.join(" | ")
|
113
78
|
|
data/lib/hem/tasks/vm.rb
CHANGED
@@ -105,7 +105,7 @@ namespace :vm do
|
|
105
105
|
opts = { :psuedo_tty => STDIN.tty? }
|
106
106
|
|
107
107
|
Hem.ui.success "Determining VM connection details..." if STDOUT.tty?
|
108
|
-
command = execute.empty? ?
|
108
|
+
command = execute.empty? ? create_command(nil, opts) : create_command(execute, opts)
|
109
109
|
Hem.logger.debug "vm:ssh: #{command}"
|
110
110
|
|
111
111
|
Hem.ui.success "Connecting..." if STDOUT.tty?
|
data/lib/hem/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: hem
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.1.
|
4
|
+
version: 1.0.1.beta5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mike Simons
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-12-
|
11
|
+
date: 2015-12-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: slop
|
@@ -301,7 +301,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
301
301
|
version: 1.3.1
|
302
302
|
requirements: []
|
303
303
|
rubyforge_project:
|
304
|
-
rubygems_version: 2.4.
|
304
|
+
rubygems_version: 2.4.8
|
305
305
|
signing_key:
|
306
306
|
specification_version: 4
|
307
307
|
summary: Inviqan toolbelt
|