backup_repos 0.3.0 → 0.4.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.
- checksums.yaml +5 -5
- data/.github/workflows/test.yml +22 -0
- data/.rubocop.yml +3 -3
- data/Gemfile +7 -2
- data/{LICENSE.md → LICENSE} +1 -1
- data/README.md +4 -12
- data/Rakefile +2 -0
- data/backup_repos.gemspec +12 -8
- data/bin/backup-repos +2 -1
- data/bin/console +1 -0
- data/lib/backup_repos.rb +3 -0
- data/lib/backup_repos/backup.rb +9 -0
- data/lib/backup_repos/backup_bitbucket.rb +4 -2
- data/lib/backup_repos/backup_github.rb +14 -2
- data/lib/backup_repos/backup_gitlab.rb +2 -0
- data/lib/backup_repos/backup_gitlab_endpoint.rb +6 -2
- data/lib/backup_repos/cli/setup.rb +26 -0
- data/lib/backup_repos/commander.rb +6 -2
- data/lib/backup_repos/config.rb +22 -4
- data/lib/backup_repos/mash.rb +9 -0
- data/lib/backup_repos/performers/base_git.rb +2 -0
- data/lib/backup_repos/performers/bitbucket_git_repository.rb +2 -0
- data/lib/backup_repos/performers/bitbucket_git_wiki.rb +2 -0
- data/lib/backup_repos/performers/github_gist.rb +2 -0
- data/lib/backup_repos/performers/github_repository.rb +2 -0
- data/lib/backup_repos/performers/github_wiki.rb +2 -0
- data/lib/backup_repos/performers/gitlab_repository.rb +2 -0
- data/lib/backup_repos/shell.rb +3 -1
- data/lib/backup_repos/version.rb +3 -1
- data/lib/core_ext/object.rb +2 -0
- data/lib/core_ext/string.rb +3 -1
- metadata +33 -20
- data/.codeclimate.yml +0 -22
- data/.travis.yml +0 -11
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: ee0ccc53eb5f8097ad961b8a142016a2ba038760375c45ee3a6517cd7e7bca41
|
4
|
+
data.tar.gz: 112d547c552f67c56e336057e0b662b117f345328959f97f45c372497ca628a7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 70a85ecf3341f550b9c934869070ad2b5ef942b721d058921e4a17c51544fc66bce235cdbebd6a75f7540ff720f58855dab34f478705b02655d3a8c4d04c6667
|
7
|
+
data.tar.gz: 344842a33943f702aa3c111e5bf3f14353486df1a8e9cf78274d6bbf88e17b5a52abbd46b312131c874d0f73923463020d8bfde69e4e932a758f576a849d436d
|
@@ -0,0 +1,22 @@
|
|
1
|
+
name: Test
|
2
|
+
|
3
|
+
on: [push]
|
4
|
+
|
5
|
+
jobs:
|
6
|
+
build:
|
7
|
+
|
8
|
+
runs-on: ubuntu-latest
|
9
|
+
|
10
|
+
steps:
|
11
|
+
- uses: actions/checkout@v1
|
12
|
+
- name: Set up Ruby 2.6
|
13
|
+
uses: actions/setup-ruby@v1
|
14
|
+
with:
|
15
|
+
ruby-version: 2.6.x
|
16
|
+
- name: Build and test with Rake
|
17
|
+
env:
|
18
|
+
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
19
|
+
run: |
|
20
|
+
gem install bundler
|
21
|
+
bundle install --jobs 4 --retry 3
|
22
|
+
bundle exec rspec
|
data/.rubocop.yml
CHANGED
data/Gemfile
CHANGED
@@ -1,14 +1,19 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
source 'https://rubygems.org'
|
2
4
|
|
3
5
|
# Specify your gem's dependencies in backup_repos.gemspec
|
4
6
|
gemspec
|
5
7
|
|
8
|
+
group :development do
|
9
|
+
gem 'rubocop', '~> 0.77'
|
10
|
+
end
|
11
|
+
|
6
12
|
group :development, :test do
|
7
13
|
gem 'pry'
|
8
14
|
end
|
9
15
|
|
10
16
|
group :test do
|
11
|
-
gem '
|
12
|
-
gem 'coveralls'
|
17
|
+
gem 'codecov', require: false
|
13
18
|
gem 'simplecov', require: false
|
14
19
|
end
|
data/{LICENSE.md → LICENSE}
RENAMED
data/README.md
CHANGED
@@ -1,11 +1,7 @@
|
|
1
1
|
# Backup Repos
|
2
2
|
|
3
3
|
[][rubygems]
|
4
|
-
[][travis]
|
6
|
-
[][gemnasium]
|
7
|
-
[][coveralls]
|
8
|
-
[][codeclimate]
|
4
|
+
[][codecov]
|
9
5
|
|
10
6
|
|
11
7
|
Backup your GitHub, BitBucket and GitLab repositories to specified directory.
|
@@ -34,7 +30,7 @@ Backup all your providers:
|
|
34
30
|
$ backup-repos backup
|
35
31
|
```
|
36
32
|
|
37
|
-
Or specify one:
|
33
|
+
Or specify one provider:
|
38
34
|
|
39
35
|
```shell
|
40
36
|
$ backup-repos backup github
|
@@ -52,14 +48,10 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
|
|
52
48
|
Bug reports and pull requests are welcome on GitHub at https://github.com/jpalumickas/backup-repos.
|
53
49
|
|
54
50
|
## Copyright
|
55
|
-
Copyright (c)
|
51
|
+
Copyright (c) 2019 Justas Palumickas.
|
56
52
|
See [LICENSE][] for details.
|
57
53
|
|
58
54
|
[rubygems]: https://rubygems.org/gems/backup_repos
|
59
|
-
[
|
60
|
-
[gemnasium]: https://gemnasium.com/jpalumickas/backup-repos
|
61
|
-
[coveralls]: https://coveralls.io/r/jpalumickas/backup-repos
|
62
|
-
[codeclimate]: https://codeclimate.com/github/jpalumickas/backup-repos
|
63
|
-
[gitter]: https://gitter.im/jpalumickas/backup-repos
|
55
|
+
[codecov]: https://codecov.io/gh/jpalumickas/backup-repos
|
64
56
|
|
65
57
|
[license]: LICENSE.md
|
data/Rakefile
CHANGED
data/backup_repos.gemspec
CHANGED
@@ -1,5 +1,6 @@
|
|
1
|
-
#
|
2
|
-
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
lib = File.expand_path('lib', __dir__)
|
3
4
|
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
5
|
require 'backup_repos/version'
|
5
6
|
|
@@ -20,14 +21,17 @@ Gem::Specification.new do |spec|
|
|
20
21
|
spec.executables = ['backup-repos']
|
21
22
|
spec.require_paths = ['lib']
|
22
23
|
|
24
|
+
spec.required_ruby_version = '>= 2.4.0'
|
25
|
+
|
23
26
|
spec.add_dependency 'bitbucket_rest_api', '~> 0.1.7'
|
24
27
|
spec.add_dependency 'colorize', '~> 0.8.1'
|
25
28
|
spec.add_dependency 'commander', '~> 4.4'
|
26
|
-
spec.add_dependency 'gitlab', '~>
|
27
|
-
spec.add_dependency 'hashie', '~>
|
28
|
-
spec.add_dependency '
|
29
|
+
spec.add_dependency 'gitlab', '~> 4.12'
|
30
|
+
spec.add_dependency 'hashie', '~> 4.0'
|
31
|
+
spec.add_dependency 'highline', '~> 2.0'
|
32
|
+
spec.add_dependency 'octokit', '~> 4.14'
|
29
33
|
|
30
|
-
spec.add_development_dependency 'bundler', '~>
|
31
|
-
spec.add_development_dependency 'rake', '~>
|
32
|
-
spec.add_development_dependency 'rspec', '~> 3.
|
34
|
+
spec.add_development_dependency 'bundler', '~> 2.0'
|
35
|
+
spec.add_development_dependency 'rake', '~> 12.0'
|
36
|
+
spec.add_development_dependency 'rspec', '~> 3.8'
|
33
37
|
end
|
data/bin/backup-repos
CHANGED
data/bin/console
CHANGED
data/lib/backup_repos.rb
CHANGED
data/lib/backup_repos/backup.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require_relative 'performers/base_git'
|
2
4
|
require_relative 'backup_github'
|
3
5
|
require_relative 'backup_bitbucket'
|
@@ -22,16 +24,22 @@ module BackupRepos
|
|
22
24
|
|
23
25
|
def process_github
|
24
26
|
return unless valid?
|
27
|
+
return unless BackupRepos.config.github_access_token
|
28
|
+
|
25
29
|
BackupGithub.new.process
|
26
30
|
end
|
27
31
|
|
28
32
|
def process_bitbucket
|
29
33
|
return unless valid?
|
34
|
+
return unless BackupRepos.config.bitbucket
|
35
|
+
|
30
36
|
BackupBitbucket.new.process
|
31
37
|
end
|
32
38
|
|
33
39
|
def process_gitlab
|
34
40
|
return unless valid?
|
41
|
+
return unless BackupRepos.config.gitlab
|
42
|
+
|
35
43
|
BackupGitlab.new.process
|
36
44
|
end
|
37
45
|
|
@@ -54,6 +62,7 @@ module BackupRepos
|
|
54
62
|
end
|
55
63
|
|
56
64
|
return if File.exist?(backup_root)
|
65
|
+
|
57
66
|
errors << 'Backup directory does not exists.'
|
58
67
|
end
|
59
68
|
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'bitbucket_rest_api'
|
2
4
|
|
3
5
|
require_relative 'performers/bitbucket_git_repository'
|
@@ -19,8 +21,8 @@ module BackupRepos
|
|
19
21
|
|
20
22
|
def ask_credentials
|
21
23
|
cli = HighLine.new
|
22
|
-
@username = cli.ask('BitBucket Username: ')
|
23
|
-
@password = cli.ask('BitBucket Password: ') { |q| q.echo = false }
|
24
|
+
@username = BackupRepos.config.dig('bitbucket', 'username') || cli.ask('BitBucket Username: ')
|
25
|
+
@password = BackupRepos.config.dig('bitbucket', 'password') || cli.ask('BitBucket Password: ') { |q| q.echo = false }
|
24
26
|
end
|
25
27
|
|
26
28
|
def process_git_repositories
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'octokit'
|
2
4
|
|
3
5
|
require_relative 'performers/github_repository'
|
@@ -9,7 +11,7 @@ module BackupRepos
|
|
9
11
|
def process
|
10
12
|
process_repositories
|
11
13
|
process_wiki
|
12
|
-
process_gist
|
14
|
+
process_gist if backup_gist?
|
13
15
|
end
|
14
16
|
|
15
17
|
def repos
|
@@ -49,12 +51,22 @@ module BackupRepos
|
|
49
51
|
end
|
50
52
|
|
51
53
|
def exclude_repo?(repo)
|
54
|
+
allow_list = BackupRepos.config.only_list
|
55
|
+
return !repo_exists?(allow_list, repo) if allow_list.present?
|
56
|
+
|
52
57
|
return false if exclude_repos.blank?
|
53
58
|
|
59
|
+
repo_exists?(exclude_repos, repo)
|
60
|
+
end
|
61
|
+
|
62
|
+
def repo_exists?(list, repo)
|
54
63
|
repo_owner = repo.owner.login.to_s.downcase
|
55
64
|
full_name = repo.full_name.to_s.downcase
|
65
|
+
list.include?(repo_owner) || list.include?(full_name)
|
66
|
+
end
|
56
67
|
|
57
|
-
|
68
|
+
def backup_gist?
|
69
|
+
BackupRepos.config.only_list.blank?
|
58
70
|
end
|
59
71
|
end
|
60
72
|
end
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'gitlab'
|
2
4
|
require 'uri'
|
3
5
|
|
@@ -5,10 +7,12 @@ require_relative 'performers/gitlab_repository'
|
|
5
7
|
|
6
8
|
module BackupRepos
|
7
9
|
class BackupGitlabEndpoint
|
10
|
+
DEFAULT_ENDPOINT = 'https://gitlab.com/api/v4'
|
11
|
+
|
8
12
|
attr_reader :endpoint, :private_token
|
9
13
|
|
10
14
|
def initialize(settings)
|
11
|
-
@endpoint = settings.endpoint
|
15
|
+
@endpoint = settings.endpoint || DEFAULT_ENDPOINT
|
12
16
|
@private_token = settings.private_token
|
13
17
|
end
|
14
18
|
|
@@ -17,7 +21,7 @@ module BackupRepos
|
|
17
21
|
end
|
18
22
|
|
19
23
|
def repos
|
20
|
-
@repos ||= client.projects.auto_paginate
|
24
|
+
@repos ||= client.projects(membership: true).auto_paginate
|
21
25
|
end
|
22
26
|
|
23
27
|
def client
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module BackupRepos
|
2
4
|
module CLI
|
3
5
|
class Setup
|
@@ -33,6 +35,10 @@ module BackupRepos
|
|
33
35
|
if cli.agree '* Are you want to backup BitBucket repositories?'
|
34
36
|
configure_bitbucket
|
35
37
|
end
|
38
|
+
|
39
|
+
if cli.agree '* Are you want to backup GitLab repositories?'
|
40
|
+
configure_gitlab
|
41
|
+
end
|
36
42
|
end
|
37
43
|
|
38
44
|
def configure_backup_directory
|
@@ -78,6 +84,26 @@ module BackupRepos
|
|
78
84
|
end
|
79
85
|
end
|
80
86
|
|
87
|
+
def configure_gitlab
|
88
|
+
@config[:gitlab] ||= []
|
89
|
+
|
90
|
+
cli.say ' GitLab Endpoint. Use this for self-hosted GitLab or press Enter to skip.'
|
91
|
+
endpoint = cli.ask ' Endpoint: '
|
92
|
+
cli.say ' What is your GitLab private token?'
|
93
|
+
private_token = cli.ask ' Private Token: '
|
94
|
+
exclude_repositories = cli.ask(
|
95
|
+
' Exclude repositories or organizations (separate by space): ', Array
|
96
|
+
)
|
97
|
+
|
98
|
+
config = {}
|
99
|
+
config[:endpoint] = endpoint if endpoint.present?
|
100
|
+
config[:private_token] = private_token if private_token.present?
|
101
|
+
|
102
|
+
config[:exclude] = exclude_repositories if exclude_repositories.present?
|
103
|
+
|
104
|
+
@config[:gitlab] << config
|
105
|
+
end
|
106
|
+
|
81
107
|
def configure_bitbucket
|
82
108
|
cli.say ' What is your BitBucket credentials?'
|
83
109
|
username = ask(' Username: ')
|
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'commander'
|
2
4
|
|
3
5
|
require_relative 'cli/setup'
|
@@ -15,13 +17,15 @@ module BackupRepos
|
|
15
17
|
c.syntax = 'backup-repos backup'
|
16
18
|
c.description = 'Backup your repositories.'
|
17
19
|
|
18
|
-
c.option '--
|
20
|
+
c.option '--config-path PATH', String, 'Path to configuration file'
|
21
|
+
c.option '--backup-root DIR', String, 'Backup destination directory'
|
19
22
|
c.option '--debug', String, 'Show debug information'
|
23
|
+
c.option '--only LIST', String, 'Only backup specified repos or orgs. Separate by comma.'
|
20
24
|
|
21
25
|
c.action do |args, options|
|
22
26
|
BackupRepos.config_options = options
|
23
27
|
|
24
|
-
if args[0] && %w
|
28
|
+
if args[0] && %w[github bitbucket gitlab].include?(args[0].downcase)
|
25
29
|
BackupRepos::Backup.new.send("process_#{args[0]}")
|
26
30
|
else
|
27
31
|
BackupRepos::Backup.new.process
|
data/lib/backup_repos/config.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
require 'yaml'
|
2
4
|
require 'hashie/mash'
|
3
5
|
|
@@ -5,7 +7,7 @@ module BackupRepos
|
|
5
7
|
class Config
|
6
8
|
attr_reader :options
|
7
9
|
|
8
|
-
def initialize(options =
|
10
|
+
def initialize(options = BackupRepos::Mash.new({}))
|
9
11
|
@options = options
|
10
12
|
end
|
11
13
|
|
@@ -17,6 +19,7 @@ module BackupRepos
|
|
17
19
|
|
18
20
|
def backup_root
|
19
21
|
return if backup_root_dir.blank?
|
22
|
+
|
20
23
|
File.expand_path(backup_root_dir)
|
21
24
|
end
|
22
25
|
|
@@ -25,10 +28,18 @@ module BackupRepos
|
|
25
28
|
options.github_access_token || config_token
|
26
29
|
end
|
27
30
|
|
31
|
+
def only_list
|
32
|
+
return if options.only.blank?
|
33
|
+
|
34
|
+
options.only.split(',').map(&:strip)
|
35
|
+
end
|
36
|
+
|
28
37
|
# ===
|
29
38
|
|
30
39
|
def method_missing(name, *_args)
|
31
|
-
options.send(name)
|
40
|
+
return options.send(name) if options.respond_to?(name)
|
41
|
+
|
42
|
+
config[name.to_s]
|
32
43
|
end
|
33
44
|
|
34
45
|
def respond_to_missing?(name, include_private = false)
|
@@ -36,17 +47,24 @@ module BackupRepos
|
|
36
47
|
end
|
37
48
|
|
38
49
|
def config_file
|
39
|
-
File.join(Dir.home, '.backup-repos')
|
50
|
+
return File.join(Dir.home, '.backup-repos') if options.config_path.blank?
|
51
|
+
|
52
|
+
File.expand_path(options.config_path)
|
53
|
+
end
|
54
|
+
|
55
|
+
def dig(*args)
|
56
|
+
config.dig(*args)
|
40
57
|
end
|
41
58
|
|
42
59
|
private
|
43
60
|
|
44
61
|
def config
|
45
|
-
@config ||=
|
62
|
+
@config ||= BackupRepos::Mash.new(file_config)
|
46
63
|
end
|
47
64
|
|
48
65
|
def file_config
|
49
66
|
return {} unless File.exist?(config_file)
|
67
|
+
|
50
68
|
@file_config ||= (YAML.load_file(config_file) || {})
|
51
69
|
end
|
52
70
|
|
data/lib/backup_repos/shell.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
1
3
|
module BackupRepos
|
2
4
|
class Shell
|
3
5
|
def initialize(opts = {})
|
@@ -16,7 +18,7 @@ module BackupRepos
|
|
16
18
|
end
|
17
19
|
|
18
20
|
def execute_command(command)
|
19
|
-
output = IO.popen(command, 'r', err: [
|
21
|
+
output = IO.popen(command, 'r', err: %i[child out]) do |io|
|
20
22
|
output = io.read
|
21
23
|
log_output(output)
|
22
24
|
output
|
data/lib/backup_repos/version.rb
CHANGED
data/lib/core_ext/object.rb
CHANGED
data/lib/core_ext/string.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: backup_repos
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Justas Palumickas
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2019-11-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bitbucket_rest_api
|
@@ -58,84 +58,98 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
61
|
+
version: '4.12'
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
68
|
+
version: '4.12'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: hashie
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version: '
|
75
|
+
version: '4.0'
|
76
76
|
type: :runtime
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version: '
|
82
|
+
version: '4.0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: highline
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '2.0'
|
90
|
+
type: :runtime
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '2.0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: octokit
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
86
100
|
requirements:
|
87
101
|
- - "~>"
|
88
102
|
- !ruby/object:Gem::Version
|
89
|
-
version: '4.
|
103
|
+
version: '4.14'
|
90
104
|
type: :runtime
|
91
105
|
prerelease: false
|
92
106
|
version_requirements: !ruby/object:Gem::Requirement
|
93
107
|
requirements:
|
94
108
|
- - "~>"
|
95
109
|
- !ruby/object:Gem::Version
|
96
|
-
version: '4.
|
110
|
+
version: '4.14'
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: bundler
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|
100
114
|
requirements:
|
101
115
|
- - "~>"
|
102
116
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
117
|
+
version: '2.0'
|
104
118
|
type: :development
|
105
119
|
prerelease: false
|
106
120
|
version_requirements: !ruby/object:Gem::Requirement
|
107
121
|
requirements:
|
108
122
|
- - "~>"
|
109
123
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
124
|
+
version: '2.0'
|
111
125
|
- !ruby/object:Gem::Dependency
|
112
126
|
name: rake
|
113
127
|
requirement: !ruby/object:Gem::Requirement
|
114
128
|
requirements:
|
115
129
|
- - "~>"
|
116
130
|
- !ruby/object:Gem::Version
|
117
|
-
version: '
|
131
|
+
version: '12.0'
|
118
132
|
type: :development
|
119
133
|
prerelease: false
|
120
134
|
version_requirements: !ruby/object:Gem::Requirement
|
121
135
|
requirements:
|
122
136
|
- - "~>"
|
123
137
|
- !ruby/object:Gem::Version
|
124
|
-
version: '
|
138
|
+
version: '12.0'
|
125
139
|
- !ruby/object:Gem::Dependency
|
126
140
|
name: rspec
|
127
141
|
requirement: !ruby/object:Gem::Requirement
|
128
142
|
requirements:
|
129
143
|
- - "~>"
|
130
144
|
- !ruby/object:Gem::Version
|
131
|
-
version: '3.
|
145
|
+
version: '3.8'
|
132
146
|
type: :development
|
133
147
|
prerelease: false
|
134
148
|
version_requirements: !ruby/object:Gem::Requirement
|
135
149
|
requirements:
|
136
150
|
- - "~>"
|
137
151
|
- !ruby/object:Gem::Version
|
138
|
-
version: '3.
|
152
|
+
version: '3.8'
|
139
153
|
description: Backup your GitHub, BitBucket, GitLab repositories to specified directory.
|
140
154
|
email:
|
141
155
|
- jpalumickas@gmail.com
|
@@ -144,14 +158,13 @@ executables:
|
|
144
158
|
extensions: []
|
145
159
|
extra_rdoc_files: []
|
146
160
|
files:
|
147
|
-
- ".
|
161
|
+
- ".github/workflows/test.yml"
|
148
162
|
- ".gitignore"
|
149
163
|
- ".hound.yml"
|
150
164
|
- ".rspec"
|
151
165
|
- ".rubocop.yml"
|
152
|
-
- ".travis.yml"
|
153
166
|
- Gemfile
|
154
|
-
- LICENSE
|
167
|
+
- LICENSE
|
155
168
|
- README.md
|
156
169
|
- Rakefile
|
157
170
|
- backup_repos.gemspec
|
@@ -167,6 +180,7 @@ files:
|
|
167
180
|
- lib/backup_repos/cli/setup.rb
|
168
181
|
- lib/backup_repos/commander.rb
|
169
182
|
- lib/backup_repos/config.rb
|
183
|
+
- lib/backup_repos/mash.rb
|
170
184
|
- lib/backup_repos/performers/base_git.rb
|
171
185
|
- lib/backup_repos/performers/bitbucket_git_repository.rb
|
172
186
|
- lib/backup_repos/performers/bitbucket_git_wiki.rb
|
@@ -189,15 +203,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
189
203
|
requirements:
|
190
204
|
- - ">="
|
191
205
|
- !ruby/object:Gem::Version
|
192
|
-
version:
|
206
|
+
version: 2.4.0
|
193
207
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
194
208
|
requirements:
|
195
209
|
- - ">="
|
196
210
|
- !ruby/object:Gem::Version
|
197
211
|
version: '0'
|
198
212
|
requirements: []
|
199
|
-
|
200
|
-
rubygems_version: 2.6.8
|
213
|
+
rubygems_version: 3.0.6
|
201
214
|
signing_key:
|
202
215
|
specification_version: 4
|
203
216
|
summary: Backup your repositories
|
data/.codeclimate.yml
DELETED
@@ -1,22 +0,0 @@
|
|
1
|
-
engines:
|
2
|
-
duplication:
|
3
|
-
enabled: true
|
4
|
-
config:
|
5
|
-
languages:
|
6
|
-
- ruby
|
7
|
-
fixme:
|
8
|
-
enabled: true
|
9
|
-
rubocop:
|
10
|
-
enabled: true
|
11
|
-
exclude_fingerprints:
|
12
|
-
- 580ec239bc6e53e62cd63ce219b812e6
|
13
|
-
- 39dfc9669aec43e3e76abb09d3b5fcc1
|
14
|
-
- 016d5b320f02cb900b27631f3c7c0a20
|
15
|
-
checks:
|
16
|
-
Rubocop/Rails/Output:
|
17
|
-
enabled: false
|
18
|
-
ratings:
|
19
|
-
paths:
|
20
|
-
- "**.rb"
|
21
|
-
exclude_paths:
|
22
|
-
- spec/
|
data/.travis.yml
DELETED
@@ -1,11 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
rvm:
|
3
|
-
- 2.2.3
|
4
|
-
before_install: gem install bundler -v 1.11.2
|
5
|
-
notifications:
|
6
|
-
webhooks:
|
7
|
-
urls:
|
8
|
-
- https://webhooks.gitter.im/e/42b88a12ac0d365e7709
|
9
|
-
on_success: change # options: [always|never|change] default: always
|
10
|
-
on_failure: always # options: [always|never|change] default: always
|
11
|
-
on_start: never # options: [always|never|change] default: always
|