cm-backup 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (133) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +20 -0
  3. data/bin/backup +5 -0
  4. data/lib/backup.rb +144 -0
  5. data/lib/backup/archive.rb +170 -0
  6. data/lib/backup/binder.rb +22 -0
  7. data/lib/backup/cleaner.rb +116 -0
  8. data/lib/backup/cli.rb +374 -0
  9. data/lib/backup/cloud_io/base.rb +41 -0
  10. data/lib/backup/cloud_io/cloud_files.rb +298 -0
  11. data/lib/backup/cloud_io/s3.rb +260 -0
  12. data/lib/backup/compressor/base.rb +35 -0
  13. data/lib/backup/compressor/bzip2.rb +39 -0
  14. data/lib/backup/compressor/custom.rb +53 -0
  15. data/lib/backup/compressor/gzip.rb +74 -0
  16. data/lib/backup/config.rb +119 -0
  17. data/lib/backup/config/dsl.rb +103 -0
  18. data/lib/backup/config/helpers.rb +143 -0
  19. data/lib/backup/database/base.rb +85 -0
  20. data/lib/backup/database/mongodb.rb +187 -0
  21. data/lib/backup/database/mysql.rb +192 -0
  22. data/lib/backup/database/openldap.rb +95 -0
  23. data/lib/backup/database/postgresql.rb +133 -0
  24. data/lib/backup/database/redis.rb +179 -0
  25. data/lib/backup/database/riak.rb +82 -0
  26. data/lib/backup/database/sqlite.rb +57 -0
  27. data/lib/backup/encryptor/base.rb +29 -0
  28. data/lib/backup/encryptor/gpg.rb +747 -0
  29. data/lib/backup/encryptor/open_ssl.rb +77 -0
  30. data/lib/backup/errors.rb +58 -0
  31. data/lib/backup/logger.rb +199 -0
  32. data/lib/backup/logger/console.rb +51 -0
  33. data/lib/backup/logger/fog_adapter.rb +29 -0
  34. data/lib/backup/logger/logfile.rb +133 -0
  35. data/lib/backup/logger/syslog.rb +116 -0
  36. data/lib/backup/model.rb +479 -0
  37. data/lib/backup/notifier/base.rb +128 -0
  38. data/lib/backup/notifier/campfire.rb +63 -0
  39. data/lib/backup/notifier/command.rb +102 -0
  40. data/lib/backup/notifier/datadog.rb +107 -0
  41. data/lib/backup/notifier/flowdock.rb +103 -0
  42. data/lib/backup/notifier/hipchat.rb +118 -0
  43. data/lib/backup/notifier/http_post.rb +117 -0
  44. data/lib/backup/notifier/mail.rb +249 -0
  45. data/lib/backup/notifier/nagios.rb +69 -0
  46. data/lib/backup/notifier/pagerduty.rb +81 -0
  47. data/lib/backup/notifier/prowl.rb +68 -0
  48. data/lib/backup/notifier/pushover.rb +74 -0
  49. data/lib/backup/notifier/ses.rb +105 -0
  50. data/lib/backup/notifier/slack.rb +148 -0
  51. data/lib/backup/notifier/twitter.rb +58 -0
  52. data/lib/backup/notifier/zabbix.rb +63 -0
  53. data/lib/backup/package.rb +55 -0
  54. data/lib/backup/packager.rb +107 -0
  55. data/lib/backup/pipeline.rb +124 -0
  56. data/lib/backup/splitter.rb +76 -0
  57. data/lib/backup/storage/base.rb +69 -0
  58. data/lib/backup/storage/cloud_files.rb +158 -0
  59. data/lib/backup/storage/cycler.rb +75 -0
  60. data/lib/backup/storage/dropbox.rb +212 -0
  61. data/lib/backup/storage/ftp.rb +112 -0
  62. data/lib/backup/storage/local.rb +64 -0
  63. data/lib/backup/storage/qiniu.rb +65 -0
  64. data/lib/backup/storage/rsync.rb +248 -0
  65. data/lib/backup/storage/s3.rb +156 -0
  66. data/lib/backup/storage/scp.rb +67 -0
  67. data/lib/backup/storage/sftp.rb +82 -0
  68. data/lib/backup/syncer/base.rb +70 -0
  69. data/lib/backup/syncer/cloud/base.rb +179 -0
  70. data/lib/backup/syncer/cloud/cloud_files.rb +83 -0
  71. data/lib/backup/syncer/cloud/local_file.rb +100 -0
  72. data/lib/backup/syncer/cloud/s3.rb +110 -0
  73. data/lib/backup/syncer/rsync/base.rb +54 -0
  74. data/lib/backup/syncer/rsync/local.rb +31 -0
  75. data/lib/backup/syncer/rsync/pull.rb +51 -0
  76. data/lib/backup/syncer/rsync/push.rb +205 -0
  77. data/lib/backup/template.rb +46 -0
  78. data/lib/backup/utilities.rb +224 -0
  79. data/lib/backup/version.rb +5 -0
  80. data/templates/cli/archive +28 -0
  81. data/templates/cli/compressor/bzip2 +4 -0
  82. data/templates/cli/compressor/custom +7 -0
  83. data/templates/cli/compressor/gzip +4 -0
  84. data/templates/cli/config +123 -0
  85. data/templates/cli/databases/mongodb +15 -0
  86. data/templates/cli/databases/mysql +18 -0
  87. data/templates/cli/databases/openldap +24 -0
  88. data/templates/cli/databases/postgresql +16 -0
  89. data/templates/cli/databases/redis +16 -0
  90. data/templates/cli/databases/riak +17 -0
  91. data/templates/cli/databases/sqlite +11 -0
  92. data/templates/cli/encryptor/gpg +27 -0
  93. data/templates/cli/encryptor/openssl +9 -0
  94. data/templates/cli/model +26 -0
  95. data/templates/cli/notifier/zabbix +15 -0
  96. data/templates/cli/notifiers/campfire +12 -0
  97. data/templates/cli/notifiers/command +32 -0
  98. data/templates/cli/notifiers/datadog +57 -0
  99. data/templates/cli/notifiers/flowdock +16 -0
  100. data/templates/cli/notifiers/hipchat +16 -0
  101. data/templates/cli/notifiers/http_post +32 -0
  102. data/templates/cli/notifiers/mail +24 -0
  103. data/templates/cli/notifiers/nagios +13 -0
  104. data/templates/cli/notifiers/pagerduty +12 -0
  105. data/templates/cli/notifiers/prowl +11 -0
  106. data/templates/cli/notifiers/pushover +11 -0
  107. data/templates/cli/notifiers/ses +15 -0
  108. data/templates/cli/notifiers/slack +22 -0
  109. data/templates/cli/notifiers/twitter +13 -0
  110. data/templates/cli/splitter +7 -0
  111. data/templates/cli/storages/cloud_files +11 -0
  112. data/templates/cli/storages/dropbox +20 -0
  113. data/templates/cli/storages/ftp +13 -0
  114. data/templates/cli/storages/local +8 -0
  115. data/templates/cli/storages/qiniu +12 -0
  116. data/templates/cli/storages/rsync +17 -0
  117. data/templates/cli/storages/s3 +16 -0
  118. data/templates/cli/storages/scp +15 -0
  119. data/templates/cli/storages/sftp +15 -0
  120. data/templates/cli/syncers/cloud_files +22 -0
  121. data/templates/cli/syncers/rsync_local +20 -0
  122. data/templates/cli/syncers/rsync_pull +28 -0
  123. data/templates/cli/syncers/rsync_push +28 -0
  124. data/templates/cli/syncers/s3 +27 -0
  125. data/templates/general/links +3 -0
  126. data/templates/general/version.erb +2 -0
  127. data/templates/notifier/mail/failure.erb +16 -0
  128. data/templates/notifier/mail/success.erb +16 -0
  129. data/templates/notifier/mail/warning.erb +16 -0
  130. data/templates/storage/dropbox/authorization_url.erb +6 -0
  131. data/templates/storage/dropbox/authorized.erb +4 -0
  132. data/templates/storage/dropbox/cache_file_written.erb +10 -0
  133. metadata +1077 -0
