smart_proxy_remote_execution_ssh 0.2.0 → 0.4.1
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 +4 -4
- data/README.md +1 -1
- data/{bundler.plugins.d → bundler.d}/remote_execution_ssh.rb +0 -0
- data/lib/smart_proxy_remote_execution_ssh.rb +25 -1
- data/lib/smart_proxy_remote_execution_ssh/actions/run_script.rb +21 -0
- data/lib/smart_proxy_remote_execution_ssh/api.rb +33 -0
- data/lib/smart_proxy_remote_execution_ssh/async_scripts/control.sh +110 -0
- data/lib/smart_proxy_remote_execution_ssh/async_scripts/retrieve.sh +151 -0
- data/lib/smart_proxy_remote_execution_ssh/cockpit.rb +269 -0
- data/lib/smart_proxy_remote_execution_ssh/dispatcher.rb +10 -0
- data/lib/smart_proxy_remote_execution_ssh/log_filter.rb +14 -0
- data/lib/smart_proxy_remote_execution_ssh/plugin.rb +28 -10
- data/lib/smart_proxy_remote_execution_ssh/runners.rb +7 -0
- data/lib/smart_proxy_remote_execution_ssh/runners/fake_script_runner.rb +87 -0
- data/lib/smart_proxy_remote_execution_ssh/runners/polling_script_runner.rb +140 -0
- data/lib/smart_proxy_remote_execution_ssh/runners/script_runner.rb +469 -0
- data/lib/smart_proxy_remote_execution_ssh/version.rb +1 -1
- data/lib/smart_proxy_remote_execution_ssh/webrick_ext.rb +17 -0
- data/settings.d/remote_execution_ssh.yml.example +3 -0
- metadata +46 -28
@@ -0,0 +1,17 @@
|
|
1
|
+
module SmartProxyRemoteExecutionSsh
|
2
|
+
module WEBrickExt
|
3
|
+
# An extension to ::WEBrick::HTTPRequest to expost the socket object for highjacking for cockpit
|
4
|
+
module HTTPRequestExt
|
5
|
+
def meta_vars
|
6
|
+
super.merge('ext.hijack!' => -> {
|
7
|
+
# This stops Webrick from sending its own reply.
|
8
|
+
@request_line = nil;
|
9
|
+
# This stops Webrick from trying to read the next request on the socket.
|
10
|
+
@keep_alive = false;
|
11
|
+
return @socket;
|
12
|
+
})
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
::WEBrick::HTTPRequest.send(:prepend, WEBrickExt::HTTPRequestExt)
|
17
|
+
end
|
metadata
CHANGED
@@ -1,43 +1,43 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: smart_proxy_remote_execution_ssh
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ivan Nečas
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-07-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- - "
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- - "
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
40
|
+
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: minitest
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -98,36 +98,44 @@ dependencies:
|
|
98
98
|
name: rubocop
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
|
-
- -
|
101
|
+
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: 0.
|
103
|
+
version: 0.82.0
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
|
-
- -
|
108
|
+
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: 0.
|
110
|
+
version: 0.82.0
|
111
111
|
- !ruby/object:Gem::Dependency
|
112
112
|
name: smart_proxy_dynflow
|
113
113
|
requirement: !ruby/object:Gem::Requirement
|
114
114
|
requirements:
|
115
|
-
- - "
|
116
|
-
- !ruby/object:Gem::Version
|
117
|
-
version: 0.1.0
|
118
|
-
- - "<"
|
115
|
+
- - "~>"
|
119
116
|
- !ruby/object:Gem::Version
|
120
|
-
version: 0.
|
117
|
+
version: '0.5'
|
121
118
|
type: :runtime
|
122
119
|
prerelease: false
|
123
120
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - "~>"
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0.5'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: net-ssh
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
124
128
|
requirements:
|
125
129
|
- - ">="
|
126
130
|
- !ruby/object:Gem::Version
|
127
|
-
version: 0
|
128
|
-
|
131
|
+
version: '0'
|
132
|
+
type: :runtime
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
129
137
|
- !ruby/object:Gem::Version
|
130
|
-
version: 0
|
138
|
+
version: '0'
|
131
139
|
description: " Ssh remote execution provider for Foreman Smart-Proxy\n"
|
132
140
|
email:
|
133
141
|
- inecas@redhat.com
|
@@ -139,18 +147,29 @@ extra_rdoc_files:
|
|
139
147
|
files:
|
140
148
|
- LICENSE
|
141
149
|
- README.md
|
142
|
-
- bundler.
|
150
|
+
- bundler.d/remote_execution_ssh.rb
|
143
151
|
- lib/smart_proxy_remote_execution_ssh.rb
|
152
|
+
- lib/smart_proxy_remote_execution_ssh/actions/run_script.rb
|
144
153
|
- lib/smart_proxy_remote_execution_ssh/api.rb
|
154
|
+
- lib/smart_proxy_remote_execution_ssh/async_scripts/control.sh
|
155
|
+
- lib/smart_proxy_remote_execution_ssh/async_scripts/retrieve.sh
|
156
|
+
- lib/smart_proxy_remote_execution_ssh/cockpit.rb
|
157
|
+
- lib/smart_proxy_remote_execution_ssh/dispatcher.rb
|
145
158
|
- lib/smart_proxy_remote_execution_ssh/http_config.ru
|
159
|
+
- lib/smart_proxy_remote_execution_ssh/log_filter.rb
|
146
160
|
- lib/smart_proxy_remote_execution_ssh/plugin.rb
|
161
|
+
- lib/smart_proxy_remote_execution_ssh/runners.rb
|
162
|
+
- lib/smart_proxy_remote_execution_ssh/runners/fake_script_runner.rb
|
163
|
+
- lib/smart_proxy_remote_execution_ssh/runners/polling_script_runner.rb
|
164
|
+
- lib/smart_proxy_remote_execution_ssh/runners/script_runner.rb
|
147
165
|
- lib/smart_proxy_remote_execution_ssh/version.rb
|
166
|
+
- lib/smart_proxy_remote_execution_ssh/webrick_ext.rb
|
148
167
|
- settings.d/remote_execution_ssh.yml.example
|
149
168
|
homepage: https://github.com/theforeman/smart_proxy_remote_execution_ssh
|
150
169
|
licenses:
|
151
170
|
- GPL-3.0
|
152
171
|
metadata: {}
|
153
|
-
post_install_message:
|
172
|
+
post_install_message:
|
154
173
|
rdoc_options: []
|
155
174
|
require_paths:
|
156
175
|
- lib
|
@@ -165,9 +184,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
165
184
|
- !ruby/object:Gem::Version
|
166
185
|
version: '0'
|
167
186
|
requirements: []
|
168
|
-
|
169
|
-
|
170
|
-
signing_key:
|
187
|
+
rubygems_version: 3.1.2
|
188
|
+
signing_key:
|
171
189
|
specification_version: 4
|
172
190
|
summary: Ssh remote execution provider for Foreman Smart-Proxy
|
173
191
|
test_files: []
|