manifestly 2.2.0 → 2.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/manifestly/cli.rb +16 -6
- data/lib/manifestly/repository.rb +12 -2
- data/lib/manifestly/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7a07010d357d1a65507c6b7a8326b9db4b82814d
|
4
|
+
data.tar.gz: 01e562142d702cb0c91709e4118aa3522e0975c3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6306bba1d20524ce11f7bf7ba112da59ae5eee735daf8185f6ba4f9875f5eb7046bfa48932b81c9d88f8b23e0d4a257df099f1da94458a2f4a3cc576057330d4
|
7
|
+
data.tar.gz: a1c736ab12d009589d19585e484e21ebdd62cc1a2bb9223b2940aecdff80f235a47345b59d10f937d5fb887360bc149ec4f0a3b5f56f0e24ac4d20f4b3c2c42b
|
data/lib/manifestly/cli.rb
CHANGED
@@ -12,6 +12,12 @@ module Manifestly
|
|
12
12
|
include CommandLineReporter
|
13
13
|
include Manifestly::Ui
|
14
14
|
|
15
|
+
# https://github.com/erikhuda/thor/issues/244
|
16
|
+
# http://stackoverflow.com/a/18490048/1664216
|
17
|
+
def self.exit_on_failure?
|
18
|
+
true
|
19
|
+
end
|
20
|
+
|
15
21
|
#
|
16
22
|
# Common command line options
|
17
23
|
#
|
@@ -175,7 +181,7 @@ module Manifestly
|
|
175
181
|
DESC
|
176
182
|
def create
|
177
183
|
manifest = if options[:based_on]
|
178
|
-
load_manifest(file: options[:based_on]) ||
|
184
|
+
load_manifest(file: options[:based_on]) || error!
|
179
185
|
else
|
180
186
|
Manifest.new
|
181
187
|
end
|
@@ -212,17 +218,17 @@ module Manifestly
|
|
212
218
|
DESC
|
213
219
|
def apply
|
214
220
|
begin
|
215
|
-
manifest = load_manifest(file: options[:file]) ||
|
221
|
+
manifest = load_manifest(file: options[:file]) || error!
|
216
222
|
manifest.items.each{ |item| item.checkout_commit!(options[:update]) }
|
217
223
|
rescue Manifestly::ManifestItem::MultipleSameNameRepositories => e
|
218
224
|
say "Multiple repositories have the same name (#{e.message}) so we " +
|
219
225
|
"can't apply the manifest. Try limiting the search_paths or " +
|
220
226
|
"separate the duplicates."
|
221
|
-
|
227
|
+
error!
|
222
228
|
rescue Manifestly::Repository::CommitNotPresent => e
|
223
229
|
say "Could not find commit #{e.sha} in repository #{e.repository.github_name_or_path}. " +
|
224
230
|
"Try running again with the `--update` option."
|
225
|
-
|
231
|
+
error!
|
226
232
|
end
|
227
233
|
|
228
234
|
|
@@ -276,7 +282,7 @@ module Manifestly
|
|
276
282
|
repository.get_commit_content(options[:sha])
|
277
283
|
rescue Manifestly::Repository::CommitNotPresent
|
278
284
|
say('That SHA is invalid')
|
279
|
-
|
285
|
+
error!
|
280
286
|
end
|
281
287
|
|
282
288
|
save_as = options[:save_as]
|
@@ -419,7 +425,7 @@ module Manifestly
|
|
419
425
|
if !from_manifest || !to_manifest
|
420
426
|
say("Could not load the 'from' manifest so cannot continue with the diff.") if !from_manifest
|
421
427
|
say("Could not load the 'to' manifest so cannot continue with the diff.") if !to_manifest
|
422
|
-
|
428
|
+
error!
|
423
429
|
end
|
424
430
|
|
425
431
|
manifest_diff = ManifestDiff.new(from_manifest, to_manifest)
|
@@ -758,5 +764,9 @@ module Manifestly
|
|
758
764
|
nil
|
759
765
|
end
|
760
766
|
|
767
|
+
def error!
|
768
|
+
exit 1
|
769
|
+
end
|
770
|
+
|
761
771
|
end
|
762
772
|
end
|
@@ -122,7 +122,16 @@ module Manifestly
|
|
122
122
|
end
|
123
123
|
|
124
124
|
def get_commit_file(sha)
|
125
|
-
diff_string =
|
125
|
+
diff_string = begin
|
126
|
+
git.show(sha)
|
127
|
+
rescue Git::GitExecuteError => e
|
128
|
+
if is_commit_not_found_exception?(e)
|
129
|
+
raise CommitNotPresent.new(sha, self)
|
130
|
+
else
|
131
|
+
raise
|
132
|
+
end
|
133
|
+
end
|
134
|
+
|
126
135
|
sha_diff = Diff.new(diff_string)
|
127
136
|
|
128
137
|
raise(CommitContentError, "No content to retrieve for SHA #{sha}!") if sha_diff.num_files == 0
|
@@ -157,7 +166,8 @@ module Manifestly
|
|
157
166
|
end
|
158
167
|
|
159
168
|
def is_commit_not_found_exception?(e)
|
160
|
-
e.message.include?("fatal: reference is not a tree")
|
169
|
+
e.message.include?("fatal: reference is not a tree") ||
|
170
|
+
e.message.include?("fatal: ambiguous argument")
|
161
171
|
end
|
162
172
|
|
163
173
|
def current_branch_name
|
data/lib/manifestly/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: manifestly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- JP Slavinsky
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2016-04-
|
11
|
+
date: 2016-04-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|