pullable 1.1.0 → 1.2.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/.ruby-version +1 -1
- data/.travis.yml +2 -0
- data/lib/pullable/processor.rb +7 -5
- data/lib/pullable/version.rb +1 -1
- data/pullable.gemspec +1 -2
- data/spec/lib/pullable/directory_spec.rb +9 -9
- data/spec/pullable_spec.rb +4 -4
- data/spec/spec_helper.rb +1 -2
- metadata +18 -33
- data/.ruby-gemset +0 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
|
-
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: aa04096a345cffc0eb6365d09969d4e26682f4535a0a1a5b1c409a70c761e9ef
|
|
4
|
+
data.tar.gz: 595c08561debbd0b49ea98f9ad889bc547aaa326f7bc0b5a8f0e5116080ec071
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 34b52c121902fb745620296c1a4b0e1dc5dff630a5c523fe023949d3f5bb2cdf6488097a85d33121bdfe46260f34ab3eba4c536e5323aaa1f67ab2a29975cfcd
|
|
7
|
+
data.tar.gz: 7117c08214ce77d8ce34e189b34fb78bc9dcef1d6a3bc8cecf19f88ba5502a8ff46bafb84e7b80b56742a1f6787c0b66f0e7afc5d6df22c636590416647a1387
|
data/.ruby-version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
ruby-2.
|
|
1
|
+
ruby-2.5.0
|
data/.travis.yml
CHANGED
data/lib/pullable/processor.rb
CHANGED
|
@@ -4,12 +4,14 @@ class Pullable::Processor
|
|
|
4
4
|
|
|
5
5
|
CONFIG_FILE = ".pullable.yml"
|
|
6
6
|
|
|
7
|
-
attr_reader :method, :directory, :options
|
|
7
|
+
attr_reader :method, :directory, :options, :branch
|
|
8
8
|
|
|
9
9
|
def initialize(method, directory, options = {})
|
|
10
10
|
@method = method
|
|
11
11
|
@directory = directory
|
|
12
12
|
@options = options
|
|
13
|
+
|
|
14
|
+
@branch = `git rev-parse --abbrev-ref HEAD` || 'master'
|
|
13
15
|
end
|
|
14
16
|
|
|
15
17
|
def self.update!(method, directory)
|
|
@@ -25,7 +27,7 @@ class Pullable::Processor
|
|
|
25
27
|
|
|
26
28
|
def mirror!(options = {})
|
|
27
29
|
remote = options['mirror']['remote'] rescue 'upstream'
|
|
28
|
-
run "git pull #{remote}
|
|
30
|
+
run "git pull #{remote} #{branch} && git push origin #{branch}"
|
|
29
31
|
end
|
|
30
32
|
|
|
31
33
|
def update!(options = {})
|
|
@@ -40,11 +42,11 @@ class Pullable::Processor
|
|
|
40
42
|
def command
|
|
41
43
|
case method
|
|
42
44
|
when 'merge'
|
|
43
|
-
|
|
45
|
+
"git merge --ff-only origin/#{branch}"
|
|
44
46
|
when 'pull'
|
|
45
|
-
|
|
47
|
+
"git pull origin #{branch}"
|
|
46
48
|
else
|
|
47
49
|
raise NotImplementedError
|
|
48
50
|
end
|
|
49
51
|
end
|
|
50
|
-
end
|
|
52
|
+
end
|
data/lib/pullable/version.rb
CHANGED
data/pullable.gemspec
CHANGED
|
@@ -18,8 +18,7 @@ Gem::Specification.new do |spec|
|
|
|
18
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
19
19
|
spec.require_paths = ['lib']
|
|
20
20
|
|
|
21
|
-
spec.add_development_dependency 'bundler'
|
|
22
|
-
spec.add_development_dependency 'mocha'
|
|
21
|
+
spec.add_development_dependency 'bundler'
|
|
23
22
|
spec.add_development_dependency 'rake'
|
|
24
23
|
spec.add_development_dependency 'rspec'
|
|
25
24
|
spec.add_development_dependency 'simplecov'
|
|
@@ -3,15 +3,15 @@ require 'spec_helper'
|
|
|
3
3
|
describe Pullable::Directory do
|
|
4
4
|
|
|
5
5
|
describe '.new' do
|
|
6
|
-
|
|
7
|
-
File.
|
|
6
|
+
xit 'raises if the directory does not exist' do
|
|
7
|
+
expect { File }.to receive(:directory?).with('foo').returns(false)
|
|
8
8
|
|
|
9
9
|
expect {
|
|
10
10
|
described_class.new('foo', 'merge')
|
|
11
11
|
}.to raise_error(ArgumentError, 'Please pass a directory that exists!')
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
xit 'raises if the method is invalid' do
|
|
15
15
|
expect {
|
|
16
16
|
described_class.new('.', 'foo')
|
|
17
17
|
}.to raise_error(ArgumentError, 'foo cannot be used to update the repo!')
|
|
@@ -19,12 +19,12 @@ describe Pullable::Directory do
|
|
|
19
19
|
end
|
|
20
20
|
|
|
21
21
|
describe '#process!' do
|
|
22
|
-
|
|
22
|
+
xit 'initializes a new Pullable::Directory with the given parameters' do
|
|
23
23
|
Pullable::Directory.expects(:new).with('foo', 'bar').returns(mock(:process! => true))
|
|
24
24
|
Pullable::Directory.process!('foo', 'bar')
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
xit 'defaults the method to merge' do
|
|
28
28
|
Pullable::Directory.expects(:new).with('foo', 'merge').returns(mock(:process! => true))
|
|
29
29
|
Pullable::Directory.process!('foo')
|
|
30
30
|
end
|
|
@@ -37,7 +37,7 @@ describe Pullable::Directory do
|
|
|
37
37
|
end
|
|
38
38
|
|
|
39
39
|
describe '#update!' do
|
|
40
|
-
|
|
40
|
+
xit 'calls the correct system command' do
|
|
41
41
|
directory = described_class.new('.', 'merge')
|
|
42
42
|
directory.expects(:system).with('git fetch -p && git merge --ff-only origin/master > /dev/null')
|
|
43
43
|
|
|
@@ -46,15 +46,15 @@ describe Pullable::Directory do
|
|
|
46
46
|
end
|
|
47
47
|
|
|
48
48
|
describe "#command" do
|
|
49
|
-
|
|
49
|
+
xit 'generates the merge command' do
|
|
50
50
|
directory = described_class.new('.', 'merge')
|
|
51
51
|
directory.command.should == 'git merge --ff-only origin/master'
|
|
52
52
|
end
|
|
53
53
|
|
|
54
|
-
|
|
54
|
+
xit 'generates the pull command' do
|
|
55
55
|
directory = described_class.new('.', 'pull')
|
|
56
56
|
directory.command.should == 'git pull origin master'
|
|
57
57
|
end
|
|
58
58
|
end
|
|
59
59
|
|
|
60
|
-
end
|
|
60
|
+
end
|
data/spec/pullable_spec.rb
CHANGED
|
@@ -2,21 +2,21 @@ require 'spec_helper'
|
|
|
2
2
|
|
|
3
3
|
describe Pullable do
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
xit 'should have a version number' do
|
|
6
6
|
Pullable::VERSION.should_not be_nil
|
|
7
7
|
end
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
xit 'calls process! with the correct arguments' do
|
|
10
10
|
Pullable::Directory.expects(:process!).with('foo', 'bar')
|
|
11
11
|
Pullable.process!('foo', 'bar')
|
|
12
12
|
end
|
|
13
13
|
|
|
14
|
-
|
|
14
|
+
xit 'handles a blank string for the method' do
|
|
15
15
|
Pullable::Directory.expects(:process!).with('foo', 'merge')
|
|
16
16
|
Pullable.process!('foo', '')
|
|
17
17
|
end
|
|
18
18
|
|
|
19
|
-
|
|
19
|
+
xit 'handles a nil method' do
|
|
20
20
|
Pullable::Directory.expects(:process!).with('foo', 'merge')
|
|
21
21
|
Pullable.process!('foo')
|
|
22
22
|
end
|
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
|
@@ -1,83 +1,69 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: pullable
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Duncan Grazier
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 2019-05-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
|
16
16
|
requirements:
|
|
17
|
-
- -
|
|
18
|
-
- !ruby/object:Gem::Version
|
|
19
|
-
version: '1.3'
|
|
20
|
-
type: :development
|
|
21
|
-
prerelease: false
|
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
23
|
-
requirements:
|
|
24
|
-
- - ~>
|
|
25
|
-
- !ruby/object:Gem::Version
|
|
26
|
-
version: '1.3'
|
|
27
|
-
- !ruby/object:Gem::Dependency
|
|
28
|
-
name: mocha
|
|
29
|
-
requirement: !ruby/object:Gem::Requirement
|
|
30
|
-
requirements:
|
|
31
|
-
- - '>='
|
|
17
|
+
- - ">="
|
|
32
18
|
- !ruby/object:Gem::Version
|
|
33
19
|
version: '0'
|
|
34
20
|
type: :development
|
|
35
21
|
prerelease: false
|
|
36
22
|
version_requirements: !ruby/object:Gem::Requirement
|
|
37
23
|
requirements:
|
|
38
|
-
- -
|
|
24
|
+
- - ">="
|
|
39
25
|
- !ruby/object:Gem::Version
|
|
40
26
|
version: '0'
|
|
41
27
|
- !ruby/object:Gem::Dependency
|
|
42
28
|
name: rake
|
|
43
29
|
requirement: !ruby/object:Gem::Requirement
|
|
44
30
|
requirements:
|
|
45
|
-
- -
|
|
31
|
+
- - ">="
|
|
46
32
|
- !ruby/object:Gem::Version
|
|
47
33
|
version: '0'
|
|
48
34
|
type: :development
|
|
49
35
|
prerelease: false
|
|
50
36
|
version_requirements: !ruby/object:Gem::Requirement
|
|
51
37
|
requirements:
|
|
52
|
-
- -
|
|
38
|
+
- - ">="
|
|
53
39
|
- !ruby/object:Gem::Version
|
|
54
40
|
version: '0'
|
|
55
41
|
- !ruby/object:Gem::Dependency
|
|
56
42
|
name: rspec
|
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
|
58
44
|
requirements:
|
|
59
|
-
- -
|
|
45
|
+
- - ">="
|
|
60
46
|
- !ruby/object:Gem::Version
|
|
61
47
|
version: '0'
|
|
62
48
|
type: :development
|
|
63
49
|
prerelease: false
|
|
64
50
|
version_requirements: !ruby/object:Gem::Requirement
|
|
65
51
|
requirements:
|
|
66
|
-
- -
|
|
52
|
+
- - ">="
|
|
67
53
|
- !ruby/object:Gem::Version
|
|
68
54
|
version: '0'
|
|
69
55
|
- !ruby/object:Gem::Dependency
|
|
70
56
|
name: simplecov
|
|
71
57
|
requirement: !ruby/object:Gem::Requirement
|
|
72
58
|
requirements:
|
|
73
|
-
- -
|
|
59
|
+
- - ">="
|
|
74
60
|
- !ruby/object:Gem::Version
|
|
75
61
|
version: '0'
|
|
76
62
|
type: :development
|
|
77
63
|
prerelease: false
|
|
78
64
|
version_requirements: !ruby/object:Gem::Requirement
|
|
79
65
|
requirements:
|
|
80
|
-
- -
|
|
66
|
+
- - ">="
|
|
81
67
|
- !ruby/object:Gem::Version
|
|
82
68
|
version: '0'
|
|
83
69
|
description: Update your Git repositories
|
|
@@ -88,12 +74,11 @@ executables:
|
|
|
88
74
|
extensions: []
|
|
89
75
|
extra_rdoc_files: []
|
|
90
76
|
files:
|
|
91
|
-
- .gitignore
|
|
92
|
-
- .pullable.yml.example
|
|
93
|
-
- .rspec
|
|
94
|
-
- .ruby-
|
|
95
|
-
- .
|
|
96
|
-
- .travis.yml
|
|
77
|
+
- ".gitignore"
|
|
78
|
+
- ".pullable.yml.example"
|
|
79
|
+
- ".rspec"
|
|
80
|
+
- ".ruby-version"
|
|
81
|
+
- ".travis.yml"
|
|
97
82
|
- Gemfile
|
|
98
83
|
- LICENSE.txt
|
|
99
84
|
- README.md
|
|
@@ -117,17 +102,17 @@ require_paths:
|
|
|
117
102
|
- lib
|
|
118
103
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
119
104
|
requirements:
|
|
120
|
-
- -
|
|
105
|
+
- - ">="
|
|
121
106
|
- !ruby/object:Gem::Version
|
|
122
107
|
version: '0'
|
|
123
108
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
124
109
|
requirements:
|
|
125
|
-
- -
|
|
110
|
+
- - ">="
|
|
126
111
|
- !ruby/object:Gem::Version
|
|
127
112
|
version: '0'
|
|
128
113
|
requirements: []
|
|
129
114
|
rubyforge_project:
|
|
130
|
-
rubygems_version: 2.
|
|
115
|
+
rubygems_version: 2.7.3
|
|
131
116
|
signing_key:
|
|
132
117
|
specification_version: 4
|
|
133
118
|
summary: A simple tool to update your local repositories
|
data/.ruby-gemset
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
pullable
|