Merge pull request 'feat: add support for sshfs option (-o) in config' (#51) from feature/50-add-support-for-sshfs-options into develop
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #51
This commit is contained in:
commit
3a8d9239b2
3 changed files with 17 additions and 9 deletions
|
@ -16,7 +16,7 @@ module GX
|
||||||
class Cli
|
class Cli
|
||||||
Log = ::Log.for("cli")
|
Log = ::Log.for("cli")
|
||||||
|
|
||||||
@config : GX::Config
|
@config : GX::Config
|
||||||
|
|
||||||
def initialize
|
def initialize
|
||||||
# Main execution starts here
|
# Main execution starts here
|
||||||
|
|
|
@ -31,6 +31,6 @@ Log.setup do |config|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
app = GX::Cli.new
|
cli = GX::Cli.new
|
||||||
app.parse_command_line(ARGV)
|
cli.parse_command_line(ARGV)
|
||||||
app.run
|
cli.run
|
||||||
|
|
|
@ -13,6 +13,7 @@ module GX::Models
|
||||||
getter remote_user : String = ""
|
getter remote_user : String = ""
|
||||||
getter remote_host : String = ""
|
getter remote_host : String = ""
|
||||||
getter remote_port : String = "22"
|
getter remote_port : String = "22"
|
||||||
|
getter options : Array(String) = [] of String
|
||||||
|
|
||||||
include Concerns::Base
|
include Concerns::Base
|
||||||
|
|
||||||
|
@ -28,13 +29,19 @@ module GX::Models
|
||||||
mount_point_safe = @mount_point
|
mount_point_safe = @mount_point
|
||||||
raise InvalidMountpointError.new("Invalid mount point") if mount_point_safe.nil?
|
raise InvalidMountpointError.new("Invalid mount point") if mount_point_safe.nil?
|
||||||
|
|
||||||
|
options = [] of String
|
||||||
|
# merge sshfs options
|
||||||
|
@options.each do |option|
|
||||||
|
options.push("-o", option)
|
||||||
|
end
|
||||||
|
options.push("-p", remote_port)
|
||||||
|
options.push(
|
||||||
|
"#{@remote_user}@#{@remote_host}:#{@remote_path}",
|
||||||
|
mount_point_safe
|
||||||
|
)
|
||||||
process = Process.new(
|
process = Process.new(
|
||||||
"sshfs",
|
"sshfs",
|
||||||
[
|
options,
|
||||||
"-p", remote_port,
|
|
||||||
"#{@remote_user}@#{@remote_host}:#{@remote_path}",
|
|
||||||
mount_point_safe,
|
|
||||||
],
|
|
||||||
input: STDIN,
|
input: STDIN,
|
||||||
output: STDOUT,
|
output: STDOUT,
|
||||||
error: STDERR
|
error: STDERR
|
||||||
|
@ -43,3 +50,4 @@ module GX::Models
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue