class Ci::Drone::Ci attr_reader :host, :username, :password, :gitea_username # host: drone server's ip # username: drone server's account # password: drone server's password # eq: # DevOps::Drone::Ci.new(@cloud_account.drone_ip, @cloud_account.account, @cloud_account.visible_secret, current_user.login).get_token def initialize(host, username, password, gitea_username) @host = host @username = username @password = password @gitea_username = gitea_username end def get_token puts "--------- sshpass -p #{password} ssh -o 'StrictHostKeyChecking no' #{username}@#{host} '#{cmd}'" `sshpass -p #{password} ssh -o "StrictHostKeyChecking no" #{username}@#{host} "#{cmd}"` end private def cmd "cd ..; cd var/lib/drone/; sqlite3 database.sqlite; .dump; select user_hash from users where user_login=#{gitea_username};" end end