Sha256: 6c158314b22d28d222a294832c4e0e188f76f791d83b58e03f05bdefb6c34062
Contents?: true
Size: 1.51 KB
Versions: 5
Compression:
Stored size: 1.51 KB
Contents
require 'thor' require File.dirname(__FILE__) + '/config' Taps::Config.taps_database_url = 'sqlite://taps.db' module Taps class Cli < Thor desc "server <local_database_url> <login> <password>", "Start a taps database import/export server" method_options(:port => :numeric) def server(database_url, login, password) Taps::Config.database_url = database_url Taps::Config.login = login Taps::Config.password = password port = options[:port] || 5000 Taps::Config.verify_database_url require File.dirname(__FILE__) + '/server' Taps::Server.run!({ :port => port, :environment => :production, :logging => true }) end desc "pull <local_database_url> <remote_url>", "Pull a database from a taps server" method_options(:chunksize => :numeric) def pull(database_url, remote_url) clientxfer(:cmd_receive, database_url, remote_url) end desc "push <local_database_url> <remote_url>", "Push a database to a taps server" method_options(:chunksize => :numeric) def push(database_url, remote_url) clientxfer(:cmd_send, database_url, remote_url) end def clientxfer(method, database_url, remote_url) if options[:chunksize] Taps::Config.chunksize = options[:chunksize] < 100 ? 100 : options[:chunksize] else Taps::Config.chunksize = 1000 end Taps::Config.database_url = database_url Taps::Config.remote_url = remote_url Taps::Config.verify_database_url require File.dirname(__FILE__) + '/client_session' Taps::ClientSession.quickstart do |session| session.send(method) end end end end
Version data entries
5 entries across 5 versions & 2 rubygems
Version | Path |
---|---|
ricardochimal-taps-0.2.0 | lib/taps/cli.rb |
ricardochimal-taps-0.2.1 | lib/taps/cli.rb |
ricardochimal-taps-0.2.2 | lib/taps/cli.rb |
taps-0.2.1 | lib/taps/cli.rb |
taps-0.2.2 | lib/taps/cli.rb |