spaarti 0.1.0 → 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: c42ba062b7a494cebed060c05573e29456f03fdc
4
- data.tar.gz: 7f0ea344fc7cf4eccf66ab0e9ca0d6c10d97739b
3
+ metadata.gz: 41e9356ebb4e3cd584fe7709dd654ce7e2ef6f27
4
+ data.tar.gz: 2623beead2caa3754eb05f09f98438356b62ccf6
5
5
  SHA512:
6
- metadata.gz: 8b07d2daf7693308084d93e72752cdb716d1a68a7fa41a72674ab6f09bfd19c96d2d53ce2e2459ab307ed3d1acc7153e64ce91f3884ca251530d9840d6ca0c1a
7
- data.tar.gz: 827d5277721187b041c163691026c4bf3749eb923211434913856664c8fcc479d9a7da73f500e305d30f3442ce3441dfc39b1aac219ac300dc3e7b7c240a3e94
6
+ metadata.gz: 1b70d551c3c874a0aceb2e4aa59f0772575256659aa134a1aa6862e7c4bfbc32f083997016751812446c413470ff25af539c9a2b391eb58afeef2f7960ad87ff
7
+ data.tar.gz: 45d6baceb3b892aa5969ae8859e502b524b9011fafb3acb158922a0c393b6432339354fea6ab06c8a68158ccd6b346e4912ab95eaa22da158c9a09d657de9f9b
data/.prospectus ADDED
@@ -0,0 +1,11 @@
1
+ item do
2
+ expected do
3
+ static
4
+ set 'green'
5
+ end
6
+
7
+ actual do
8
+ gemnasium
9
+ slug 'akerl/spaarti'
10
+ end
11
+ end
data/CHANGELOG.md ADDED
@@ -0,0 +1,4 @@
1
+ # 1.0.0 / 2016-01-23
2
+
3
+ * [ENHANCEMENT] Stabilized API
4
+
data/README.md CHANGED
@@ -3,9 +3,9 @@ spaarti
3
3
 
