Sha256: f5c622ba9c5392d3be7942a2b10844eda9dc81fb0c4afd6ac5547b7dca0967f4
Contents?: true
Size: 1.7 KB
Versions: 2
Compression:
Stored size: 1.7 KB
Contents
require 'aws/s3' module MongoDbUtils module Commands class Option attr_accessor :key, :value def initialize(key,value) @key = key @value = value end def empty? @value.nil? || @value.empty? end end class MongoTools def self.dump(host,port,db,output,username = "", password = "") options = [] options << Option.new("-h", "#{host}:#{port}") options << Option.new("-db", db) options << Option.new("-o", output) options << Option.new("-u", username) options << Option.new("-p", password) cmd = "mongodump " options.each do |o| cmd << "#{o.key} #{o.value} " unless o.empty? end puts "cmd:" puts cmd `#{cmd}` end def self.restore(host,port,db,source_folder,username = "", password = "") options = [] options << Option.new("-h", "#{host}:#{port}") options << Option.new("-db", db) options << Option.new("-u", username) options << Option.new("-p", password) cmd = "mongorestore " options.each do |o| cmd << "#{o.key} #{o.value} " unless o.empty? end cmd << "#{source_folder}" puts "cmd:" puts cmd `#{cmd}` end end class S3 def self.put_file(file, bucket_name, access_key_id, secret_access_key) AWS::S3::Base.establish_connection!( :access_key_id => access_key_id, :secret_access_key => secret_access_key ) Service.buckets.create(bucket_name) if Service.buckets.find(bucket_name).nil? S3Object.store(file, open(file), bucket_name) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
mongo-db-utils-0.0.5 | lib/mongo-db-utils/cmd/mongotools.rb |
mongo-db-utils-0.0.4 | lib/mongo-db-utils/cmd/mongotools.rb |