diff options
Diffstat (limited to 'byteback-setup-client-receive')
-rwxr-xr-x | byteback-setup-client-receive | 54 |
1 files changed, 0 insertions, 54 deletions
diff --git a/byteback-setup-client-receive b/byteback-setup-client-receive deleted file mode 100755 index 3673b6a..0000000 --- a/byteback-setup-client-receive +++ /dev/null @@ -1,54 +0,0 @@ -#!/usr/bin/ruby -# -# Called by byteback-setup-client to set up a new byteback-setup-client -# - -$LOAD_PATH.unshift('/usr/lib/byteback') - -require 'fileutils' -require 'trollop' -require 'byteback/util' -require 'byteback/log' -include Byteback::Util -include Byteback::Log - -def error(message) - STDERR.print "*** #{message}\n" - exit 1 -end - -@hostname = ARGV.shift -@pubkey = ARGV.join(' ') - -error('You must call this from byteback-setup-client on remote host') unless - @hostname && - /^ssh/.match(@pubkey) && - ENV['SSH_CONNECTION'] - -@client_ip = ENV['SSH_CONNECTION'].split(' ').first - -Dir.chdir(ENV['HOME']) # don't know why we wouldn't be here - -FileUtils.mkdir_p(@hostname) - -error("Couldn't create btrfs subvolume") unless - system("/sbin/btrfs subvolume create #{@hostname}/current") - -FileUtils.mkdir_p('.ssh') - -if File.exist?('.ssh/authorized_keys') && - File.read('.ssh/authorized_keys').match(@pubkey.split(/\s+/)[1]) - - warn('This key already exists in .ssh/authorized_keys on server, nothing to do!') - -else - - File.open('.ssh/authorized_keys', 'a+') do |fh| - fh.print <<-LINE.gsub(/\n/, '') + "\n" -command="byteback-receive", -from="#{@client_ip}", -environment="BYTEBACK_HOST=#{@hostname}" - #{@pubkey} - LINE - end -end |