Sha256: f64101465749d98228b21b83c41429985315aad094b480af3506fc2f692a3853

Contents?: true

Size: 1.34 KB

Versions: 40

Compression:

Stored size: 1.34 KB

Contents

# canzea --role=operatingsystem --solution=centos --remote --hostname=192.34.56.119 --privateKey=/var/go/.ssh/id_rsa_digitalocean

require 'net/ssh'
require 'net/sftp'
require 'json'

class RemoteCall
    def exec (hostname, privateKey, cmd)

        @username = "root"

        Net::SSH.start(hostname, @username, :paranoid => false, :keys => [privateKey]) do |ssh|

            chan = ssh.open_channel do |channel|
                channel.request_pty
                channel.env("DIGITAL_OCEAN_API_KEY", ENV['DIGITAL_OCEAN_API_KEY'])
                channel.env("VAULT_TOKEN", ENV['VAULT_TOKEN'])
                channel.env("CONSUL_URL", ENV['CONSUL_URL'])
                channel.env("WORK_DIR", ENV['WORK_DIR'])
                channel.exec(cmd) do |ch, success|
                    abort "could not execute command" unless success

                    channel.on_data do |ch, data|
                      puts data
                    end

                    channel.on_request("exit-status") do |ch, data|
                        exit_code = data.read_long
                        if (exit_code == 0)
                        else
                            abort()
                        end
                    end

                    channel.on_close do |ch|
                    end
                end
            end
            chan.wait
        end
    end
end

Version data entries

40 entries across 40 versions & 1 rubygems

Version Path
canzea-0.1.60 lib/ssh-base-cmd-class.rb
canzea-0.1.59 lib/ssh-base-cmd-class.rb
canzea-0.1.58 lib/ssh-base-cmd-class.rb
canzea-0.1.57 lib/ssh-base-cmd-class.rb
canzea-0.1.56 lib/ssh-base-cmd-class.rb
canzea-0.1.55 lib/ssh-base-cmd-class.rb
canzea-0.1.54 lib/ssh-base-cmd-class.rb
canzea-0.1.53 lib/ssh-base-cmd-class.rb
canzea-0.1.52 lib/ssh-base-cmd-class.rb
canzea-0.1.51 lib/ssh-base-cmd-class.rb
canzea-0.1.50 lib/ssh-base-cmd-class.rb
canzea-0.1.49 lib/ssh-base-cmd-class.rb
canzea-0.1.48 lib/ssh-base-cmd-class.rb
canzea-0.1.47 lib/ssh-base-cmd-class.rb
canzea-0.1.46 lib/ssh-base-cmd-class.rb
canzea-0.1.45 lib/ssh-base-cmd-class.rb
canzea-0.1.44 lib/ssh-base-cmd-class.rb
canzea-0.1.43 lib/ssh-base-cmd-class.rb
canzea-0.1.42 lib/ssh-base-cmd-class.rb
canzea-0.1.41 lib/ssh-base-cmd-class.rb