4
4
  [![Gem Version](https://img.shields.io/gem/v/spaarti.svg)](https://rubygems.org/gems/spaarti)
5
5
  [![Dependency Status](https://img.shields.io/gemnasium/akerl/spaarti.svg)](https://gemnasium.com/akerl/spaarti)
6
- [![Code Climate](https://img.shields.io/codeclimate/github/akerl/spaarti.svg)](https://codeclimate.com/github/akerl/spaarti)
7
- [![Coverage Status](https://img.shields.io/coveralls/akerl/spaarti.svg)](https://coveralls.io/r/akerl/spaarti)
8
- [![Build Status](https://img.shields.io/travis/akerl/spaarti.svg)](https://travis-ci.org/akerl/spaarti)
6
+ [![Build Status](https://img.shields.io/circleci/project/akerl/spaarti.svg)](https://circleci.com/gh/akerl/spaarti)
7
+ [![Coverage Status](https://img.shields.io/codecov/c/github/akerl/spaarti.svg)](https://codecov.io/github/akerl/spaarti)
8
+ [![Code Quality](https://img.shields.io/codacy/65bacb9d92d948f6ae637ce63ade3557.svg)](https://www.codacy.com/app/akerl/spaarti)
9
9
  [![MIT Licensed](https://img.shields.io/badge/license-MIT-green.svg)](https://tldrlegal.com/license/mit-license)
10
10
 
11
11
  Tool to maintain local clones of repos you have access to on GitHub
data/circle.yml ADDED
@@ -0,0 +1,12 @@
1
+ dependencies:
2
+ override:
3
+ - 'rvm-exec 1.9.3-p551 bundle install'
4
+ - 'rvm-exec 2.0.0-p645 bundle install'
5
+ - 'rvm-exec 2.1.6 bundle install'
6
+ - 'rvm-exec 2.2.2 bundle install'
7
+ test:
8
+ override:
9
+ - 'rvm-exec 1.9.3-p551 bundle exec rake'
10
+ - 'rvm-exec 2.0.0-p645 bundle exec rake'
11
+ - 'rvm-exec 2.1.6 bundle exec rake'
12
+ - 'rvm-exec 2.2.2 bundle exec rake'
data/lib/spaarti/repo.rb CHANGED
@@ -35,7 +35,7 @@ module Spaarti
35
35
  end
36
36
 
37
37
  def run(cmd, error_msg)
38
- res = system "#{cmd} &>/dev/null"
38
+ res = system "#{cmd} 1>/dev/null 2>/dev/null"
39
39
  err(error_msg) unless res
40
40
  end
41
41
 
@@ -47,7 +47,7 @@ module Spaarti
47
47
  return log("#{@data[:full_name]} already cloned") if Dir.exist? @path
48
48
  log "Cloning #{url} to #{@path}"
49
49
  run(
50
- "git clone '#{url}' '#{@path}' &>/dev/null",
50
+ "git clone '#{url}' '#{@path}'",
51
51
  "Failed to clone #{url}"
52
52
  )
53
53
  end
@@ -69,10 +69,12 @@ module Spaarti
69
69
  end
70
70
 
71
71
  def update_submodules
72
- run(
73
- 'git submodule update --init',
74
- "Failed to update submodules in #{@path}"
75
- )
72
+ ['foreach git fetch --all --tags', 'update --init'].each do |cmd|
73
+ run(
74
+ "git submodule #{cmd}",
75
+ "Failed to update submodules in #{@path}"
76
+ )
77
+ end
76
78
  end
77
79
  end
78
80
  end
data/lib/spaarti/site.rb CHANGED
@@ -17,19 +17,20 @@ module Spaarti
17
17
  quiet: false,
18
18
  purge: false,
19
19
  url_type: 'ssh'
20
- }
20
+ }.freeze
21
21
 
22
22
  ##
23
23
  # Site object, represents a group of repos
24
24
  class Site
25
25
  def initialize(params = {})
26
26
  @options = DEFAULT_OPTIONS.dup.merge params
27
- load_config(params.include? :config_file)
28
- auth
27
+ load_config(params.include?(:config_file))
28
+ return unless @options[:auth_file].is_a? String
29
+ @options[:auth_file] = File.expand_path(@options[:auth_file])
29
30
  end
30
31
 
31
32
  def sync!
32
- Dir.chdir(File.expand_path @options[:base_path]) do
33
+ Dir.chdir(File.expand_path(@options[:base_path])) do
33
34
  repos.each(&:sync!)
34
35
  purge! if @options[:purge]
35
36
  end
@@ -1,5 +1,6 @@
1
+ # frozen_string_literal: true
1
2
  ##
2
3
  # Set the version (needed for Mercenary -v)
3
4
  module Spaarti
4
- VERSION = '0.1.0'
5
+ VERSION = '1.0.0'.freeze
5
6
  end
data/spaarti.gemspec CHANGED
@@ -17,16 +17,16 @@ Gem::Specification.new do |s|
17
17
  s.test_files = `git ls-files spec/*`.split
18
18
  s.executables = ['spaarti']
19
19
 
20
- s.add_dependency 'octokit', '~> 3.8.0'
21
- s.add_dependency 'octoauth', '~> 1.0.1'
20
+ s.add_dependency 'octokit', '~> 4.2.0'
21
+ s.add_dependency 'octoauth', '~> 1.4.0'
22
22
  s.add_dependency 'mercenary', '~> 0.3.4'
23
23
  s.add_dependency 'cymbal', '~> 1.0.0'
24
24
 
25
- s.add_development_dependency 'rubocop', '~> 0.29.0'
26
- s.add_development_dependency 'rake', '~> 10.4.0'
27
- s.add_development_dependency 'coveralls', '~> 0.8.0'
28
- s.add_development_dependency 'rspec', '~> 3.2.0'
25
+ s.add_development_dependency 'rubocop', '~> 0.36.0'
26
+ s.add_development_dependency 'rake', '~> 10.5.0'
27
+ s.add_development_dependency 'codecov', '~> 0.1.1'
28
+ s.add_development_dependency 'rspec', '~> 3.4.0'
29
29
  s.add_development_dependency 'fuubar', '~> 2.0.0'
30
- s.add_development_dependency 'webmock', '~> 1.21.0'
31
- s.add_development_dependency 'vcr', '~> 2.9.2'
30
+ s.add_development_dependency 'webmock', '~> 1.22.0'
31
+ s.add_development_dependency 'vcr', '~> 3.0.0'
32
32
  end
@@ -14,9 +14,9 @@ describe Spaarti do
14
14
 
15
15
  describe '#sync!' do
16
16
  it 'clones repo' do
17
- expect(File.exist? "#{path}/akerl/spaarti/.git").to be_falsey
17
+ expect(File.exist?("#{path}/akerl/spaarti/.git")).to be_falsey
18
18
  VCR.use_cassette('repos') { subject.sync! }
19
- expect(File.exist? "#{path}/akerl/spaarti/.git").to be_truthy
19
+ expect(File.exist?("#{path}/akerl/spaarti/.git")).to be_truthy
20
20
  end
21
21
 
22
22
  context 'with purge enabled' do
@@ -25,7 +25,7 @@ describe Spaarti do
25
25
  VCR.use_cassette('repos') do
26
26
  Spaarti::Site.new(purge: true, config_file: config).sync!
27
27
  end
28
- expect(File.exist? "#{path}/akerl/orphan").to be_falsey
28
+ expect(File.exist?("#{path}/akerl/orphan")).to be_falsey
29
29
  end
30
30
  end
31
31
  context 'with purge disabled' do
@@ -34,7 +34,7 @@ describe Spaarti do
34
34
  VCR.use_cassette('repos') do
35
35
  Spaarti::Site.new(purge: false, config_file: config).sync!
36
36
  end
37
- expect(File.exist? "#{path}/akerl/orphan").to be_truthy
37
+ expect(File.exist?("#{path}/akerl/orphan")).to be_truthy
38
38
  end
39
39
  end
40
40
 
@@ -44,7 +44,7 @@ describe Spaarti do
44
44
  exclude: { full_name: ['[ab]a'] }, config_file: config
45
45
  ).sync!
46
46
  end
47
- expect(File.exist? "#{path}/akerl/spaarti").to be_falsey
47
+ expect(File.exist?("#{path}/akerl/spaarti")).to be_falsey
48
48
  end
49
49
  end
50
50
 
@@ -54,7 +54,7 @@ describe Spaarti do
54
54
  VCR.use_cassette('repos') do
55
55
  Spaarti::Site.new(purge: true, config_file: config).sync!
56
56
  end
57
- expect(File.exist? "#{path}/akerl/orphan").to be_falsey
57
+ expect(File.exist?("#{path}/akerl/orphan")).to be_falsey
58
58
  end
59
59
  end
60
60
  end
data/spec/spec_helper.rb CHANGED
@@ -1,9 +1,10 @@
1
- require 'simplecov'
2
- require 'coveralls'
3
-
4
- SimpleCov.formatter = Coveralls::SimpleCov::Formatter
5
- SimpleCov.start do
6
- add_filter '/spec/'
1
+ if ENV['CI'] == 'true'
2
+ require 'simplecov'
3
+ require 'codecov'
4
+ SimpleCov.formatter = SimpleCov::Formatter::Codecov
5
+ SimpleCov.start do
6
+ add_filter '/spec/'
7
+ end
7
8
  end
8
9
 
9
10
  require 'rspec'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spaarti
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Les Aker
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-04-05 00:00:00.000000000 Z
11
+ date: 2016-01-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: octokit
@@ -16,28 +16,28 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.8.0
19
+ version: 4.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.8.0
26
+ version: 4.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: octoauth
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: 1.0.1
33
+ version: 1.4.0
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: 1.0.1
40
+ version: 1.4.0
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: mercenary
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -72,56 +72,56 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 0.29.0
75
+ version: 0.36.0
76
76
  type: :development
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: 0.29.0
82
+ version: 0.36.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: rake
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
87
  - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: 10.4.0
89
+ version: 10.5.0
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 10.4.0
96
+ version: 10.5.0
97
97
  - !ruby/object:Gem::Dependency
98
- name: coveralls
98
+ name: codecov
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 0.8.0
103
+ version: 0.1.1
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 0.8.0
110
+ version: 0.1.1
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: rspec
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 3.2.0
117
+ version: 3.4.0
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 3.2.0
124
+ version: 3.4.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: fuubar
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -142,28 +142,28 @@ dependencies:
142
142
  requirements:
143
143
  - - "~>"
144
144
  - !ruby/object:Gem::Version
145
- version: 1.21.0
145
+ version: 1.22.0
146
146
  type: :development
147
147
  prerelease: false
148
148
  version_requirements: !ruby/object:Gem::Requirement
149
149
  requirements:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
- version: 1.21.0
152
+ version: 1.22.0
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: vcr
155
155
  requirement: !ruby/object:Gem::Requirement
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 2.9.2
159
+ version: 3.0.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 2.9.2
166
+ version: 3.0.0
167
167
  description: Maintain local clones of repos you have access to on GitHub
168
168
  email: me@lesaker.org
169
169
  executables:
@@ -172,14 +172,16 @@ extensions: []
172
172
  extra_rdoc_files: []
173
173
  files:
174
174
  - ".gitignore"
175
+ - ".prospectus"
175
176
  - ".rspec"
176
177
  - ".rubocop.yml"
177
- - ".travis.yml"
178
+ - CHANGELOG.md
178
179
  - Gemfile
179
180
  - LICENSE
180
181
  - README.md
181
182
  - Rakefile
182
183
  - bin/spaarti
184
+ - circle.yml
183
185
  - lib/spaarti.rb
184
186
  - lib/spaarti/repo.rb
185
187
  - lib/spaarti/site.rb
@@ -213,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
213
215
  version: '0'
214
216
  requirements: []
215
217
  rubyforge_project:
216
- rubygems_version: 2.4.5
218
+ rubygems_version: 2.5.1
217
219
  signing_key:
218
220
  specification_version: 4
219
221
  summary: Helper for cloning GitHub repos
data/.travis.yml DELETED
@@ -1,15 +0,0 @@
1
- language: ruby
2
- cache: bundler
3
- sudo: false
4
- rvm:
5
- - 2.2.0
6
- - 2.1.5
7
- - 2.0.0-p598
8
- - 1.9.3-p551
9
- notifications:
10
- email: false
11
- irc:
12
- template:
13
- - "%{repository}/%{branch}/%{build_number}: %{message} -- %{build_url}"
14
- channels:
15
- - irc.oftc.net#akerl