@@ -0,0 +1,11 @@
1
+ ##
2
+ # Pushover [Notifier]
3
+ #
4
+ notify_by Pushover do |push|
5
+ push.on_success = true
6
+ push.on_warning = true
7
+ push.on_failure = true
8
+
9
+ push.user = "USER_TOKEN"
10
+ push.token = "APP_TOKEN"
11
+ end
@@ -0,0 +1,15 @@
1
+ ##
2
+ # SES [Notifier]
3
+ #
4
+ notify_by Ses do |ses|
5
+ ses.on_success = true
6
+ ses.on_warning = true
7
+ ses.on_failure = true
8
+
9
+ ses.access_key_id = ''
10
+ ses.secret_access_key = ''
11
+ ses.region = 'eu-west-1'
12
+
13
+ ses.from = "sender@email.com"
14
+ ses.to = "receiver@email.com"
15
+ end
@@ -0,0 +1,22 @@
1
+ ##
2
+ # Slack [Notifier]
3
+ #
4
+ notify_by Slack do |slack|
5
+ slack.on_success = true
6
+ slack.on_warning = true
7
+ slack.on_failure = true
8
+
9
+ # The incoming webhook url
10
+ # https://hooks.slack.com/services/xxxxxxxx/xxxxxxxxx/xxxxxxxxxx
11
+ slack.webhook_url = 'xxxxxxxxxxxxxxxxxxxxxxxx'
12
+
13
+
14
+ ##
15
+ # Optional
16
+ #
17
+ # The channel to which messages will be sent
18
+ # slack.channel = 'my_channel'
19
+ #
20
+ # The username to display along with the notification
21
+ # slack.username = 'my_username'
22
+ end
@@ -0,0 +1,13 @@
1
+ ##
2
+ # Twitter [Notifier]
3
+ #
4
+ notify_by Twitter do |tweet|
5
+ tweet.on_success = true
6
+ tweet.on_warning = true
7
+ tweet.on_failure = true
8
+
9
+ tweet.consumer_key = "my_consumer_key"
10
+ tweet.consumer_secret = "my_consumer_secret"
11
+ tweet.oauth_token = "my_oauth_token"
12
+ tweet.oauth_token_secret = "my_oauth_token_secret"
13
+ end
@@ -0,0 +1,7 @@
1
+ ##
2
+ # Split [Splitter]
3
+ #
4
+ # Split the backup file in to chunks of 250 megabytes
5
+ # if the backup file size exceeds 250 megabytes
6
+ #
7
+ split_into_chunks_of 250
@@ -0,0 +1,11 @@
1
+ ##
2
+ # Rackspace Cloud Files [Storage]
3
+ #
4
+ store_with CloudFiles do |cf|
5
+ cf.api_key = 'my_api_key'
6
+ cf.username = 'my_username'
7
+ cf.container = 'my_container'
8
+ cf.segments_container = 'my_segments_container' # must be different than `container`
9
+ cf.segment_size = 5 # MiB
10
+ cf.path = 'path/to/backups' # path within the container
11
+ end
@@ -0,0 +1,20 @@
1
+ ##
2
+ # Dropbox [Storage]
3
+ #
4
+ # Your initial backup must be performed manually to authorize
5
+ # this machine with your Dropbox account. This authorized session
6
+ # will be stored in `cache_path` and used for subsequent backups.
7
+ #
8
+ store_with Dropbox do |db|
9
+ db.api_key = "my_api_key"
10
+ db.api_secret = "my_api_secret"
11
+ # Sets the path where the cached authorized session will be stored.
12
+ # Relative paths will be relative to ~/Backup, unless the --root-path
13
+ # is set on the command line or within your configuration file.
14
+ db.cache_path = ".cache"
15
+ # :app_folder (default) or :dropbox
16
+ db.access_type = :app_folder
17
+ db.path = "/path/to/my/backups"
18
+ db.keep = 25
19
+ # db.keep = Time.now - 2592000 # Remove all backups older than 1 month.
20
+ end
@@ -0,0 +1,13 @@
1
+ ##
2
+ # FTP (File Transfer Protocol) [Storage]
3
+ #
4
+ store_with FTP do |server|
5
+ server.username = "my_username"
6
+ server.password = "my_password"
7
+ server.ip = "123.45.678.90"
8
+ server.port = 21
9
+ server.path = "~/backups/"
10
+ server.keep = 5
11
+ # server.keep = Time.now - 2592000 # Remove all backups older than 1 month.
12
+ server.passive_mode = false
13
+ end
@@ -0,0 +1,8 @@
1
+ ##
2
+ # Local (Copy) [Storage]
3
+ #
4
+ store_with Local do |local|
5
+ local.path = "~/backups/"
6
+ local.keep = 5
7
+ # local.keep = Time.now - 2592000 # Remove all backups older than 1 month.
8
+ end
@@ -0,0 +1,12 @@
1
+ ##
2
+ # Qiniu [Storage]
3
+ #
4
+ store_with Qiniu do |qiniu|
5
+ # Qiniu Credentials
6
+ qiniu.access_key = "my_access_key"
7
+ qiniu.secret_key = "my_secret_key"
8
+
9
+ qiniu.bucket = "bucket-name"
10
+ qiniu.keep = 5
11
+ qiniu.path = "path/to/backups"
12
+ end
@@ -0,0 +1,17 @@
1
+ ##
2
+ # RSync [Storage]
3
+ #
4
+ # The default `mode` is :ssh, which does not require the use
5
+ # of an rsync daemon on the remote. If you wish to connect
6
+ # directly to an rsync daemon, or via SSH using daemon features,
7
+ # :rsync_daemon and :ssh_daemon modes are also available.
8
+ #
9
+ # If no `host` is specified, the transfer will be a local
10
+ # operation. `mode` and `compress` will have no meaning.
11
+ #
12
+ store_with RSync do |rsync|
13
+ rsync.mode = :ssh
14
+ rsync.host = "123.45.678.90"
15
+ rsync.path = "~/backups/"
16
+ rsync.compress = true
17
+ end
@@ -0,0 +1,16 @@
1
+ ##
2
+ # Amazon Simple Storage Service [Storage]
3
+ #
4
+ store_with S3 do |s3|
5
+ # AWS Credentials
6
+ s3.access_key_id = "my_access_key_id"
7
+ s3.secret_access_key = "my_secret_access_key"
8
+ # Or, to use a IAM Profile:
9
+ # s3.use_iam_profile = true
10
+
11
+ s3.region = "us-east-1"
12
+ s3.bucket = "bucket-name"
13
+ s3.path = "path/to/backups"
14
+ s3.keep = 5
15
+ # s3.keep = Time.now - 2592000 # Remove all backups older than 1 month.
16
+ end
@@ -0,0 +1,15 @@
1
+ ##
2
+ # SCP (Secure Copy) [Storage]
3
+ #
4
+ store_with SCP do |server|
5
+ server.username = "my_username"
6
+ server.password = "my_password"
7
+ server.ip = "123.45.678.90"
8
+ server.port = 22
9
+ server.path = "~/backups/"
10
+ server.keep = 5
11
+ # server.keep = Time.now - 2592000 # Remove all backups older than 1 month.
12
+
13
+ # Additional options for the SSH connection.
14
+ # server.ssh_options = {}
15
+ end
@@ -0,0 +1,15 @@
1
+ ##
2
+ # SFTP (Secure File Transfer Protocol) [Storage]
3
+ #
4
+ store_with SFTP do |server|
5
+ server.username = "my_username"
6
+ server.password = "my_password"
7
+ server.ip = "123.45.678.90"
8
+ server.port = 22
9
+ server.path = "~/backups/"
10
+ server.keep = 5
11
+ # server.keep = Time.now - 2592000 # Remove all backups older than 1 month.
12
+
13
+ # Additional options for the SSH connection.
14
+ # server.ssh_options = {}
15
+ end
@@ -0,0 +1,22 @@
1
+ ##
2
+ # Rackspace Cloud Files [Syncer]
3
+ #
4
+ sync_with Cloud::CloudFiles do |cf|
5
+ cf.username = "my_username"
6
+ cf.api_key = "my_api_key"
7
+ cf.container = "my_container"
8
+ cf.path = "/backups"
9
+ cf.mirror = true
10
+ cf.thread_count = 10
11
+
12
+ cf.directories do |directory|
13
+ directory.add "/path/to/directory/to/sync"
14
+ directory.add "/path/to/other/directory/to/sync"
15
+
16
+ # Exclude files/folders from the sync.
17
+ # The pattern may be a shell glob pattern (see `File.fnmatch`) or a Regexp.
18
+ # All patterns will be applied when traversing each added directory.
19
+ directory.exclude '**/*~'
20
+ directory.exclude /\/tmp$/
21
+ end
22
+ end
@@ -0,0 +1,20 @@
1
+ ##
2
+ # RSync::Local [Syncer]
3
+ #
4
+ sync_with RSync::Local do |rsync|
5
+ rsync.path = "~/backups"
6
+ rsync.mirror = true
7
+
8
+ rsync.directories do |directory|
9
+ directory.add "/var/apps/my_app/public/uploads"
10
+ directory.add "/var/apps/my_app/logs"
11
+
12
+ # Exclude files/folders.
13
+ # Each pattern will be passed to rsync's `--exclude` option.
14
+ #
15
+ # Note: rsync is run using the `--archive` option,
16
+ # so be sure to read the `FILTER RULES` in `man rsync`.
17
+ directory.exclude '*~'
18
+ directory.exclude 'tmp/'
19
+ end
20
+ end
@@ -0,0 +1,28 @@
1
+ ##
2
+ # RSync::Pull [Syncer]
3
+ #
4
+ # The default `mode` is :ssh, which does not require the use
5
+ # of an rsync daemon on the remote. If you wish to connect
6
+ # directly to an rsync daemon, or via SSH using daemon features,
7
+ # :rsync_daemon and :ssh_daemon modes are also available.
8
+ #
9
+ sync_with RSync::Pull do |rsync|
10
+ rsync.mode = :ssh
11
+ rsync.host = "123.45.678.90"
12
+ rsync.path = "~/backups"
13
+ rsync.mirror = true
14
+ rsync.compress = true
15
+
16
+ rsync.directories do |directory|
17
+ directory.add "/var/apps/my_app/public/uploads"
18
+ directory.add "/var/apps/my_app/logs"
19
+
20
+ # Exclude files/folders.
21
+ # Each pattern will be passed to rsync's `--exclude` option.
22
+ #
23
+ # Note: rsync is run using the `--archive` option,
24
+ # so be sure to read the `FILTER RULES` in `man rsync`.
25
+ directory.exclude '*~'
26
+ directory.exclude 'tmp/'
27
+ end
28
+ end
@@ -0,0 +1,28 @@
1
+ ##
2
+ # RSync::Push [Syncer]
3
+ #
4
+ # The default `mode` is :ssh, which does not require the use
5
+ # of an rsync daemon on the remote. If you wish to connect
6
+ # directly to an rsync daemon, or via SSH using daemon features,
7
+ # :rsync_daemon and :ssh_daemon modes are also available.
8
+ #
9
+ sync_with RSync::Push do |rsync|
10
+ rsync.mode = :ssh
11
+ rsync.host = "123.45.678.90"
12
+ rsync.path = "~/backups"
13
+ rsync.mirror = true
14
+ rsync.compress = true
15
+
16
+ rsync.directories do |directory|
17
+ directory.add "/var/apps/my_app/public/uploads"
18
+ directory.add "/var/apps/my_app/logs"
19
+
20
+ # Exclude files/folders.
21
+ # Each pattern will be passed to rsync's `--exclude` option.
22
+ #
23
+ # Note: rsync is run using the `--archive` option,
24
+ # so be sure to read the `FILTER RULES` in `man rsync`.
25
+ directory.exclude '*~'
26
+ directory.exclude 'tmp/'
27
+ end
28
+ end
@@ -0,0 +1,27 @@
1
+ ##
2
+ # Amazon S3 [Syncer]
3
+ #
4
+ sync_with Cloud::S3 do |s3|
5
+ # AWS Credentials
6
+ s3.access_key_id = "my_access_key_id"
7
+ s3.secret_access_key = "my_secret_access_key"
8
+ # Or, to use a IAM Profile:
9
+ # s3.use_iam_profile = true
10
+
11
+ s3.bucket = "my-bucket"
12
+ s3.region = "us-east-1"
13
+ s3.path = "/backups"
14
+ s3.mirror = true
15
+ s3.thread_count = 10
16
+
17
+ s3.directories do |directory|
18
+ directory.add "/path/to/directory/to/sync"
19
+ directory.add "/path/to/other/directory/to/sync"
20
+
21
+ # Exclude files/folders from the sync.
22
+ # The pattern may be a shell glob pattern (see `File.fnmatch`) or a Regexp.
23
+ # All patterns will be applied when traversing each added directory.
24
+ directory.exclude '**/*~'
25
+ directory.exclude /\/tmp$/
26
+ end
27
+ end
@@ -0,0 +1,3 @@
1
+ Project Home: https://github.com/backup/backup
2
+ Documentation: http://backup.github.io/backup
3
+ Issue Tracker: https://github.com/backup/backup/issues
@@ -0,0 +1,2 @@
1
+ Backup v<%= Backup::VERSION %>
2
+ Ruby: <%= RUBY_DESCRIPTION %>
@@ -0,0 +1,16 @@
1
+
2
+ Backup Failed!
3
+
4
+ Job: <%= @model.label %> (<%= @model.trigger %>)
5
+ Started: <%= @model.started_at %>
6
+ Finished: <%= @model.finished_at %>
7
+ Duration: <%= @model.duration %>
8
+ <% if @send_log %>
9
+
10
+ See the attached backup log for details.
11
+ <% end %>
12
+
13
+ ===========================================================================
14
+ <%= Backup::Template.new.result("general/version.erb") %>
15
+
16
+ <%= Backup::Template.new.result("general/links") %>
@@ -0,0 +1,16 @@
1
+
2
+ Backup Completed Successfully!
3
+
4
+ Job: <%= @model.label %> (<%= @model.trigger %>)
5
+ Started: <%= @model.started_at %>
6
+ Finished: <%= @model.finished_at %>
7
+ Duration: <%= @model.duration %>
8
+ <% if @send_log %>
9
+
10
+ See the attached backup log for details.
11
+ <% end %>
12
+
13
+ ===========================================================================
14
+ <%= Backup::Template.new.result("general/version.erb") %>
15
+
16
+ <%= Backup::Template.new.result("general/links") %>
@@ -0,0 +1,16 @@
1
+
2
+ Backup Completed Successfully (with Warnings)!
3
+
4
+ Job: <%= @model.label %> (<%= @model.trigger %>)
5
+ Started: <%= @model.started_at %>
6
+ Finished: <%= @model.finished_at %>
7
+ Duration: <%= @model.duration %>
8
+ <% if @send_log %>
9
+
10
+ See the attached backup log for details.
11
+ <% end %>
12
+
13
+ ===========================================================================
14
+ <%= Backup::Template.new.result("general/version.erb") %>
15
+
16
+ <%= Backup::Template.new.result("general/links") %>
@@ -0,0 +1,6 @@
1
+
2
+ Visit the following URL to authorize your Dropbox App with Backup:
3
+
4
+ <%= @session.get_authorize_url %>
5
+
6
+ Hit "Enter/Return" once you're authorized.
@@ -0,0 +1,4 @@
1
+
2
+ Backup has successfully been authorized!
3
+ Writing session cache file to:
4
+ <%= @cached_file %>
@@ -0,0 +1,10 @@
1
+
2
+ Cache data written! You will no longer need to manually authorize this
3
+ Dropbox account via an authorization URL on this machine.
4
+
5
+ Note: If you run Backup with this Dropbox account in another location,
6
+ or on other machines, you will need to either authorize them the same
7
+ way, or simply copy over the cache file from:
8
+ <%= @cached_file %>
9
+ to the cache directory on your other machines to use this Dropbox
10
+ account there as well.
metadata ADDED
@@ -0,0 +1,1077 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: cm-backup
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Commutatus
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2019-08-21 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: CFPropertyList
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.3'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.3'
27
+ - !ruby/object:Gem::Dependency
28
+ name: addressable
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.3'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: atomic
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '1.1'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '1.1'
55
+ - !ruby/object:Gem::Dependency
56
+ name: aws-ses
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '0.5'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '0.5'
69
+ - !ruby/object:Gem::Dependency
70
+ name: buftok
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '0.2'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '0.2'
83
+ - !ruby/object:Gem::Dependency
84
+ name: builder
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '3.2'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '3.2'
97
+ - !ruby/object:Gem::Dependency
98
+ name: descendants_tracker
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: '0.0'
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: '0.0'
111
+ - !ruby/object:Gem::Dependency
112
+ name: dogapi
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '1.11'
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '1.11'
125
+ - !ruby/object:Gem::Dependency
126
+ name: dropbox-sdk
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - "~>"
130
+ - !ruby/object:Gem::Version
131
+ version: '1.6'
132
+ type: :runtime
133
+ prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '1.6'
139
+ - !ruby/object:Gem::Dependency
140
+ name: equalizer
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - "~>"
144
+ - !ruby/object:Gem::Version
145
+ version: '0.0'
146
+ type: :runtime
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
150
+ - - "~>"
151
+ - !ruby/object:Gem::Version
152
+ version: '0.0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: excon
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "~>"
158
+ - !ruby/object:Gem::Version
159
+ version: '0.44'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "~>"
165
+ - !ruby/object:Gem::Version
166
+ version: '0.44'
167
+ - !ruby/object:Gem::Dependency
168
+ name: faraday
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - "~>"
172
+ - !ruby/object:Gem::Version
173
+ version: '0.8'
174
+ type: :runtime
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - "~>"
179
+ - !ruby/object:Gem::Version
180
+ version: '0.8'
181
+ - !ruby/object:Gem::Dependency
182
+ name: fission
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: '0.5'
188
+ type: :runtime
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '0.5'
195
+ - !ruby/object:Gem::Dependency
196
+ name: flowdock
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '0.4'
202
+ type: :runtime
203
+ prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '0.4'
209
+ - !ruby/object:Gem::Dependency
210
+ name: fog
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - "~>"
214
+ - !ruby/object:Gem::Version
215
+ version: '1.28'
216
+ type: :runtime
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: '1.28'
223
+ - !ruby/object:Gem::Dependency
224
+ name: fog-atmos
225
+ requirement: !ruby/object:Gem::Requirement
226
+ requirements:
227
+ - - "~>"
228
+ - !ruby/object:Gem::Version
229
+ version: '0.1'
230
+ type: :runtime
231
+ prerelease: false
232
+ version_requirements: !ruby/object:Gem::Requirement
233
+ requirements:
234
+ - - "~>"
235
+ - !ruby/object:Gem::Version
236
+ version: '0.1'
237
+ - !ruby/object:Gem::Dependency
238
+ name: fog-aws
239
+ requirement: !ruby/object:Gem::Requirement
240
+ requirements:
241
+ - - "~>"
242
+ - !ruby/object:Gem::Version
243
+ version: '0.1'
244
+ type: :runtime
245
+ prerelease: false
246
+ version_requirements: !ruby/object:Gem::Requirement
247
+ requirements:
248
+ - - "~>"
249
+ - !ruby/object:Gem::Version
250
+ version: '0.1'
251
+ - !ruby/object:Gem::Dependency
252
+ name: fog-brightbox
253
+ requirement: !ruby/object:Gem::Requirement
254
+ requirements:
255
+ - - "~>"
256
+ - !ruby/object:Gem::Version
257
+ version: '0.7'
258
+ type: :runtime
259
+ prerelease: false
260
+ version_requirements: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - "~>"
263
+ - !ruby/object:Gem::Version
264
+ version: '0.7'
265
+ - !ruby/object:Gem::Dependency
266
+ name: fog-core
267
+ requirement: !ruby/object:Gem::Requirement
268
+ requirements:
269
+ - - "~>"
270
+ - !ruby/object:Gem::Version
271
+ version: '1.29'
272
+ type: :runtime
273
+ prerelease: false
274
+ version_requirements: !ruby/object:Gem::Requirement
275
+ requirements:
276
+ - - "~>"
277
+ - !ruby/object:Gem::Version
278
+ version: '1.29'
279
+ - !ruby/object:Gem::Dependency
280
+ name: fog-ecloud
281
+ requirement: !ruby/object:Gem::Requirement
282
+ requirements:
283
+ - - "~>"
284
+ - !ruby/object:Gem::Version
285
+ version: '0.0'
286
+ type: :runtime
287
+ prerelease: false
288
+ version_requirements: !ruby/object:Gem::Requirement
289
+ requirements:
290
+ - - "~>"
291
+ - !ruby/object:Gem::Version
292
+ version: '0.0'
293
+ - !ruby/object:Gem::Dependency
294
+ name: fog-json
295
+ requirement: !ruby/object:Gem::Requirement
296
+ requirements:
297
+ - - "~>"
298
+ - !ruby/object:Gem::Version
299
+ version: '1.0'
300
+ type: :runtime
301
+ prerelease: false
302
+ version_requirements: !ruby/object:Gem::Requirement
303
+ requirements:
304
+ - - "~>"
305
+ - !ruby/object:Gem::Version
306
+ version: '1.0'
307
+ - !ruby/object:Gem::Dependency
308
+ name: fog-profitbricks
309
+ requirement: !ruby/object:Gem::Requirement
310
+ requirements:
311
+ - - "~>"
312
+ - !ruby/object:Gem::Version
313
+ version: '0.0'
314
+ type: :runtime
315
+ prerelease: false
316
+ version_requirements: !ruby/object:Gem::Requirement
317
+ requirements:
318
+ - - "~>"
319
+ - !ruby/object:Gem::Version
320
+ version: '0.0'
321
+ - !ruby/object:Gem::Dependency
322
+ name: fog-radosgw
323
+ requirement: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - "~>"
326
+ - !ruby/object:Gem::Version
327
+ version: '0.0'
328
+ type: :runtime
329
+ prerelease: false
330
+ version_requirements: !ruby/object:Gem::Requirement
331
+ requirements:
332
+ - - "~>"
333
+ - !ruby/object:Gem::Version
334
+ version: '0.0'
335
+ - !ruby/object:Gem::Dependency
336
+ name: fog-riakcs
337
+ requirement: !ruby/object:Gem::Requirement
338
+ requirements:
339
+ - - "~>"
340
+ - !ruby/object:Gem::Version
341
+ version: '0.1'
342
+ type: :runtime
343
+ prerelease: false
344
+ version_requirements: !ruby/object:Gem::Requirement
345
+ requirements:
346
+ - - "~>"
347
+ - !ruby/object:Gem::Version
348
+ version: '0.1'
349
+ - !ruby/object:Gem::Dependency
350
+ name: fog-sakuracloud
351
+ requirement: !ruby/object:Gem::Requirement
352
+ requirements:
353
+ - - "~>"
354
+ - !ruby/object:Gem::Version
355
+ version: '1.0'
356
+ type: :runtime
357
+ prerelease: false
358
+ version_requirements: !ruby/object:Gem::Requirement
359
+ requirements:
360
+ - - "~>"
361
+ - !ruby/object:Gem::Version
362
+ version: '1.0'
363
+ - !ruby/object:Gem::Dependency
364
+ name: fog-serverlove
365
+ requirement: !ruby/object:Gem::Requirement
366
+ requirements:
367
+ - - "~>"
368
+ - !ruby/object:Gem::Version
369
+ version: '0.1'
370
+ type: :runtime
371
+ prerelease: false
372
+ version_requirements: !ruby/object:Gem::Requirement
373
+ requirements:
374
+ - - "~>"
375
+ - !ruby/object:Gem::Version
376
+ version: '0.1'
377
+ - !ruby/object:Gem::Dependency
378
+ name: fog-softlayer
379
+ requirement: !ruby/object:Gem::Requirement
380
+ requirements:
381
+ - - "~>"
382
+ - !ruby/object:Gem::Version
383
+ version: '0.4'
384
+ type: :runtime
385
+ prerelease: false
386
+ version_requirements: !ruby/object:Gem::Requirement
387
+ requirements:
388
+ - - "~>"
389
+ - !ruby/object:Gem::Version
390
+ version: '0.4'
391
+ - !ruby/object:Gem::Dependency
392
+ name: fog-storm_on_demand
393
+ requirement: !ruby/object:Gem::Requirement
394
+ requirements:
395
+ - - "~>"
396
+ - !ruby/object:Gem::Version
397
+ version: '0.1'
398
+ type: :runtime
399
+ prerelease: false
400
+ version_requirements: !ruby/object:Gem::Requirement
401
+ requirements:
402
+ - - "~>"
403
+ - !ruby/object:Gem::Version
404
+ version: '0.1'
405
+ - !ruby/object:Gem::Dependency
406
+ name: fog-terremark
407
+ requirement: !ruby/object:Gem::Requirement
408
+ requirements:
409
+ - - "~>"
410
+ - !ruby/object:Gem::Version
411
+ version: '0.0'
412
+ type: :runtime
413
+ prerelease: false
414
+ version_requirements: !ruby/object:Gem::Requirement
415
+ requirements:
416
+ - - "~>"
417
+ - !ruby/object:Gem::Version
418
+ version: '0.0'
419
+ - !ruby/object:Gem::Dependency
420
+ name: fog-vmfusion
421
+ requirement: !ruby/object:Gem::Requirement
422
+ requirements:
423
+ - - "~>"
424
+ - !ruby/object:Gem::Version
425
+ version: '0.0'
426
+ type: :runtime
427
+ prerelease: false
428
+ version_requirements: !ruby/object:Gem::Requirement
429
+ requirements:
430
+ - - "~>"
431
+ - !ruby/object:Gem::Version
432
+ version: '0.0'
433
+ - !ruby/object:Gem::Dependency
434
+ name: fog-voxel
435
+ requirement: !ruby/object:Gem::Requirement
436
+ requirements:
437
+ - - "~>"
438
+ - !ruby/object:Gem::Version
439
+ version: '0.0'
440
+ type: :runtime
441
+ prerelease: false
442
+ version_requirements: !ruby/object:Gem::Requirement
443
+ requirements:
444
+ - - "~>"
445
+ - !ruby/object:Gem::Version
446
+ version: '0.0'
447
+ - !ruby/object:Gem::Dependency
448
+ name: fog-xml
449
+ requirement: !ruby/object:Gem::Requirement
450
+ requirements:
451
+ - - "~>"
452
+ - !ruby/object:Gem::Version
453
+ version: '0.1'
454
+ type: :runtime
455
+ prerelease: false
456
+ version_requirements: !ruby/object:Gem::Requirement
457
+ requirements:
458
+ - - "~>"
459
+ - !ruby/object:Gem::Version
460
+ version: '0.1'
461
+ - !ruby/object:Gem::Dependency
462
+ name: formatador
463
+ requirement: !ruby/object:Gem::Requirement
464
+ requirements:
465
+ - - "~>"
466
+ - !ruby/object:Gem::Version
467
+ version: '0.2'
468
+ type: :runtime
469
+ prerelease: false
470
+ version_requirements: !ruby/object:Gem::Requirement
471
+ requirements:
472
+ - - "~>"
473
+ - !ruby/object:Gem::Version
474
+ version: '0.2'
475
+ - !ruby/object:Gem::Dependency
476
+ name: hipchat
477
+ requirement: !ruby/object:Gem::Requirement
478
+ requirements:
479
+ - - "~>"
480
+ - !ruby/object:Gem::Version
481
+ version: '1.0'
482
+ type: :runtime
483
+ prerelease: false
484
+ version_requirements: !ruby/object:Gem::Requirement
485
+ requirements:
486
+ - - "~>"
487
+ - !ruby/object:Gem::Version
488
+ version: '1.0'
489
+ - !ruby/object:Gem::Dependency
490
+ name: http
491
+ requirement: !ruby/object:Gem::Requirement
492
+ requirements:
493
+ - - "~>"
494
+ - !ruby/object:Gem::Version
495
+ version: '0.5'
496
+ type: :runtime
497
+ prerelease: false
498
+ version_requirements: !ruby/object:Gem::Requirement
499
+ requirements:
500
+ - - "~>"
501
+ - !ruby/object:Gem::Version
502
+ version: '0.5'
503
+ - !ruby/object:Gem::Dependency
504
+ name: http_parser.rb
505
+ requirement: !ruby/object:Gem::Requirement
506
+ requirements:
507
+ - - "~>"
508
+ - !ruby/object:Gem::Version
509
+ version: '0.6'
510
+ type: :runtime
511
+ prerelease: false
512
+ version_requirements: !ruby/object:Gem::Requirement
513
+ requirements:
514
+ - - "~>"
515
+ - !ruby/object:Gem::Version
516
+ version: '0.6'
517
+ - !ruby/object:Gem::Dependency
518
+ name: httparty
519
+ requirement: !ruby/object:Gem::Requirement
520
+ requirements:
521
+ - - "~>"
522
+ - !ruby/object:Gem::Version
523
+ version: '0.12'
524
+ type: :runtime
525
+ prerelease: false
526
+ version_requirements: !ruby/object:Gem::Requirement
527
+ requirements:
528
+ - - "~>"
529
+ - !ruby/object:Gem::Version
530
+ version: '0.12'
531
+ - !ruby/object:Gem::Dependency
532
+ name: inflecto
533
+ requirement: !ruby/object:Gem::Requirement
534
+ requirements:
535
+ - - "~>"
536
+ - !ruby/object:Gem::Version
537
+ version: '0.0'
538
+ type: :runtime
539
+ prerelease: false
540
+ version_requirements: !ruby/object:Gem::Requirement
541
+ requirements:
542
+ - - "~>"
543
+ - !ruby/object:Gem::Version
544
+ version: '0.0'
545
+ - !ruby/object:Gem::Dependency
546
+ name: ipaddress
547
+ requirement: !ruby/object:Gem::Requirement
548
+ requirements:
549
+ - - "~>"
550
+ - !ruby/object:Gem::Version
551
+ version: '0.8'
552
+ type: :runtime
553
+ prerelease: false
554
+ version_requirements: !ruby/object:Gem::Requirement
555
+ requirements:
556
+ - - "~>"
557
+ - !ruby/object:Gem::Version
558
+ version: '0.8'
559
+ - !ruby/object:Gem::Dependency
560
+ name: json
561
+ requirement: !ruby/object:Gem::Requirement
562
+ requirements:
563
+ - - "~>"
564
+ - !ruby/object:Gem::Version
565
+ version: '1.8'
566
+ type: :runtime
567
+ prerelease: false
568
+ version_requirements: !ruby/object:Gem::Requirement
569
+ requirements:
570
+ - - "~>"
571
+ - !ruby/object:Gem::Version
572
+ version: '1.8'
573
+ - !ruby/object:Gem::Dependency
574
+ name: mail
575
+ requirement: !ruby/object:Gem::Requirement
576
+ requirements:
577
+ - - "~>"
578
+ - !ruby/object:Gem::Version
579
+ version: '2.6'
580
+ type: :runtime
581
+ prerelease: false
582
+ version_requirements: !ruby/object:Gem::Requirement
583
+ requirements:
584
+ - - "~>"
585
+ - !ruby/object:Gem::Version
586
+ version: '2.6'
587
+ - !ruby/object:Gem::Dependency
588
+ name: memoizable
589
+ requirement: !ruby/object:Gem::Requirement
590
+ requirements:
591
+ - - "~>"
592
+ - !ruby/object:Gem::Version
593
+ version: '0.4'
594
+ type: :runtime
595
+ prerelease: false
596
+ version_requirements: !ruby/object:Gem::Requirement
597
+ requirements:
598
+ - - "~>"
599
+ - !ruby/object:Gem::Version
600
+ version: '0.4'
601
+ - !ruby/object:Gem::Dependency
602
+ name: mime-types
603
+ requirement: !ruby/object:Gem::Requirement
604
+ requirements:
605
+ - - "~>"
606
+ - !ruby/object:Gem::Version
607
+ version: '2.4'
608
+ type: :runtime
609
+ prerelease: false
610
+ version_requirements: !ruby/object:Gem::Requirement
611
+ requirements:
612
+ - - "~>"
613
+ - !ruby/object:Gem::Version
614
+ version: '2.4'
615
+ - !ruby/object:Gem::Dependency
616
+ name: mini_portile2
617
+ requirement: !ruby/object:Gem::Requirement
618
+ requirements:
619
+ - - "~>"
620
+ - !ruby/object:Gem::Version
621
+ version: '2.3'
622
+ type: :runtime
623
+ prerelease: false
624
+ version_requirements: !ruby/object:Gem::Requirement
625
+ requirements:
626
+ - - "~>"
627
+ - !ruby/object:Gem::Version
628
+ version: '2.3'
629
+ - !ruby/object:Gem::Dependency
630
+ name: multi_json
631
+ requirement: !ruby/object:Gem::Requirement
632
+ requirements:
633
+ - - "~>"
634
+ - !ruby/object:Gem::Version
635
+ version: '1.10'
636
+ type: :runtime
637
+ prerelease: false
638
+ version_requirements: !ruby/object:Gem::Requirement
639
+ requirements:
640
+ - - "~>"
641
+ - !ruby/object:Gem::Version
642
+ version: '1.10'
643
+ - !ruby/object:Gem::Dependency
644
+ name: multi_xml
645
+ requirement: !ruby/object:Gem::Requirement
646
+ requirements:
647
+ - - "~>"
648
+ - !ruby/object:Gem::Version
649
+ version: '0.5'
650
+ type: :runtime
651
+ prerelease: false
652
+ version_requirements: !ruby/object:Gem::Requirement
653
+ requirements:
654
+ - - "~>"
655
+ - !ruby/object:Gem::Version
656
+ version: '0.5'
657
+ - !ruby/object:Gem::Dependency
658
+ name: multipart-post
659
+ requirement: !ruby/object:Gem::Requirement
660
+ requirements:
661
+ - - "~>"
662
+ - !ruby/object:Gem::Version
663
+ version: '1.2'
664
+ type: :runtime
665
+ prerelease: false
666
+ version_requirements: !ruby/object:Gem::Requirement
667
+ requirements:
668
+ - - "~>"
669
+ - !ruby/object:Gem::Version
670
+ version: '1.2'
671
+ - !ruby/object:Gem::Dependency
672
+ name: net-scp
673
+ requirement: !ruby/object:Gem::Requirement
674
+ requirements:
675
+ - - "~>"
676
+ - !ruby/object:Gem::Version
677
+ version: '1.2'
678
+ type: :runtime
679
+ prerelease: false
680
+ version_requirements: !ruby/object:Gem::Requirement
681
+ requirements:
682
+ - - "~>"
683
+ - !ruby/object:Gem::Version
684
+ version: '1.2'
685
+ - !ruby/object:Gem::Dependency
686
+ name: net-sftp
687
+ requirement: !ruby/object:Gem::Requirement
688
+ requirements:
689
+ - - "~>"
690
+ - !ruby/object:Gem::Version
691
+ version: '2.1'
692
+ type: :runtime
693
+ prerelease: false
694
+ version_requirements: !ruby/object:Gem::Requirement
695
+ requirements:
696
+ - - "~>"
697
+ - !ruby/object:Gem::Version
698
+ version: '2.1'
699
+ - !ruby/object:Gem::Dependency
700
+ name: net-ssh
701
+ requirement: !ruby/object:Gem::Requirement
702
+ requirements:
703
+ - - "~>"
704
+ - !ruby/object:Gem::Version
705
+ version: '3.2'
706
+ type: :runtime
707
+ prerelease: false
708
+ version_requirements: !ruby/object:Gem::Requirement
709
+ requirements:
710
+ - - "~>"
711
+ - !ruby/object:Gem::Version
712
+ version: '3.2'
713
+ - !ruby/object:Gem::Dependency
714
+ name: netrc
715
+ requirement: !ruby/object:Gem::Requirement
716
+ requirements:
717
+ - - "~>"
718
+ - !ruby/object:Gem::Version
719
+ version: '0.11'
720
+ type: :runtime
721
+ prerelease: false
722
+ version_requirements: !ruby/object:Gem::Requirement
723
+ requirements:
724
+ - - "~>"
725
+ - !ruby/object:Gem::Version
726
+ version: '0.11'
727
+ - !ruby/object:Gem::Dependency
728
+ name: nokogiri
729
+ requirement: !ruby/object:Gem::Requirement
730
+ requirements:
731
+ - - "~>"
732
+ - !ruby/object:Gem::Version
733
+ version: '1.8'
734
+ type: :runtime
735
+ prerelease: false
736
+ version_requirements: !ruby/object:Gem::Requirement
737
+ requirements:
738
+ - - "~>"
739
+ - !ruby/object:Gem::Version
740
+ version: '1.8'
741
+ - !ruby/object:Gem::Dependency
742
+ name: open4
743
+ requirement: !ruby/object:Gem::Requirement
744
+ requirements:
745
+ - - "~>"
746
+ - !ruby/object:Gem::Version
747
+ version: '1.3'
748
+ type: :runtime
749
+ prerelease: false
750
+ version_requirements: !ruby/object:Gem::Requirement
751
+ requirements:
752
+ - - "~>"
753
+ - !ruby/object:Gem::Version
754
+ version: '1.3'
755
+ - !ruby/object:Gem::Dependency
756
+ name: pagerduty
757
+ requirement: !ruby/object:Gem::Requirement
758
+ requirements:
759
+ - - "~>"
760
+ - !ruby/object:Gem::Version
761
+ version: '2.0'
762
+ type: :runtime
763
+ prerelease: false
764
+ version_requirements: !ruby/object:Gem::Requirement
765
+ requirements:
766
+ - - "~>"
767
+ - !ruby/object:Gem::Version
768
+ version: '2.0'
769
+ - !ruby/object:Gem::Dependency
770
+ name: qiniu
771
+ requirement: !ruby/object:Gem::Requirement
772
+ requirements:
773
+ - - "~>"
774
+ - !ruby/object:Gem::Version
775
+ version: '6.5'
776
+ type: :runtime
777
+ prerelease: false
778
+ version_requirements: !ruby/object:Gem::Requirement
779
+ requirements:
780
+ - - "~>"
781
+ - !ruby/object:Gem::Version
782
+ version: '6.5'
783
+ - !ruby/object:Gem::Dependency
784
+ name: rest-client
785
+ requirement: !ruby/object:Gem::Requirement
786
+ requirements:
787
+ - - "~>"
788
+ - !ruby/object:Gem::Version
789
+ version: '1.7'
790
+ type: :runtime
791
+ prerelease: false
792
+ version_requirements: !ruby/object:Gem::Requirement
793
+ requirements:
794
+ - - "~>"
795
+ - !ruby/object:Gem::Version
796
+ version: '1.7'
797
+ - !ruby/object:Gem::Dependency
798
+ name: ruby-hmac
799
+ requirement: !ruby/object:Gem::Requirement
800
+ requirements:
801
+ - - "~>"
802
+ - !ruby/object:Gem::Version
803
+ version: '0.4'
804
+ type: :runtime
805
+ prerelease: false
806
+ version_requirements: !ruby/object:Gem::Requirement
807
+ requirements:
808
+ - - "~>"
809
+ - !ruby/object:Gem::Version
810
+ version: '0.4'
811
+ - !ruby/object:Gem::Dependency
812
+ name: simple_oauth
813
+ requirement: !ruby/object:Gem::Requirement
814
+ requirements:
815
+ - - "~>"
816
+ - !ruby/object:Gem::Version
817
+ version: '0.2'
818
+ type: :runtime
819
+ prerelease: false
820
+ version_requirements: !ruby/object:Gem::Requirement
821
+ requirements:
822
+ - - "~>"
823
+ - !ruby/object:Gem::Version
824
+ version: '0.2'
825
+ - !ruby/object:Gem::Dependency
826
+ name: thor
827
+ requirement: !ruby/object:Gem::Requirement
828
+ requirements:
829
+ - - "~>"
830
+ - !ruby/object:Gem::Version
831
+ version: '0.18'
832
+ type: :runtime
833
+ prerelease: false
834
+ version_requirements: !ruby/object:Gem::Requirement
835
+ requirements:
836
+ - - "~>"
837
+ - !ruby/object:Gem::Version
838
+ version: '0.18'
839
+ - !ruby/object:Gem::Dependency
840
+ name: thread_safe
841
+ requirement: !ruby/object:Gem::Requirement
842
+ requirements:
843
+ - - "~>"
844
+ - !ruby/object:Gem::Version
845
+ version: '0.1'
846
+ type: :runtime
847
+ prerelease: false
848
+ version_requirements: !ruby/object:Gem::Requirement
849
+ requirements:
850
+ - - "~>"
851
+ - !ruby/object:Gem::Version
852
+ version: '0.1'
853
+ - !ruby/object:Gem::Dependency
854
+ name: twitter
855
+ requirement: !ruby/object:Gem::Requirement
856
+ requirements:
857
+ - - "~>"
858
+ - !ruby/object:Gem::Version
859
+ version: '5.5'
860
+ type: :runtime
861
+ prerelease: false
862
+ version_requirements: !ruby/object:Gem::Requirement
863
+ requirements:
864
+ - - "~>"
865
+ - !ruby/object:Gem::Version
866
+ version: '5.5'
867
+ - !ruby/object:Gem::Dependency
868
+ name: unf
869
+ requirement: !ruby/object:Gem::Requirement
870
+ requirements:
871
+ - - "~>"
872
+ - !ruby/object:Gem::Version
873
+ version: '0.1'
874
+ type: :runtime
875
+ prerelease: false
876
+ version_requirements: !ruby/object:Gem::Requirement
877
+ requirements:
878
+ - - "~>"
879
+ - !ruby/object:Gem::Version
880
+ version: '0.1'
881
+ - !ruby/object:Gem::Dependency
882
+ name: unf_ext
883
+ requirement: !ruby/object:Gem::Requirement
884
+ requirements:
885
+ - - "~>"
886
+ - !ruby/object:Gem::Version
887
+ version: '0.0'
888
+ type: :runtime
889
+ prerelease: false
890
+ version_requirements: !ruby/object:Gem::Requirement
891
+ requirements:
892
+ - - "~>"
893
+ - !ruby/object:Gem::Version
894
+ version: '0.0'
895
+ - !ruby/object:Gem::Dependency
896
+ name: xml-simple
897
+ requirement: !ruby/object:Gem::Requirement
898
+ requirements:
899
+ - - "~>"
900
+ - !ruby/object:Gem::Version
901
+ version: '1.1'
902
+ type: :runtime
903
+ prerelease: false
904
+ version_requirements: !ruby/object:Gem::Requirement
905
+ requirements:
906
+ - - "~>"
907
+ - !ruby/object:Gem::Version
908
+ version: '1.1'
909
+ description: Cm-backup is an extension to the Backup gem. Backup is a RubyGem, written
910
+ for UNIX-like operating systems, that allows you to easily perform backup operations
911
+ on both your remote and local environments. It provides you with an elegant DSL
912
+ in Ruby for modeling your backups. Backup has built-in support for various databases,
913
+ storage protocols/services, syncers, compressors, encryptors and notifiers which
914
+ you can mix and match. It was built with modularity, extensibility and simplicity
915
+ in mind.
916
+ email: himanshu@commutatus.com
917
+ executables:
918
+ - backup
919
+ extensions: []
920
+ extra_rdoc_files: []
921
+ files:
922
+ - README.md
923
+ - bin/backup
924
+ - lib/backup.rb
925
+ - lib/backup/archive.rb
926
+ - lib/backup/binder.rb
927
+ - lib/backup/cleaner.rb
928
+ - lib/backup/cli.rb
929
+ - lib/backup/cloud_io/base.rb
930
+ - lib/backup/cloud_io/cloud_files.rb
931
+ - lib/backup/cloud_io/s3.rb
932
+ - lib/backup/compressor/base.rb
933
+ - lib/backup/compressor/bzip2.rb
934
+ - lib/backup/compressor/custom.rb
935
+ - lib/backup/compressor/gzip.rb
936
+ - lib/backup/config.rb
937
+ - lib/backup/config/dsl.rb
938
+ - lib/backup/config/helpers.rb
939
+ - lib/backup/database/base.rb
940
+ - lib/backup/database/mongodb.rb
941
+ - lib/backup/database/mysql.rb
942
+ - lib/backup/database/openldap.rb
943
+ - lib/backup/database/postgresql.rb
944
+ - lib/backup/database/redis.rb
945
+ - lib/backup/database/riak.rb
946
+ - lib/backup/database/sqlite.rb
947
+ - lib/backup/encryptor/base.rb
948
+ - lib/backup/encryptor/gpg.rb
949
+ - lib/backup/encryptor/open_ssl.rb
950
+ - lib/backup/errors.rb
951
+ - lib/backup/logger.rb
952
+ - lib/backup/logger/console.rb
953
+ - lib/backup/logger/fog_adapter.rb
954
+ - lib/backup/logger/logfile.rb
955
+ - lib/backup/logger/syslog.rb
956
+ - lib/backup/model.rb
957
+ - lib/backup/notifier/base.rb
958
+ - lib/backup/notifier/campfire.rb
959
+ - lib/backup/notifier/command.rb
960
+ - lib/backup/notifier/datadog.rb
961
+ - lib/backup/notifier/flowdock.rb
962
+ - lib/backup/notifier/hipchat.rb
963
+ - lib/backup/notifier/http_post.rb
964
+ - lib/backup/notifier/mail.rb
965
+ - lib/backup/notifier/nagios.rb
966
+ - lib/backup/notifier/pagerduty.rb
967
+ - lib/backup/notifier/prowl.rb
968
+ - lib/backup/notifier/pushover.rb
969
+ - lib/backup/notifier/ses.rb
970
+ - lib/backup/notifier/slack.rb
971
+ - lib/backup/notifier/twitter.rb
972
+ - lib/backup/notifier/zabbix.rb
973
+ - lib/backup/package.rb
974
+ - lib/backup/packager.rb
975
+ - lib/backup/pipeline.rb
976
+ - lib/backup/splitter.rb
977
+ - lib/backup/storage/base.rb
978
+ - lib/backup/storage/cloud_files.rb
979
+ - lib/backup/storage/cycler.rb
980
+ - lib/backup/storage/dropbox.rb
981
+ - lib/backup/storage/ftp.rb
982
+ - lib/backup/storage/local.rb
983
+ - lib/backup/storage/qiniu.rb
984
+ - lib/backup/storage/rsync.rb
985
+ - lib/backup/storage/s3.rb
986
+ - lib/backup/storage/scp.rb
987
+ - lib/backup/storage/sftp.rb
988
+ - lib/backup/syncer/base.rb
989
+ - lib/backup/syncer/cloud/base.rb
990
+ - lib/backup/syncer/cloud/cloud_files.rb
991
+ - lib/backup/syncer/cloud/local_file.rb
992
+ - lib/backup/syncer/cloud/s3.rb
993
+ - lib/backup/syncer/rsync/base.rb
994
+ - lib/backup/syncer/rsync/local.rb
995
+ - lib/backup/syncer/rsync/pull.rb
996
+ - lib/backup/syncer/rsync/push.rb
997
+ - lib/backup/template.rb
998
+ - lib/backup/utilities.rb
999
+ - lib/backup/version.rb
1000
+ - templates/cli/archive
1001
+ - templates/cli/compressor/bzip2
1002
+ - templates/cli/compressor/custom
1003
+ - templates/cli/compressor/gzip
1004
+ - templates/cli/config
1005
+ - templates/cli/databases/mongodb
1006
+ - templates/cli/databases/mysql
1007
+ - templates/cli/databases/openldap
1008
+ - templates/cli/databases/postgresql
1009
+ - templates/cli/databases/redis
1010
+ - templates/cli/databases/riak
1011
+ - templates/cli/databases/sqlite
1012
+ - templates/cli/encryptor/gpg
1013
+ - templates/cli/encryptor/openssl
1014
+ - templates/cli/model
1015
+ - templates/cli/notifier/zabbix
1016
+ - templates/cli/notifiers/campfire
1017
+ - templates/cli/notifiers/command
1018
+ - templates/cli/notifiers/datadog
1019
+ - templates/cli/notifiers/flowdock
1020
+ - templates/cli/notifiers/hipchat
1021
+ - templates/cli/notifiers/http_post
1022
+ - templates/cli/notifiers/mail
1023
+ - templates/cli/notifiers/nagios
1024
+ - templates/cli/notifiers/pagerduty
1025
+ - templates/cli/notifiers/prowl
1026
+ - templates/cli/notifiers/pushover
1027
+ - templates/cli/notifiers/ses
1028
+ - templates/cli/notifiers/slack
1029
+ - templates/cli/notifiers/twitter
1030
+ - templates/cli/splitter
1031
+ - templates/cli/storages/cloud_files
1032
+ - templates/cli/storages/dropbox
1033
+ - templates/cli/storages/ftp
1034
+ - templates/cli/storages/local
1035
+ - templates/cli/storages/qiniu
1036
+ - templates/cli/storages/rsync
1037
+ - templates/cli/storages/s3
1038
+ - templates/cli/storages/scp
1039
+ - templates/cli/storages/sftp
1040
+ - templates/cli/syncers/cloud_files
1041
+ - templates/cli/syncers/rsync_local
1042
+ - templates/cli/syncers/rsync_pull
1043
+ - templates/cli/syncers/rsync_push
1044
+ - templates/cli/syncers/s3
1045
+ - templates/general/links
1046
+ - templates/general/version.erb
1047
+ - templates/notifier/mail/failure.erb
1048
+ - templates/notifier/mail/success.erb
1049
+ - templates/notifier/mail/warning.erb
1050
+ - templates/storage/dropbox/authorization_url.erb
1051
+ - templates/storage/dropbox/authorized.erb
1052
+ - templates/storage/dropbox/cache_file_written.erb
1053
+ homepage: https://github.com/commutatus/cm-backup
1054
+ licenses:
1055
+ - MIT
1056
+ metadata: {}
1057
+ post_install_message:
1058
+ rdoc_options: []
1059
+ require_paths:
1060
+ - lib
1061
+ required_ruby_version: !ruby/object:Gem::Requirement
1062
+ requirements:
1063
+ - - ">="
1064
+ - !ruby/object:Gem::Version
1065
+ version: '2.0'
1066
+ required_rubygems_version: !ruby/object:Gem::Requirement
1067
+ requirements:
1068
+ - - ">="
1069
+ - !ruby/object:Gem::Version
1070
+ version: '0'
1071
+ requirements: []
1072
+ rubyforge_project:
1073
+ rubygems_version: 2.7.3
1074
+ signing_key:
1075
+ specification_version: 4
1076
+ summary: Provides an elegant DSL in Ruby for performing backups on UNIX-like systems.
1077
+ test_files: []