Sha256: 084e0db30986c99b233d7f4ece3cf7de2c28456e4350274056b597e73e13216f
Contents?: true
Size: 600 Bytes
Versions: 14
Compression:
Stored size: 600 Bytes
Contents
require 'net/ssh' class Indocker::Repositories::Clonner def initialize(configuration, logger) @configuration = configuration @logger = logger end def clone(session, repository) raise ArgumenError.new("only git repositories should be clonned") if !repository.is_git? session.exec!("rm -rf #{repository.clone_path} && mkdir -p #{repository.clone_path}") git_command = "git clone -b #{repository.branch} --depth 1 #{repository.remote_url} #{repository.clone_path}" session.exec!("ssh-agent bash -c 'ssh-add ~/.ssh/#{repository.ssh_key}; #{git_command}'") end end
Version data entries
14 entries across 14 versions & 1 rubygems