filbert 0.1.0 → 0.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/filbert.rb +1 -1
- data/lib/filbert/db_config.rb +1 -1
- data/lib/filbert/log.rb +35 -0
- data/lib/filbert/task.rb +5 -2
- data/lib/filbert/version.rb +2 -2
- metadata +4 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 107e006aeae846d31d72fec4789b8339a205c877
|
4
|
+
data.tar.gz: 99fb86b7a668faa414a48bc677799b89d3c62f39
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 07b733ef41d170e670dcd3496847fe986fc7f9f8b4db270c97b97ed861ada1a4c76f3edafa8b4c0e8ea66fce47d9e3b2fb7db79cfc35d22a7d420f8512eb2544
|
7
|
+
data.tar.gz: 8780c99d3e3e20788e19121ac85634e340c0a344ad8379b2ae50dddcc42447a4af73c2e08c9a674c57d5ecb7c5ee075e5c96c5362ccaab16119c4d7b5d849939
|
data/lib/filbert.rb
CHANGED
data/lib/filbert/db_config.rb
CHANGED
data/lib/filbert/log.rb
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'rest_client'
|
2
|
+
require 'json'
|
3
|
+
|
4
|
+
class Log
|
5
|
+
def initialize(task_name, db_name, datastore)
|
6
|
+
@task_name = task_name
|
7
|
+
@db_name = db_name
|
8
|
+
@datastore = datastore
|
9
|
+
end
|
10
|
+
|
11
|
+
def success
|
12
|
+
RestClient.put(datastore, payload.to_json) unless datastore.nil?
|
13
|
+
rescue RestClient::Exception
|
14
|
+
#just dont explode the back up task
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
attr_reader :task_name, :db_name, :datastore
|
20
|
+
|
21
|
+
def rev
|
22
|
+
payload = RestClient.get(datastore)
|
23
|
+
JSON.parse(payload)['_rev']
|
24
|
+
end
|
25
|
+
|
26
|
+
def payload
|
27
|
+
{
|
28
|
+
"_rev" => rev,
|
29
|
+
"app"=> db_name,
|
30
|
+
"timestamp"=> Time.now.to_s,
|
31
|
+
"js_timestamp" => Time.now.to_i,
|
32
|
+
"task_name" => task_name
|
33
|
+
}
|
34
|
+
end
|
35
|
+
end
|
data/lib/filbert/task.rb
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'filbert/db_config'
|
2
|
+
require 'filbert/log'
|
2
3
|
require 'clean_files/cleaner'
|
3
4
|
|
4
5
|
module Filbert
|
@@ -6,6 +7,7 @@ module Filbert
|
|
6
7
|
include Thor::Actions
|
7
8
|
|
8
9
|
method_option :app, type: :string, required: true
|
10
|
+
method_option :log, type: :string, required: false
|
9
11
|
desc "backup", "capture and pull latest production snapshot and migrate local database"
|
10
12
|
def backup
|
11
13
|
say "Looking for the follower DB..."
|
@@ -18,11 +20,12 @@ module Filbert
|
|
18
20
|
say "Downloading #{backup_url}"
|
19
21
|
get backup_url, file_path
|
20
22
|
say file_path
|
23
|
+
Log.new(:backup, db_name, options[:log]).success if File.exists?(file_path) && options[:log]
|
21
24
|
invoke :cleanup, [], {}
|
22
25
|
end
|
23
26
|
|
24
27
|
method_option :pretend, type: :boolean, required: false, default: false, aliases: '-p'
|
25
|
-
desc "cleanup", "
|
28
|
+
desc "cleanup", "Remove old dumps intelligently keeping some of them"
|
26
29
|
def cleanup
|
27
30
|
pretend = options[:pretend]
|
28
31
|
say "Would remove:" if pretend
|
@@ -111,4 +114,4 @@ module Filbert
|
|
111
114
|
end
|
112
115
|
end
|
113
116
|
end
|
114
|
-
end
|
117
|
+
end
|
data/lib/filbert/version.rb
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
module Filbert
|
2
|
-
VERSION = '0.1.
|
3
|
-
end
|
2
|
+
VERSION = '0.1.1'
|
3
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: filbert
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tadas Tamosauskas
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-
|
11
|
+
date: 2013-07-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: heroku
|
@@ -70,6 +70,7 @@ files:
|
|
70
70
|
- filbert.gemspec
|
71
71
|
- lib/filbert.rb
|
72
72
|
- lib/filbert/db_config.rb
|
73
|
+
- lib/filbert/log.rb
|
73
74
|
- lib/filbert/task.rb
|
74
75
|
- lib/filbert/version.rb
|
75
76
|
homepage: https://github.com/alphasights/filbert
|
@@ -91,7 +92,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
91
92
|
version: '0'
|
92
93
|
requirements: []
|
93
94
|
rubyforge_project:
|
94
|
-
rubygems_version: 2.0.
|
95
|
+
rubygems_version: 2.0.2
|
95
96
|
signing_key:
|
96
97
|
specification_version: 4
|
97
98
|
summary: Heroku followers' backups
|