allegro_release 0.1.9 → 0.1.10

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: 3767af47c2ea122a5b20cd59fe77a089878c0f91
4
- data.tar.gz: 70abb304964d8e39f9818e74b845eca0f0d2af5a
3
+ metadata.gz: d2dc3f3b5dbc167d1e16c0bea1d27cfd66e86514
4
+ data.tar.gz: 7c441f8b6a40cf9b8d7611b30bc40d37df558a5b
5
5
  SHA512:
6
- metadata.gz: caaddc019d1a6113858a75e6bdeea020716713d6e9910992084fc0ba6f8fe4f315d09694ddeac1f16c24cc8d24cd3b4ffd4c491272dc51d5f2ac69247a7236dc
7
- data.tar.gz: 7fb49dbba7cbe24f1e1d1747c0642e7cc9943749d9fb12eaea6085ed26f7359acac10b1daffedc70293eb7fbcca9cf6472cbf338e7e097ac03a43e5023509753
6
+ metadata.gz: 4fc256bba8904cdd7bc3b1ef90311226b2dff13b2480b32f5ccc768393de1068da2668b93d3cca2506c8aaeeb6f75679202dd1ea33cf7285ae05062e383f05e7
7
+ data.tar.gz: 0260165ba7be39a09431065c3305832ece6e8edc694a7dbd1665624553e7999796107768494be0c9ee659c8d766371bef19afa0ff952095de1d6a969f511df28
@@ -6,6 +6,7 @@ require 'fileutils'
6
6
  module AllegroRelease
7
7
  class InvalidOptionError < StandardError; end
8
8
  class NotFoundSpecFileError < StandardError; end
9
+ class RepoNotClean < StandardError; end
9
10
 
10
11
  class Bump
11
12
  BUMPS = %w(major minor patch)
@@ -15,12 +16,15 @@ module AllegroRelease
15
16
  def self.run(bump, options={})
16
17
  case bump
17
18
  when *BUMPS
19
+ check_if_repo_clean
18
20
  bump_part(bump, options)
19
21
  when "current"
20
22
  puts "Current version: #{version_from_file()}".colorize(:green)
21
23
  when "to_master"
24
+ check_if_repo_clean
22
25
  to_master
23
26
  when "finish"
27
+ check_if_repo_clean
24
28
  finish
25
29
  else
26
30
  raise InvalidOptionError
@@ -225,6 +229,16 @@ module AllegroRelease
225
229
  [major, minor, patch].compact.join('.')
226
230
  end
227
231
 
232
+ def self.check_if_repo_clean
233
+ repo_clean = `git status --porcelain`.empty?
234
+ if repo_clean
235
+ puts "Repository is clean, continuing...".colorize(:green)
236
+ else
237
+ puts "Repository is dirty. Please ensure the repo is in a clean state by commiting/stashing/discarding all changes first.".colorize(:red)
238
+ raise RepoNotClean
239
+ end
240
+ end
241
+
228
242
  def self.check_podspec
229
243
  puts "Validating #{spec_file}.".colorize(:green)
230
244
  system_cmd("pod lib lint --sources='https://stash.allegrogroup.com/scm/iostools/pods.specs.git,https://github.com/CocoaPods/Specs' --allow-warnings #{spec_file}")
@@ -1,3 +1,3 @@
1
1
  module AllegroRelease
2
- VERSION = "0.1.9"
2
+ VERSION = "0.1.10"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: allegro_release
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.9
4
+ version: 0.1.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksander Grzyb
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-07-22 00:00:00.000000000 Z
11
+ date: 2016-08-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler