thor-scmversion 1.4.0 → 1.6.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 +4 -4
- data/lib/thor-scmversion/scm_version.rb +13 -1
- data/lib/thor-scmversion/shell_utils.rb +8 -17
- data/thor-scmversion.gemspec +3 -1
- metadata +38 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f417c73aba03caf6ddd77d9aad69be00262d4333
|
4
|
+
data.tar.gz: 5dcaf8daa59935a309364bde48b286f277f0963a
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3a72c4932c53806e275e3827e9a05b49a341000b75ad29dbca40abcdb0bb63575b4087233b11bade943a5e80f3bc9e9554875c8198ea1119c50d87a092a87b4c
|
7
|
+
data.tar.gz: 58cc46b5c5607fd379b48577eb08659ef2690cd633089d90cd6226b8cd0e0b4172a2e9cf7fe4f17af6d1ce58c47b347a2d64056c1500ced5e4042645e77062fc
|
@@ -5,12 +5,24 @@ module ThorSCMVersion
|
|
5
5
|
#
|
6
6
|
# @return [#kind_of? ScmVersion]
|
7
7
|
def versioner
|
8
|
-
if
|
8
|
+
if is_git?
|
9
9
|
return GitVersion
|
10
10
|
else
|
11
11
|
return P4Version
|
12
12
|
end
|
13
13
|
end
|
14
|
+
|
15
|
+
def is_git?
|
16
|
+
file_exists?(Dir.pwd, '.git')
|
17
|
+
end
|
18
|
+
|
19
|
+
def file_exists?(current_dir, file)
|
20
|
+
return true if File.exist?(file)
|
21
|
+
Dir.chdir('..') do
|
22
|
+
return false if Dir.pwd == current_dir
|
23
|
+
file_exists?(current_dir, file)
|
24
|
+
end
|
25
|
+
end
|
14
26
|
end
|
15
27
|
|
16
28
|
# author Josiah Kiehl <josiah@skirmisher.net>
|
@@ -1,35 +1,26 @@
|
|
1
|
+
require 'mixlib/shellout'
|
2
|
+
|
1
3
|
module ThorSCMVersion
|
2
4
|
class ShellUtils
|
3
5
|
class << self
|
4
6
|
def secure_password
|
5
7
|
password = String.new
|
6
|
-
|
8
|
+
|
7
9
|
while password.length < 20
|
8
10
|
password << ::OpenSSL::Random.random_bytes(1).gsub(/\W/, '')
|
9
11
|
end
|
10
12
|
password
|
11
13
|
end
|
12
|
-
|
14
|
+
|
13
15
|
def sh(cmd, dir = '.', &block)
|
14
16
|
out, code = sh_with_excode(cmd, dir, &block)
|
15
17
|
code == 0 ? out : raise(out.empty? ? "Running `#{cmd}` failed. Run this command directly for more detailed output." : out)
|
16
18
|
end
|
17
|
-
|
18
|
-
def sh_with_excode(cmd, dir = '.', &block)
|
19
|
-
cmd << " 2>&1"
|
20
|
-
output = ""
|
21
|
-
status = nil
|
22
|
-
Dir.chdir(dir) {
|
23
|
-
stdin, stdout, stderr, wait_thr = Open3::popen3(cmd)
|
24
|
-
|
25
|
-
status = wait_thr.value
|
26
|
-
output = stdout.readlines.join
|
27
19
|
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
[ output, status ]
|
20
|
+
def sh_with_excode(cmd, dir = '.', &block)
|
21
|
+
command = Mixlib::ShellOut.new(cmd << " 2>&1", :cwd => dir)
|
22
|
+
command.run_command
|
23
|
+
[command.stdout, command.exitstatus]
|
33
24
|
end
|
34
25
|
end
|
35
26
|
end
|
data/thor-scmversion.gemspec
CHANGED
@@ -15,7 +15,9 @@ Gem::Specification.new do |gem|
|
|
15
15
|
gem.require_paths = ["lib"]
|
16
16
|
gem.version = ThorSCMVersion::VERSION
|
17
17
|
|
18
|
-
gem.add_dependency
|
18
|
+
gem.add_dependency 'thor'
|
19
|
+
gem.add_dependency 'mixlib-shellout'
|
20
|
+
|
19
21
|
gem.add_development_dependency 'webmock'
|
20
22
|
gem.add_development_dependency 'geminabox'
|
21
23
|
gem.add_development_dependency 'spork'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: thor-scmversion
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Ivey
|
@@ -10,132 +10,146 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2014-05-29 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: thor
|
17
17
|
requirement: !ruby/object:Gem::Requirement
|
18
18
|
requirements:
|
19
|
-
- -
|
19
|
+
- - ">="
|
20
20
|
- !ruby/object:Gem::Version
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
|
-
- -
|
26
|
+
- - ">="
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '0'
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: mixlib-shellout
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - ">="
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - ">="
|
27
41
|
- !ruby/object:Gem::Version
|
28
42
|
version: '0'
|
29
43
|
- !ruby/object:Gem::Dependency
|
30
44
|
name: webmock
|
31
45
|
requirement: !ruby/object:Gem::Requirement
|
32
46
|
requirements:
|
33
|
-
- -
|
47
|
+
- - ">="
|
34
48
|
- !ruby/object:Gem::Version
|
35
49
|
version: '0'
|
36
50
|
type: :development
|
37
51
|
prerelease: false
|
38
52
|
version_requirements: !ruby/object:Gem::Requirement
|
39
53
|
requirements:
|
40
|
-
- -
|
54
|
+
- - ">="
|
41
55
|
- !ruby/object:Gem::Version
|
42
56
|
version: '0'
|
43
57
|
- !ruby/object:Gem::Dependency
|
44
58
|
name: geminabox
|
45
59
|
requirement: !ruby/object:Gem::Requirement
|
46
60
|
requirements:
|
47
|
-
- -
|
61
|
+
- - ">="
|
48
62
|
- !ruby/object:Gem::Version
|
49
63
|
version: '0'
|
50
64
|
type: :development
|
51
65
|
prerelease: false
|
52
66
|
version_requirements: !ruby/object:Gem::Requirement
|
53
67
|
requirements:
|
54
|
-
- -
|
68
|
+
- - ">="
|
55
69
|
- !ruby/object:Gem::Version
|
56
70
|
version: '0'
|
57
71
|
- !ruby/object:Gem::Dependency
|
58
72
|
name: spork
|
59
73
|
requirement: !ruby/object:Gem::Requirement
|
60
74
|
requirements:
|
61
|
-
- -
|
75
|
+
- - ">="
|
62
76
|
- !ruby/object:Gem::Version
|
63
77
|
version: '0'
|
64
78
|
type: :development
|
65
79
|
prerelease: false
|
66
80
|
version_requirements: !ruby/object:Gem::Requirement
|
67
81
|
requirements:
|
68
|
-
- -
|
82
|
+
- - ">="
|
69
83
|
- !ruby/object:Gem::Version
|
70
84
|
version: '0'
|
71
85
|
- !ruby/object:Gem::Dependency
|
72
86
|
name: simplecov
|
73
87
|
requirement: !ruby/object:Gem::Requirement
|
74
88
|
requirements:
|
75
|
-
- -
|
89
|
+
- - ">="
|
76
90
|
- !ruby/object:Gem::Version
|
77
91
|
version: '0'
|
78
92
|
type: :development
|
79
93
|
prerelease: false
|
80
94
|
version_requirements: !ruby/object:Gem::Requirement
|
81
95
|
requirements:
|
82
|
-
- -
|
96
|
+
- - ">="
|
83
97
|
- !ruby/object:Gem::Version
|
84
98
|
version: '0'
|
85
99
|
- !ruby/object:Gem::Dependency
|
86
100
|
name: vcr
|
87
101
|
requirement: !ruby/object:Gem::Requirement
|
88
102
|
requirements:
|
89
|
-
- -
|
103
|
+
- - ">="
|
90
104
|
- !ruby/object:Gem::Version
|
91
105
|
version: '0'
|
92
106
|
type: :development
|
93
107
|
prerelease: false
|
94
108
|
version_requirements: !ruby/object:Gem::Requirement
|
95
109
|
requirements:
|
96
|
-
- -
|
110
|
+
- - ">="
|
97
111
|
- !ruby/object:Gem::Version
|
98
112
|
version: '0'
|
99
113
|
- !ruby/object:Gem::Dependency
|
100
114
|
name: aruba
|
101
115
|
requirement: !ruby/object:Gem::Requirement
|
102
116
|
requirements:
|
103
|
-
- -
|
117
|
+
- - ">="
|
104
118
|
- !ruby/object:Gem::Version
|
105
119
|
version: '0'
|
106
120
|
type: :development
|
107
121
|
prerelease: false
|
108
122
|
version_requirements: !ruby/object:Gem::Requirement
|
109
123
|
requirements:
|
110
|
-
- -
|
124
|
+
- - ">="
|
111
125
|
- !ruby/object:Gem::Version
|
112
126
|
version: '0'
|
113
127
|
- !ruby/object:Gem::Dependency
|
114
128
|
name: rspec
|
115
129
|
requirement: !ruby/object:Gem::Requirement
|
116
130
|
requirements:
|
117
|
-
- -
|
131
|
+
- - ">="
|
118
132
|
- !ruby/object:Gem::Version
|
119
133
|
version: '0'
|
120
134
|
type: :development
|
121
135
|
prerelease: false
|
122
136
|
version_requirements: !ruby/object:Gem::Requirement
|
123
137
|
requirements:
|
124
|
-
- -
|
138
|
+
- - ">="
|
125
139
|
- !ruby/object:Gem::Version
|
126
140
|
version: '0'
|
127
141
|
- !ruby/object:Gem::Dependency
|
128
142
|
name: debugger
|
129
143
|
requirement: !ruby/object:Gem::Requirement
|
130
144
|
requirements:
|
131
|
-
- -
|
145
|
+
- - ">="
|
132
146
|
- !ruby/object:Gem::Version
|
133
147
|
version: '0'
|
134
148
|
type: :development
|
135
149
|
prerelease: false
|
136
150
|
version_requirements: !ruby/object:Gem::Requirement
|
137
151
|
requirements:
|
138
|
-
- -
|
152
|
+
- - ">="
|
139
153
|
- !ruby/object:Gem::Version
|
140
154
|
version: '0'
|
141
155
|
description: Thor tasks to manage a VERSION file based on SCM tags
|
@@ -148,7 +162,7 @@ executables:
|
|
148
162
|
extensions: []
|
149
163
|
extra_rdoc_files: []
|
150
164
|
files:
|
151
|
-
- .gitignore
|
165
|
+
- ".gitignore"
|
152
166
|
- Gemfile
|
153
167
|
- LICENSE
|
154
168
|
- README.md
|
@@ -183,17 +197,17 @@ require_paths:
|
|
183
197
|
- lib
|
184
198
|
required_ruby_version: !ruby/object:Gem::Requirement
|
185
199
|
requirements:
|
186
|
-
- -
|
200
|
+
- - ">="
|
187
201
|
- !ruby/object:Gem::Version
|
188
202
|
version: '0'
|
189
203
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
190
204
|
requirements:
|
191
|
-
- -
|
205
|
+
- - ">="
|
192
206
|
- !ruby/object:Gem::Version
|
193
207
|
version: '0'
|
194
208
|
requirements: []
|
195
209
|
rubyforge_project:
|
196
|
-
rubygems_version: 2.0.
|
210
|
+
rubygems_version: 2.0.14
|
197
211
|
signing_key:
|
198
212
|
specification_version: 4
|
199
213
|
summary: A small set of Thor tasks you can include in your build scripts to manage
|