backup 3.0.27 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE.md +1 -1
- data/README.md +139 -386
- data/bin/backup +1 -7
- data/lib/backup.rb +3 -9
- data/lib/backup/archive.rb +26 -20
- data/lib/backup/cleaner.rb +2 -2
- data/lib/backup/cli.rb +366 -0
- data/lib/backup/compressor/base.rb +2 -2
- data/lib/backup/compressor/gzip.rb +35 -1
- data/lib/backup/config.rb +1 -2
- data/lib/backup/database/base.rb +2 -2
- data/lib/backup/database/mongodb.rb +3 -3
- data/lib/backup/database/mysql.rb +3 -2
- data/lib/backup/database/postgresql.rb +3 -2
- data/lib/backup/database/riak.rb +18 -5
- data/lib/backup/dependency.rb +144 -93
- data/lib/backup/encryptor/base.rb +2 -2
- data/lib/backup/logger.rb +108 -110
- data/lib/backup/logger/console.rb +51 -0
- data/lib/backup/logger/logfile.rb +113 -0
- data/lib/backup/logger/syslog.rb +116 -0
- data/lib/backup/model.rb +67 -65
- data/lib/backup/notifier/base.rb +1 -1
- data/lib/backup/notifier/hipchat.rb +1 -1
- data/lib/backup/notifier/mail.rb +1 -1
- data/lib/backup/notifier/pushover.rb +6 -3
- data/lib/backup/packager.rb +4 -4
- data/lib/backup/pipeline.rb +17 -3
- data/lib/backup/splitter.rb +2 -2
- data/lib/backup/storage/base.rb +2 -2
- data/lib/backup/storage/cloudfiles.rb +2 -2
- data/lib/backup/storage/dropbox.rb +4 -4
- data/lib/backup/storage/ftp.rb +2 -2
- data/lib/backup/storage/local.rb +2 -2
- data/lib/backup/storage/ninefold.rb +2 -2
- data/lib/backup/storage/rsync.rb +3 -3
- data/lib/backup/storage/s3.rb +2 -2
- data/lib/backup/storage/scp.rb +2 -6
- data/lib/backup/storage/sftp.rb +2 -5
- data/lib/backup/syncer/base.rb +1 -1
- data/lib/backup/syncer/cloud/base.rb +15 -8
- data/lib/backup/syncer/rsync/local.rb +1 -1
- data/lib/backup/syncer/rsync/pull.rb +1 -1
- data/lib/backup/syncer/rsync/push.rb +1 -1
- data/lib/backup/utilities.rb +211 -0
- data/lib/backup/version.rb +1 -1
- data/templates/cli/{utility/archive → archive} +4 -8
- data/templates/cli/{utility/compressor → compressor}/bzip2 +0 -0
- data/templates/cli/{utility/compressor → compressor}/custom +0 -0
- data/templates/cli/{utility/compressor → compressor}/gzip +0 -0
- data/templates/cli/{utility/compressor → compressor}/lzma +0 -0
- data/templates/cli/{utility/compressor → compressor}/pbzip2 +0 -0
- data/templates/cli/config +68 -0
- data/templates/cli/{utility/database → database}/mongodb +1 -1
- data/templates/cli/{utility/database → database}/mysql +1 -1
- data/templates/cli/{utility/database → database}/postgresql +1 -1
- data/templates/cli/{utility/database → database}/redis +0 -0
- data/templates/cli/database/riak +20 -0
- data/templates/cli/{utility/encryptor → encryptor}/gpg +0 -0
- data/templates/cli/{utility/encryptor → encryptor}/openssl +0 -0
- data/templates/cli/{utility/model.erb → model.erb} +4 -4
- data/templates/cli/{utility/notifier → notifier}/campfire +0 -0
- data/templates/cli/{utility/notifier → notifier}/hipchat +0 -0
- data/templates/cli/{utility/notifier → notifier}/mail +0 -0
- data/templates/cli/{utility/notifier → notifier}/prowl +0 -0
- data/templates/cli/{utility/notifier → notifier}/pushover +0 -0
- data/templates/cli/{utility/notifier → notifier}/twitter +0 -0
- data/templates/cli/{utility/splitter → splitter} +0 -0
- data/templates/cli/{utility/storage → storage}/cloud_files +0 -0
- data/templates/cli/{utility/storage → storage}/dropbox +0 -0
- data/templates/cli/{utility/storage → storage}/ftp +0 -0
- data/templates/cli/{utility/storage → storage}/local +0 -0
- data/templates/cli/{utility/storage → storage}/ninefold +0 -0
- data/templates/cli/{utility/storage → storage}/rsync +0 -0
- data/templates/cli/{utility/storage → storage}/s3 +0 -0
- data/templates/cli/{utility/storage → storage}/scp +0 -0
- data/templates/cli/{utility/storage → storage}/sftp +0 -0
- data/templates/cli/{utility/syncer → syncer}/cloud_files +0 -0
- data/templates/cli/{utility/syncer → syncer}/rsync_local +0 -0
- data/templates/cli/{utility/syncer → syncer}/rsync_pull +0 -0
- data/templates/cli/{utility/syncer → syncer}/rsync_push +0 -0
- data/templates/cli/{utility/syncer → syncer}/s3 +0 -0
- metadata +55 -131
- data/.gitignore +0 -8
- data/.travis.yml +0 -10
- data/Gemfile +0 -28
- data/Guardfile +0 -23
- data/backup.gemspec +0 -32
- data/lib/backup/cli/helpers.rb +0 -93
- data/lib/backup/cli/utility.rb +0 -255
- data/spec-live/.gitignore +0 -6
- data/spec-live/README +0 -7
- data/spec-live/backups/config.rb +0 -83
- data/spec-live/backups/config.yml.template +0 -46
- data/spec-live/backups/models.rb +0 -184
- data/spec-live/compressor/custom_spec.rb +0 -30
- data/spec-live/compressor/gzip_spec.rb +0 -30
- data/spec-live/encryptor/gpg_keys.rb +0 -239
- data/spec-live/encryptor/gpg_spec.rb +0 -287
- data/spec-live/notifier/mail_spec.rb +0 -121
- data/spec-live/spec_helper.rb +0 -151
- data/spec-live/storage/dropbox_spec.rb +0 -151
- data/spec-live/storage/local_spec.rb +0 -83
- data/spec-live/storage/scp_spec.rb +0 -193
- data/spec-live/syncer/cloud/s3_spec.rb +0 -124
- data/spec/archive_spec.rb +0 -335
- data/spec/cleaner_spec.rb +0 -312
- data/spec/cli/helpers_spec.rb +0 -301
- data/spec/cli/utility_spec.rb +0 -411
- data/spec/compressor/base_spec.rb +0 -52
- data/spec/compressor/bzip2_spec.rb +0 -217
- data/spec/compressor/custom_spec.rb +0 -106
- data/spec/compressor/gzip_spec.rb +0 -217
- data/spec/compressor/lzma_spec.rb +0 -123
- data/spec/compressor/pbzip2_spec.rb +0 -165
- data/spec/config_spec.rb +0 -321
- data/spec/configuration/helpers_spec.rb +0 -247
- data/spec/configuration/store_spec.rb +0 -39
- data/spec/configuration_spec.rb +0 -62
- data/spec/database/base_spec.rb +0 -63
- data/spec/database/mongodb_spec.rb +0 -510
- data/spec/database/mysql_spec.rb +0 -411
- data/spec/database/postgresql_spec.rb +0 -353
- data/spec/database/redis_spec.rb +0 -334
- data/spec/database/riak_spec.rb +0 -176
- data/spec/dependency_spec.rb +0 -51
- data/spec/encryptor/base_spec.rb +0 -40
- data/spec/encryptor/gpg_spec.rb +0 -909
- data/spec/encryptor/open_ssl_spec.rb +0 -148
- data/spec/errors_spec.rb +0 -306
- data/spec/logger_spec.rb +0 -367
- data/spec/model_spec.rb +0 -666
- data/spec/notifier/base_spec.rb +0 -104
- data/spec/notifier/campfire_spec.rb +0 -217
- data/spec/notifier/hipchat_spec.rb +0 -211
- data/spec/notifier/mail_spec.rb +0 -316
- data/spec/notifier/prowl_spec.rb +0 -138
- data/spec/notifier/pushover_spec.rb +0 -123
- data/spec/notifier/twitter_spec.rb +0 -153
- data/spec/package_spec.rb +0 -61
- data/spec/packager_spec.rb +0 -213
- data/spec/pipeline_spec.rb +0 -259
- data/spec/spec_helper.rb +0 -60
- data/spec/splitter_spec.rb +0 -120
- data/spec/storage/base_spec.rb +0 -166
- data/spec/storage/cloudfiles_spec.rb +0 -254
- data/spec/storage/cycler_spec.rb +0 -247
- data/spec/storage/dropbox_spec.rb +0 -480
- data/spec/storage/ftp_spec.rb +0 -271
- data/spec/storage/local_spec.rb +0 -259
- data/spec/storage/ninefold_spec.rb +0 -343
- data/spec/storage/rsync_spec.rb +0 -362
- data/spec/storage/s3_spec.rb +0 -245
- data/spec/storage/scp_spec.rb +0 -233
- data/spec/storage/sftp_spec.rb +0 -244
- data/spec/syncer/base_spec.rb +0 -109
- data/spec/syncer/cloud/base_spec.rb +0 -515
- data/spec/syncer/cloud/cloud_files_spec.rb +0 -181
- data/spec/syncer/cloud/s3_spec.rb +0 -174
- data/spec/syncer/rsync/base_spec.rb +0 -98
- data/spec/syncer/rsync/local_spec.rb +0 -149
- data/spec/syncer/rsync/pull_spec.rb +0 -98
- data/spec/syncer/rsync/push_spec.rb +0 -333
- data/spec/version_spec.rb +0 -21
- data/templates/cli/utility/config +0 -32
- data/templates/cli/utility/database/riak +0 -11
data/spec-live/.gitignore
DELETED
data/spec-live/README
DELETED
data/spec-live/backups/config.rb
DELETED
@@ -1,83 +0,0 @@
|
|
1
|
-
##
|
2
|
-
# Configuration Defaults
|
3
|
-
#
|
4
|
-
# Note that once config.rb has been loaded once and class defaults are set,
|
5
|
-
# there's nothing clearing these between each test. Keep this in mind, as this
|
6
|
-
# file will be loaded for every call to h_set_trigger() or h_set_single_model().
|
7
|
-
# While not a problem, this wouldn't happen for a normal `backup perform ...`.
|
8
|
-
|
9
|
-
Backup::Storage::Local.defaults do |storage|
|
10
|
-
storage.path = SpecLive::TMP_PATH
|
11
|
-
storage.keep = 2
|
12
|
-
end
|
13
|
-
|
14
|
-
# SSH operations can be tested against 'localhost'
|
15
|
-
# To do this, in the config.yml file:
|
16
|
-
# - set username/password for your current user
|
17
|
-
# - set ip to 'localhost'
|
18
|
-
# Although optional, it's recommended you set the 'path'
|
19
|
-
# to the same path as Backup::SpecLive::TMP_PATH
|
20
|
-
# i.e. '/absolute/path/to/spec-live/tmp'
|
21
|
-
# This way, cleaning the "remote path" can be skipped.
|
22
|
-
Backup::Storage::SCP.defaults do |storage|
|
23
|
-
opts = SpecLive::CONFIG['storage']['scp']
|
24
|
-
|
25
|
-
storage.username = opts['username']
|
26
|
-
storage.password = opts['password']
|
27
|
-
storage.ip = opts['ip']
|
28
|
-
storage.port = opts['port']
|
29
|
-
storage.path = opts['path']
|
30
|
-
storage.keep = 2
|
31
|
-
end
|
32
|
-
|
33
|
-
Backup::Storage::Dropbox.defaults do |storage|
|
34
|
-
opts = SpecLive::CONFIG['storage']['dropbox']
|
35
|
-
|
36
|
-
storage.api_key = opts['api_key']
|
37
|
-
storage.api_secret = opts['api_secret']
|
38
|
-
storage.access_type = opts['access_type']
|
39
|
-
storage.path = opts['path']
|
40
|
-
storage.keep = 2
|
41
|
-
end
|
42
|
-
|
43
|
-
Backup::Notifier::Mail.defaults do |notifier|
|
44
|
-
opts = SpecLive::CONFIG['notifier']['mail']
|
45
|
-
|
46
|
-
notifier.on_success = true
|
47
|
-
notifier.on_warning = true
|
48
|
-
notifier.on_failure = true
|
49
|
-
|
50
|
-
notifier.delivery_method = opts['delivery_method']
|
51
|
-
notifier.from = opts['from']
|
52
|
-
notifier.to = opts['to']
|
53
|
-
notifier.address = opts['address']
|
54
|
-
notifier.port = opts['port'] || 587
|
55
|
-
notifier.domain = opts['domain']
|
56
|
-
notifier.user_name = opts['user_name']
|
57
|
-
notifier.password = opts['password']
|
58
|
-
notifier.authentication = opts['authentication'] || 'plain'
|
59
|
-
notifier.enable_starttls_auto = opts['enable_starttls_auto'] || true
|
60
|
-
notifier.sendmail = opts['sendmail']
|
61
|
-
notifier.sendmail_args = opts['sendmail_args']
|
62
|
-
notifier.mail_folder = SpecLive::TMP_PATH
|
63
|
-
end
|
64
|
-
|
65
|
-
Backup::Syncer::Cloud::S3.defaults do |s3|
|
66
|
-
opts = SpecLive::CONFIG['syncer']['cloud']['s3']
|
67
|
-
|
68
|
-
s3.access_key_id = opts['access_key_id']
|
69
|
-
s3.secret_access_key = opts['secret_access_key']
|
70
|
-
s3.bucket = opts['bucket']
|
71
|
-
s3.region = opts['region']
|
72
|
-
s3.mirror = true
|
73
|
-
end
|
74
|
-
|
75
|
-
Backup::Encryptor::GPG.defaults do |enc|
|
76
|
-
enc.gpg_homedir = File.join(SpecLive::TMP_PATH, 'gpg_home_tmp')
|
77
|
-
end
|
78
|
-
|
79
|
-
##
|
80
|
-
# Load the Models, unless h_set_single_model() is being used.
|
81
|
-
if SpecLive.load_models
|
82
|
-
instance_eval File.read(File.join(File.dirname(__FILE__), 'models.rb'))
|
83
|
-
end
|
@@ -1,46 +0,0 @@
|
|
1
|
-
##
|
2
|
-
# config.yml template
|
3
|
-
# for usage, see:
|
4
|
-
# spec-live/spec_helper.rb
|
5
|
-
# spec-live/backups/config.rb
|
6
|
-
##
|
7
|
-
---
|
8
|
-
storage:
|
9
|
-
scp:
|
10
|
-
specs_enabled: false
|
11
|
-
username: <current user name>
|
12
|
-
password: <password>
|
13
|
-
ip: localhost
|
14
|
-
port: 22
|
15
|
-
path: /absolute/path/to/spec-live/tmp
|
16
|
-
dropbox:
|
17
|
-
specs_enabled: false
|
18
|
-
api_key: <your key>
|
19
|
-
api_secret: <your secret>
|
20
|
-
path:
|
21
|
-
timeout:
|
22
|
-
notifier:
|
23
|
-
mail:
|
24
|
-
specs_enabled: false
|
25
|
-
delivery_method: smtp
|
26
|
-
from: <from email>
|
27
|
-
to: <to email>
|
28
|
-
address: smtp.gmail.com
|
29
|
-
port: 587
|
30
|
-
user_name: <user name>
|
31
|
-
password: <password>
|
32
|
-
authentication: plain
|
33
|
-
enable_starttls_auto: true
|
34
|
-
sendmail:
|
35
|
-
sendmail_args:
|
36
|
-
syncer:
|
37
|
-
cloud:
|
38
|
-
s3:
|
39
|
-
specs_enabled: false
|
40
|
-
access_key_id:
|
41
|
-
secret_access_key:
|
42
|
-
bucket:
|
43
|
-
region:
|
44
|
-
encryptor:
|
45
|
-
gpg:
|
46
|
-
specs_enabled: false
|
data/spec-live/backups/models.rb
DELETED
@@ -1,184 +0,0 @@
|
|
1
|
-
##
|
2
|
-
# Models
|
3
|
-
|
4
|
-
Backup::Model.new(:archive_local, 'test_label') do
|
5
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
6
|
-
store_with Local
|
7
|
-
end
|
8
|
-
|
9
|
-
Backup::Model.new(:archive_scp, 'test_label') do
|
10
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
11
|
-
store_with SCP
|
12
|
-
end
|
13
|
-
|
14
|
-
# To initialize the Dropbox session cache, run manually first using:
|
15
|
-
# VERBOSE=1 rspec spec-live/storage/dropbox_spec.rb --tag init
|
16
|
-
Backup::Model.new(:archive_dropbox, 'test_label') do
|
17
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
18
|
-
store_with Dropbox
|
19
|
-
end
|
20
|
-
|
21
|
-
Backup::Model.new(:compressor_gzip_archive_local, 'test_label') do
|
22
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
23
|
-
compress_with Gzip
|
24
|
-
store_with Local
|
25
|
-
end
|
26
|
-
|
27
|
-
Backup::Model.new(:compressor_custom_archive_local, 'test_label') do
|
28
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
29
|
-
compress_with Custom do |c|
|
30
|
-
c.command = 'gzip -1'
|
31
|
-
c.extension = '.foo'
|
32
|
-
end
|
33
|
-
store_with Local
|
34
|
-
end
|
35
|
-
|
36
|
-
Backup::Model.new(:notifier_mail, 'test_label') do
|
37
|
-
notify_by Mail
|
38
|
-
end
|
39
|
-
|
40
|
-
Backup::Model.new(:notifier_mail_file, 'test_label') do
|
41
|
-
notify_by Mail do |mail|
|
42
|
-
mail.to = 'test@backup'
|
43
|
-
mail.delivery_method = :file
|
44
|
-
end
|
45
|
-
end
|
46
|
-
|
47
|
-
Backup::Model.new(:syncer_cloud_s3, 'test_label') do
|
48
|
-
sync_with Cloud::S3 do |s3|
|
49
|
-
s3.directories do
|
50
|
-
add File.join(SpecLive::SYNC_PATH, 'dir_a')
|
51
|
-
add File.join(SpecLive::SYNC_PATH, 'dir_b')
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
Backup::Model.new(:encryptor_gpg_asymmetric, 'test_label') do
|
57
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
58
|
-
encrypt_with GPG do |e|
|
59
|
-
# this is the default mode
|
60
|
-
# e.mode = :asymmetric
|
61
|
-
|
62
|
-
e.keys = {
|
63
|
-
# backup03 public key (email as identifier)
|
64
|
-
'backup03@foo.com' => SpecLive::GPGKeys[:backup03][:public],
|
65
|
-
# backup04 public key (long key id as identifier)
|
66
|
-
'0F45932D3F24426D' => SpecLive::GPGKeys[:backup04][:public]
|
67
|
-
}
|
68
|
-
|
69
|
-
# The public keys for backup01 and backup02 will be in the system keyring
|
70
|
-
# when this job is run. The public keys for backup03 and backup04 will be
|
71
|
-
# imported from :keys above when they are not found in the system keyring.
|
72
|
-
e.recipients = [
|
73
|
-
# backup01 (short keyid)
|
74
|
-
'16325C61',
|
75
|
-
# backup02 (key fingerprint)
|
76
|
-
'F9A9 9BD8 A570 182F F190 037C 7118 9938 6A6A 175A',
|
77
|
-
# backup03 (email)
|
78
|
-
'backup03@foo.com',
|
79
|
-
# backup04 (long keyid)
|
80
|
-
'0F45932D3F24426D'
|
81
|
-
]
|
82
|
-
end
|
83
|
-
store_with Local
|
84
|
-
end
|
85
|
-
|
86
|
-
Backup::Model.new(:encryptor_gpg_asymmetric_missing, 'test_label') do
|
87
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
88
|
-
encrypt_with GPG do |e|
|
89
|
-
e.mode = :asymmetric
|
90
|
-
|
91
|
-
e.keys = {
|
92
|
-
'backup02@foo.com' => SpecLive::GPGKeys[:backup02][:public]
|
93
|
-
}
|
94
|
-
|
95
|
-
e.recipients = [
|
96
|
-
'backup01@foo.com', # in the system
|
97
|
-
'backup02@foo.com', # imported from #keys
|
98
|
-
'backupfoo@foo.com' # a recipient with no public key
|
99
|
-
]
|
100
|
-
end
|
101
|
-
store_with Local
|
102
|
-
end
|
103
|
-
|
104
|
-
Backup::Model.new(:encryptor_gpg_asymmetric_fail, 'test_label') do
|
105
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
106
|
-
encrypt_with GPG do |e|
|
107
|
-
# this is the default mode
|
108
|
-
# e.mode = :asymmetric
|
109
|
-
|
110
|
-
# no recipients have public keys available
|
111
|
-
e.recipients = [
|
112
|
-
'backupfoo@foo.com',
|
113
|
-
'backupfoo2@foo.com'
|
114
|
-
]
|
115
|
-
end
|
116
|
-
store_with Local
|
117
|
-
end
|
118
|
-
|
119
|
-
Backup::Model.new(:encryptor_gpg_symmetric, 'test_label') do
|
120
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
121
|
-
encrypt_with GPG do |e|
|
122
|
-
e.mode = :symmetric
|
123
|
-
e.passphrase = 'a secret'
|
124
|
-
end
|
125
|
-
store_with Local
|
126
|
-
end
|
127
|
-
|
128
|
-
Backup::Model.new(:encryptor_gpg_symmetric_with_config, 'test_label') do
|
129
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
130
|
-
encrypt_with GPG do |e|
|
131
|
-
e.mode = :symmetric
|
132
|
-
e.passphrase = 'a secret'
|
133
|
-
e.gpg_config = <<-EOS
|
134
|
-
personal-cipher-preferences AES256 CAST5
|
135
|
-
EOS
|
136
|
-
end
|
137
|
-
store_with Local
|
138
|
-
end
|
139
|
-
|
140
|
-
Backup::Model.new(:encryptor_gpg_both, 'test_label') do
|
141
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
142
|
-
encrypt_with GPG do |e|
|
143
|
-
e.mode = :both
|
144
|
-
e.passphrase = 'a secret'
|
145
|
-
|
146
|
-
e.keys = {
|
147
|
-
# backup03 public key (email as identifier)
|
148
|
-
'backup03@foo.com' => SpecLive::GPGKeys[:backup03][:public]
|
149
|
-
}
|
150
|
-
|
151
|
-
# The public key for backup01 will be in the system keyring.
|
152
|
-
# The public key for backup03 will be imported from :keys.
|
153
|
-
e.recipients = [
|
154
|
-
# backup01 (short keyid)
|
155
|
-
'16325C61',
|
156
|
-
# backup03 (email)
|
157
|
-
'backup03@foo.com'
|
158
|
-
]
|
159
|
-
end
|
160
|
-
store_with Local
|
161
|
-
end
|
162
|
-
|
163
|
-
Backup::Model.new(:encryptor_gpg_both_no_asymmetric, 'test_label') do
|
164
|
-
archive :test_archive, &SpecLive::ARCHIVE_JOB
|
165
|
-
encrypt_with GPG do |e|
|
166
|
-
e.mode = :both
|
167
|
-
e.passphrase = 'a secret'
|
168
|
-
|
169
|
-
# valid entry for backup04, but this is not one of the recipients
|
170
|
-
e.keys = {
|
171
|
-
'backup04@foo.com' => SpecLive::GPGKeys[:backup04][:public]
|
172
|
-
}
|
173
|
-
|
174
|
-
# no keys will be found for these,
|
175
|
-
# so only symmetric encryption will be possible for this backup
|
176
|
-
e.recipients = [
|
177
|
-
# backup01 (short keyid)
|
178
|
-
'16325C61',
|
179
|
-
# backup03 (email)
|
180
|
-
'backup03@foo.com'
|
181
|
-
]
|
182
|
-
end
|
183
|
-
store_with Local
|
184
|
-
end
|
@@ -1,30 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
require File.expand_path('../../spec_helper.rb', __FILE__)
|
4
|
-
|
5
|
-
describe 'Compressor::Custom' do
|
6
|
-
|
7
|
-
def archive_file_for(model)
|
8
|
-
File.join(
|
9
|
-
Backup::SpecLive::TMP_PATH,
|
10
|
-
"#{model.trigger}", model.time, "#{model.trigger}.tar"
|
11
|
-
)
|
12
|
-
end
|
13
|
-
|
14
|
-
def archive_contents_for(model)
|
15
|
-
archive_file = archive_file_for(model)
|
16
|
-
%x{ tar -tvf #{archive_file} }
|
17
|
-
end
|
18
|
-
|
19
|
-
it 'should compress an archive' do
|
20
|
-
model = h_set_trigger('compressor_custom_archive_local')
|
21
|
-
model.perform!
|
22
|
-
archive_file = archive_file_for(model)
|
23
|
-
File.exist?(archive_file).should be_true
|
24
|
-
archive_contents_for(model).should match(
|
25
|
-
/compressor_custom_archive_local\/archives\/test_archive\.tar\.foo/
|
26
|
-
)
|
27
|
-
File.stat(archive_file).size.should be > 0
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
@@ -1,30 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
require File.expand_path('../../spec_helper.rb', __FILE__)
|
4
|
-
|
5
|
-
describe 'Compressor::Gzip' do
|
6
|
-
|
7
|
-
def archive_file_for(model)
|
8
|
-
File.join(
|
9
|
-
Backup::SpecLive::TMP_PATH,
|
10
|
-
"#{model.trigger}", model.time, "#{model.trigger}.tar"
|
11
|
-
)
|
12
|
-
end
|
13
|
-
|
14
|
-
def archive_contents_for(model)
|
15
|
-
archive_file = archive_file_for(model)
|
16
|
-
%x{ tar -tvf #{archive_file} }
|
17
|
-
end
|
18
|
-
|
19
|
-
it 'should compress an archive' do
|
20
|
-
model = h_set_trigger('compressor_gzip_archive_local')
|
21
|
-
model.perform!
|
22
|
-
archive_file = archive_file_for(model)
|
23
|
-
File.exist?(archive_file).should be_true
|
24
|
-
archive_contents_for(model).should match(
|
25
|
-
/compressor_gzip_archive_local\/archives\/test_archive\.tar\.gz/
|
26
|
-
)
|
27
|
-
File.stat(archive_file).size.should be > 0
|
28
|
-
end
|
29
|
-
|
30
|
-
end
|
@@ -1,239 +0,0 @@
|
|
1
|
-
# encoding: utf-8
|
2
|
-
|
3
|
-
module Backup
|
4
|
-
module SpecLive
|
5
|
-
GPGKeys = Hash.new {|h,k| h[k] = {} }
|
6
|
-
|
7
|
-
GPGKeys[:backup01][:long_id] = '8F5D150616325C61'
|
8
|
-
GPGKeys[:backup01][:public] = <<-EOS
|
9
|
-
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
10
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
11
|
-
|
12
|
-
mI0EUBR6CwEEAMVSlFtAXO4jXYnVFAWy6chyaMw+gXOFKlWojNXOOKmE3SujdLKh
|
13
|
-
kWqnafx7VNrb8cjqxz6VZbumN9UgerFpusM3uLCYHnwyv/rGMf4cdiuX7gGltwGb
|
14
|
-
dwP18gzdDanXYvO4G7qtk8DH1lRI/TnLH8wAoY/DthSR//wcP33GxRnrABEBAAG0
|
15
|
-
HkJhY2t1cCBUZXN0IDxiYWNrdXAwMUBmb28uY29tPoi4BBMBAgAiBQJQFHoLAhsD
|
16
|
-
BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRCPXRUGFjJcYZc5A/91HQ4+BXUw
|
17
|
-
KUHmpGyD+6b42xl3eBdmBVimCYTgfRUyRQEDWzHV4a3cYWwe30J/LzfFn1E6uVwz
|
18
|
-
6SHtzwZddWwONRgC/Q7V0TrnLeuv46MKoB24EFqfbr0kosuZgHPuK4h+rLmaPVCM
|
19
|
-
kv9DcKCupGnFzoaZ7tdgQAXzGepZQZU0sbiNBFAUegsBBACXX6cGjaENoOMyibXh
|
20
|
-
HLlEOKWwlxDgo3bSu6U8kISUmwxH/MO4I/u7BAQBczitNYSWovlbvCcxCy4h12qj
|
21
|
-
gruN5INIDGsEfDSWcN3lxBZ+9J+FhngBjETeADFaPxoele9wVGdIYdLIP6RntK/D
|
22
|
-
6F2ER8sb57YYtK50iyyuYQqSeQARAQABiJ8EGAECAAkFAlAUegsCGwwACgkQj10V
|
23
|
-
BhYyXGEq7AP/Y/k1A6nrCC6bfkHFMJmEJDe0Wb6q8P3gcBqNuf8iOwk53UdoXU0Q
|
24
|
-
JcPAQd/sJy6914huN2dzbVCSchSkLRXgejI0Xf5go1sDzspVKEflu0CWZ3A976QH
|
25
|
-
mLekS3xntUhhgHKc4lhf4IVBqG4cFmwSZ0tZEJJUSESb3TqkkdnNLjE=
|
26
|
-
=KEW+
|
27
|
-
-----END PGP PUBLIC KEY BLOCK-----
|
28
|
-
EOS
|
29
|
-
GPGKeys[:backup01][:private] = <<-EOS
|
30
|
-
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
31
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
32
|
-
|
33
|
-
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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
+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
-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
-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
-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
-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
-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
-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
-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
-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
-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
|
61
|
-
=ls9W
|
62
|
-
-----END PGP PRIVATE KEY BLOCK-----
|
63
|
-
EOS
|
64
|
-
|
65
|
-
GPGKeys[:backup02][:long_id] = '711899386A6A175A'
|
66
|
-
GPGKeys[:backup02][:public] = <<-EOS
|
67
|
-
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
68
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
69
|
-
|
70
|
-
mI0EUBR6JQEEAMPuY4qoKR7MpZA7D+KRrhiJRCT8t5F4IZ+gq7FBCfwoopcStlin
|
71
|
-
nTGRL1F/UEngu5xHgLsERzPdKNoTpoy1aCcgB7i9vyi2bA3iNGs1YzWqf1vGJxEp
|
72
|
-
+CXXtlBU+QYod6wRMK4cHKVjPaD+Ga+saU1Pz9tBGYAbADYVmhJd7R21ABEBAAG0
|
73
|
-
HkJhY2t1cCBUZXN0IDxiYWNrdXAwMkBmb28uY29tPoi4BBMBAgAiBQJQFHolAhsD
|
74
|
-
BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBxGJk4amoXWjJxA/sG60qZMn40
|
75
|
-
IP0pjuY+3kc5199xcavxgHZdQTBq2vrJHzr3K8Zk8xxSCADRJf4++t4+8yG7g9rk
|
76
|
-
bmEAeGoFBIbdx7zGcxYIe5g9UG/+eDCJ44HCb0v8vHUT7iqt5Jk6cryYtcYvqO6I
|
77
|
-
84HXdXz4rCMCUeRP4ceMCZB6GZKDXR8zoriNBFAUeiUBBADEEOUdfCmwJ5BEPWzm
|
78
|
-
QTGcp2dSY8SgpbZtk23LvWIlEziYflIqOGeL623AOBb9S2FChR+zPyOA9D3LEZrA
|
79
|
-
PF8TS3YY+qjBdiXLKchRr5y2Kwylh/vVdcCcgTjfPkga4pGq+cHBOevPiqAvoCtO
|
80
|
-
ntN7+Cqk3B7nWTPQRFDQJVThwwARAQABiJ8EGAECAAkFAlAUeiUCGwwACgkQcRiZ
|
81
|
-
OGpqF1oNNgP/adkSZZVaYy/JEHjjrtC9UwirSluAdHQZGPGv/FHaFou+4mlLi0+R
|
82
|
-
gQLieU+3AHFSWVYMNjIsSjA4hhMLchteFlJnbkGAFUaA2QUoyf7cSSmdpNKQdDdZ
|
83
|
-
oe3OXEQM2pUTEwE9AqKXthrSMQuJ5bozm8zHm/CohZPHGTeQH75Kq/4=
|
84
|
-
=AgbQ
|
85
|
-
-----END PGP PUBLIC KEY BLOCK-----
|
86
|
-
EOS
|
87
|
-
GPGKeys[:backup02][:private] = <<-EOS
|
88
|
-
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
89
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
90
|
-
|
91
|
-
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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
+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
-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
-
ephoNZKsmU2Xhbpf/au8uNwXLtaCEgZoC04JGlGzbX4gJXyUooW+/paxZMQFWFlM
|
111
|
-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
-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
-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
-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
-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
-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
-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
-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
|
119
|
-
=+a/7
|
120
|
-
-----END PGP PRIVATE KEY BLOCK-----
|
121
|
-
EOS
|
122
|
-
|
123
|
-
GPGKeys[:backup03][:long_id] = '5847D49DD791E4FA'
|
124
|
-
GPGKeys[:backup03][:public] = <<-EOS
|
125
|
-
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
126
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
127
|
-
|
128
|
-
mI0EUBR4LgEEAL6TxhYYNEirawnp/fmc0TwKYVSiTk60qGJyspEj0QKJ3MmunC/o
|
129
|
-
YX+5k8HN68BKP7xkJyHYFdXCJn2HqSbj0T7oV4scQGLJSO5adNa/6uMDZIA6Ptt4
|
130
|
-
UFOwdc8bnV9sDQTdrp2Gqsxi3f34WX0DV7/KrMD/jQJ9hiWphXSmvaV9ABEBAAG0
|
131
|
-
HkJhY2t1cCBUZXN0IDxiYWNrdXAwM0Bmb28uY29tPoi4BBMBAgAiBQJQFHguAhsD
|
132
|
-
BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRBYR9Sd15Hk+shkA/4yev3zyK+/
|
133
|
-
jPZQgFLq10biRDYMdWk4ysHCkSbBi4GMnjIanBFk6ggbH/jQIb79oZRv2MB/N8Ag
|
134
|
-
4s1oZdC5W1gSCg4m4pUB06NkKD4NvKAHHzsfr93farAct1zBQJ19e2ErFeo2Bb5G
|
135
|
-
uAvf2VWziMQD9aB0lF6tf/CToeWp+2xK77iNBFAUeC4BBADGwKc66SFldjN9dIxk
|
136
|
-
NYWLwCSvEgsOUdQpYckWLeUFnvKMpOW9+0Q5fc7QZuTs4TnT6cHjKk7F4ZQpMlqy
|
137
|
-
vc5H99vfp+/fus4LyAYIZKXmuc44SWwxU0y2MsGguFZbWKctQLquKD3uk3S8LPvY
|
138
|
-
wYn5weLVOhoUgbYGi6HeK8hkuQARAQABiJ8EGAECAAkFAlAUeC4CGwwACgkQWEfU
|
139
|
-
ndeR5PqQIQP8DMrzFSpyOEsxWRC8x4dhBtpptjO2MIS9FsX9pmycC52V9mCQX5pb
|
140
|
-
5ZN6YPHOArYNUQfrXGRrOQFAPuNaucet/w39KIOmMZGPRGzOkTmp4AEhO7fKtuw8
|
141
|
-
/oWOO6hlX/rG4JNZUu3DQEt8WKCV9dHGxNWkxEptRA/CRYW4aj0MkaE=
|
142
|
-
=dxCg
|
143
|
-
-----END PGP PUBLIC KEY BLOCK-----
|
144
|
-
EOS
|
145
|
-
GPGKeys[:backup03][:private] = <<-EOS
|
146
|
-
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
147
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
148
|
-
|
149
|
-
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
-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
-
eFBTsHXPG51fbA0E3a6dhqrMYt39+Fl9A1e/yqzA/40CfYYlqYV0pr2lfQARAQAB
|
152
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
|
177
|
-
=6CYb
|
178
|
-
-----END PGP PRIVATE KEY BLOCK-----
|
179
|
-
EOS
|
180
|
-
|
181
|
-
GPGKeys[:backup04][:long_id] = '0F45932D3F24426D'
|
182
|
-
GPGKeys[:backup04][:public] = <<-EOS
|
183
|
-
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
184
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
185
|
-
|
186
|
-
mI0EUBR40wEEAMLAMVwpXCeEz1QZPJc8RFwAUBZRc/FYZ+CY4RKfQKZPuBMyzz3y
|
187
|
-
mk3gFB8raw2nycH00zwrP/qm/gIBzpCza+87uqGrB8bezgHoU1CaFnO0ZNUzyB8j
|
188
|
-
FsaQ/7BScjFNQp4RvbryZJUMXJ0V8fV9mQMe+O83CskabLCS4UY6EhWXABEBAAG0
|
189
|
-
HkJhY2t1cCBUZXN0IDxiYWNrdXAwNEBmb28uY29tPoi4BBMBAgAiBQJQFHjTAhsD
|
190
|
-
BgsJCAcDAgYVCAIJCgsEFgIDAQIeAQIXgAAKCRAPRZMtPyRCbU30A/0YU8U7EOKd
|
191
|
-
5jSKhkAN50n4Cvwr0uOfC3UoJHInglRc+hDLB5ZF5GMqSfLYIb6/saY99Xb76l7i
|
192
|
-
k/0Q+rpk0AJ/dbY2ARrPqetleTPBsjrQbj9pzU4yvpYohpippjUbGAo74ssRGJoX
|
193
|
-
28O98TXn8+q3bcz7bbLBmYj1Fy4QrSpBj7iNBFAUeNMBBADNBWFF0UFiPOCh9g3P
|
194
|
-
qOAYOXRsmEpLwGBGUB5ZdWzkIGrvs3KjTxIgy+uvx5Q8nX7+OLePaR9BM0qyryzz
|
195
|
-
LLjEKuaeDk1KelZ6/aV4ErgBUfVDs8pniLrSUqD65o18PL+T6nQ4aUYpgcqdb7t/
|
196
|
-
/by/yzt0+eEaAoArm0B8IdzB/QARAQABiJ8EGAECAAkFAlAUeNMCGwwACgkQD0WT
|
197
|
-
LT8kQm2LDgP/cUpWPR/GVdwLlbUIWBh37lLHEEuppZFg2P15Pv0UK9pNxCFhGouS
|
198
|
-
eBXW8xC/mvOrf7mj/tEV3CxGvIFdebtraEwLUQW0109vWHNclK6/SvmSNcaPo1t0
|
199
|
-
FtsIP4HI4ymvvTKUObfQliRdk1u1wY7sCWGarQgN9NtHuuyYP5+wmYg=
|
200
|
-
=LfdH
|
201
|
-
-----END PGP PUBLIC KEY BLOCK-----
|
202
|
-
EOS
|
203
|
-
GPGKeys[:backup04][:private] = <<-EOS
|
204
|
-
-----BEGIN PGP PRIVATE KEY BLOCK-----
|
205
|
-
Version: GnuPG v1.4.12 (GNU/Linux)
|
206
|
-
|
207
|
-
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
-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
-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
-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
-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
-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
-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
-
47kNwDMCAOsESXIs/RBg2RDactjqxj5TVn/T0PMZ1AhV2BPl2RmP/bnwyBWy0O9N
|
215
|
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-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
-
/3FKVj0fxlXcC5W1CFgYd+5SxxBLqaWRYNj9eT79FCvaTcQhYRqLkngV1vMQv5rz
|
233
|
-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
-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
|
235
|
-
=I+GJ
|
236
|
-
-----END PGP PRIVATE KEY BLOCK-----
|
237
|
-
EOS
|
238
|
-
end
|
239
|
-
end
|