releasinator 0.1.1 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2cd44d3c394b6d22d00f1ed650f8fd4f91c7a64a
4
- data.tar.gz: 4909d7351541c5fa5f0c220593f357a7072baa34
3
+ metadata.gz: d262a01d868cfb7a782dd4c1dca96e2879ccabab
4
+ data.tar.gz: 2ba14042c8eccd4485b4c85fd4a8aa49e7eb0136
5
5
  SHA512:
6
- metadata.gz: d2d9246e4385d73942e8ef8535c540bedd1ac16117717c3209b52a6c61f982e5804d5d0bab1c258eb24fbf3f4e05287d3aede9a1c54919d6262726af734534fc
7
- data.tar.gz: ede9f2764264f3a377b68426a40118b038fd16e77ae44ff36b68ce8d82c1c7b9fd70306444d35901fc74b6ac160cd67ed2caba0a688b5b1235bcc0cf37c92be5
6
+ metadata.gz: b97d926007fb5f9f79cdd777c0720124063df22ec0bbcd5c359758e5a3e544b0792050e0f1e86c7d6d224fc3ec3be23501503a77171d939deee950f454ea33a1
7
+ data.tar.gz: 38473a258a6207a7288ffe02eae724165990e3284ba3bd7bc4ba2a0f506ef22f8f16886b52dd85f65a9e36e2733803e8f5f083e5a65e818258d76958b7a337f9
@@ -1,9 +1,7 @@
1
1
  ### Required Information
2
2
 
3
- - Mode (Mock/Sandbox/Live):
4
- - PayPal Android SDK Version:
5
- - Android Version and Device (Motorola Droid Razr Maxx with Android 4.4.2, Samsung S7 with Android 6.0, etc...):
6
- - PayPal-Debug-ID(s) (from any logs):
3
+ - Releasinator Version:
4
+ - OS and Ruby Version:
7
5
 
8
6
  ### Issue Description
9
- > Please include as many details (logs, steps to reproduce, screenshots) as you can to help us reproduce this issue faster.
7
+ > Please include as many details (logs, steps to reproduce) as you can to help us reproduce this issue faster.
data/.releasinator.rb CHANGED
@@ -4,20 +4,38 @@ configatron.product_name = "Releasinator"
4
4
  configatron.prerelease_checklist_items = [
5
5
  ]
6
6
 
7
- # The directory where all distributed docs are. Default is '.'
8
- # configatron.base_docs_dir = '.'
7
+ def validate_version_match()
8
+ require 'releasinator/version'
9
+ spec_version = Releasinator::VERSION
10
+ if spec_version != @current_release.version
11
+ Printer.fail("Ruby gem spec version #{spec_version} does not match changelog version #{@current_release.version}.")
12
+ abort()
13
+ end
14
+
15
+ Printer.success("Ruby gem spec version #{spec_version} matches latest changelog version.")
16
+ end
17
+
18
+ configatron.custom_validation_methods = [
19
+ method(:validate_version_match)
20
+ ]
21
+
9
22
 
10
23
  def build_method
24
+ # run tests first
25
+ CommandProcessor.command("ruby test/ts_allTests.rb")
26
+
27
+ output_dir = "build"
11
28
  CommandProcessor.command("gem build releasinator.gemspec")
12
- Dir.mkdir("build") unless File.exists?("build")
13
- CommandProcessor.command("mv releasinator-*.gem build")
29
+ Dir.mkdir(output_dir) unless File.exists?(output_dir)
30
+ CommandProcessor.command("mv releasinator-*.gem #{output_dir}")
14
31
  end
15
32
 
16
33
  # The command that builds the sdk. Required.
17
34
  configatron.build_method = method(:build_method)
18
35
 
19
36
  def publish_to_package_manager(version)
20
- Dir.chdir("build") do
37
+ output_dir = "build"
38
+ Dir.chdir(output_dir) do
21
39
  CommandProcessor.command("gem push releasinator-#{version}.gem")
22
40
  end
23
41
  end
data/CHANGELOG.md CHANGED
@@ -1,9 +1,18 @@
1
1
  Releasinator release notes
2
2
  ==========================
3
3
 
4
+
5
+ 0.2.1
6
+ -----
7
+ * Fix current_release renaming bug.
8
+
9
+ 0.2.0
10
+ -----
11
+ * Rename some fields.
12
+
4
13
  0.1.1
5
14
  -----
6
- * Fix validate:gitignore to print more and dirty git
15
+ * Fix `validate:gitignore` to print more and dirty git.
7
16
 
8
17
  0.1.0
9
18
  -----
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- releasinator (0.1.1)
4
+ releasinator (0.2.1)
5
5
  colorize (~> 0.7)
6
6
  configatron (~> 4.5)
7
7
  json (~> 1.8)
@@ -22,12 +22,15 @@ GEM
22
22
  multipart-post (2.0.0)
23
23
  octokit (4.3.0)
24
24
  sawyer (~> 0.7.0, >= 0.5.3)
25
+ power_assert (0.2.7)
25
26
  rake (11.1.2)
26
27
  redcarpet (3.3.4)
27
28
  sawyer (0.7.0)
28
29
  addressable (>= 2.3.5, < 2.5)
29
30
  faraday (~> 0.8, < 0.10)
30
31
  semantic (1.4.1)
32
+ test-unit (3.1.8)
33
+ power_assert
31
34
  vandamme (0.0.11)
32
35
  github-markup (~> 1.3)
33
36
  redcarpet (~> 3.3.2)
@@ -39,6 +42,7 @@ DEPENDENCIES
39
42
  bundler (~> 1.11)
40
43
  rake (~> 11.1)
41
44
  releasinator!
45
+ test-unit (~> 3.1)
42
46
 
43
47
  BUNDLED WITH
44
48
  1.11.2
@@ -1,8 +1,8 @@
1
1
  module Releasinator
2
2
  class CurrentRelease
3
- attr_reader :release, :changelog
4
- def initialize(release, changelog)
5
- @release = release
3
+ attr_reader :version, :changelog
4
+ def initialize(version, changelog)
5
+ @version = version
6
6
  @changelog = changelog
7
7
  end
8
8
  end
data/lib/publisher.rb CHANGED
@@ -15,8 +15,8 @@ module Releasinator
15
15
  begin
16
16
  # https://github.com/octokit/octokit.rb/blob/master/spec/octokit/client/releases_spec.rb#L18
17
17
  github_release = github_repo.client.create_release "#{github_repo.org}/#{github_repo.repo}",
18
- release.release,
19
- :name => release.release,
18
+ release.version,
19
+ :name => release.version,
20
20
  :body => release.changelog,
21
21
  :draft => true,
22
22
  :prerelease => false
@@ -34,7 +34,7 @@ module Releasinator
34
34
  github_pull_request = github_repo.client.create_pull_request "#{github_repo.org}/#{github_repo.repo}",
35
35
  base,
36
36
  head,
37
- "Update #{product_name} to #{release.release}",
37
+ "Update #{product_name} to #{release.version}",
38
38
  release.changelog
39
39
  puts github_pull_request.inspect if @config[:trace]
40
40
  rescue => error
@@ -1,3 +1,3 @@
1
1
  module Releasinator
2
- VERSION = "0.1.1"
2
+ VERSION = "0.2.1"
3
3
  end
@@ -1,6 +1,5 @@
1
1
  require 'rubygems'
2
2
  require 'bundler/setup'
3
- require 'rake'
4
3
  require 'colorize'
5
4
  require 'json'
6
5
  require 'tempfile'
@@ -63,8 +62,8 @@ namespace :validate do
63
62
  current_branch = GitUtil.get_current_branch()
64
63
  @validator.validate_matches_branch(current_branch)
65
64
  if use_git_flow()
66
- expected_release_branch = "release/#{@currentRelease.release}"
67
- abort("git flow expects the current branch to be either 'develop' or 'release/#{@currentRelease.release}'. Current branch is '#{current_branch}'".red) unless current_branch == expected_release_branch || current_branch == "develop"
65
+ expected_release_branch = "release/#{@current_release.version}"
66
+ abort("git flow expects the current branch to be either 'develop' or 'release/#{@current_release.version}'. Current branch is '#{current_branch}'".red) unless current_branch == expected_release_branch || current_branch == "develop"
68
67
  else
69
68
  abort("non-git flow expects releases to come from the master branch. Current branch is '#{current_branch}'".red) unless current_branch == "master"
70
69
  end
@@ -94,7 +93,7 @@ namespace :validate do
94
93
 
95
94
  desc "validate the presence, formatting, and semver sequence of CHANGELOG.md"
96
95
  task :changelog => :config do
97
- @currentRelease = @validator.validate_changelog(get_base_dir(), DOWNSTREAM_REPOS)
96
+ @current_release = @validator.validate_changelog(get_base_dir(), DOWNSTREAM_REPOS)
98
97
  end
99
98
 
100
99
  desc "validate the presence of .gitignore, adding it and any appropriate releasinator lines if necessary"
@@ -124,7 +123,7 @@ namespace :validate do
124
123
  end
125
124
 
126
125
  desc "run any configatron.custom_validation_methods"
127
- task :custom => :config do
126
+ task :custom => [:config, :changelog] do
128
127
  if @releasinator_config.has_key?(:custom_validation_methods)
129
128
  @releasinator_config[:custom_validation_methods].each do |validate_method|
130
129
  validate_method.call
@@ -173,28 +172,28 @@ end
173
172
  namespace :local do
174
173
  desc "ask user whether to proceed with release"
175
174
  task :confirm do
176
- Printer.check_proceed("You're about to release #{@currentRelease.release}!", "Then no release for you!")
175
+ Printer.check_proceed("You're about to release #{@current_release.version}!", "Then no release for you!")
177
176
  end
178
177
 
179
178
  desc "change branch for git flow, if using git flow"
180
179
  task :prepare => [:config, :"validate:changelog"] do
181
180
  if use_git_flow()
182
- CommandProcessor.command("git checkout -b release/#{@currentRelease.release} develop") unless GitUtil.get_current_branch() != "develop"
181
+ CommandProcessor.command("git checkout -b release/#{@current_release.version} develop") unless GitUtil.get_current_branch() != "develop"
183
182
  end
184
183
  end
185
184
 
186
185
  desc "tag the local repo"
187
186
  task :tag => :config do
188
- GitUtil.tag(@currentRelease.release, @currentRelease.changelog)
187
+ GitUtil.tag(@current_release.version, @current_release.changelog)
189
188
  end
190
189
 
191
190
  desc "build the local repo"
192
191
  task :build => [:config, :"validate:changelog", :prerelease_checklist, :confirm, :prepare, :tag] do
193
- puts "building #{@currentRelease.release}" if @releasinator_config[:verbose]
192
+ puts "building #{@current_release.version}" if @releasinator_config[:verbose]
194
193
  @releasinator_config[:build_method].call
195
194
  if @releasinator_config.has_key? :post_build_methods
196
195
  @releasinator_config[:post_build_methods].each do |post_build_method|
197
- post_build_method.call(@currentRelease.release)
196
+ post_build_method.call(@current_release.version)
198
197
  end
199
198
  end
200
199
  end
@@ -204,15 +203,15 @@ namespace :local do
204
203
  if use_git_flow()
205
204
  CommandProcessor.command("git checkout master")
206
205
  CommandProcessor.command("git pull")
207
- CommandProcessor.command("git merge --no-ff release/#{@currentRelease.release}")
208
- GitUtil.delete_branch "release/#{@currentRelease.release}"
206
+ CommandProcessor.command("git merge --no-ff release/#{@current_release.version}")
207
+ GitUtil.delete_branch "release/#{@current_release.version}"
209
208
  CommandProcessor.command("git checkout develop")
210
209
  CommandProcessor.command("git merge master")
211
210
  CommandProcessor.command("git push origin develop --tags")
212
211
  end
213
212
  CommandProcessor.command("git push origin master --tags")
214
213
  if @releasinator_config[:release_to_github]
215
- Publisher.new(@releasinator_config).publish_draft(GitUtil.repo_url, @currentRelease)
214
+ Publisher.new(@releasinator_config).publish_draft(GitUtil.repo_url, @current_release)
216
215
  end
217
216
  end
218
217
  end
@@ -223,12 +222,12 @@ namespace :pm do
223
222
 
224
223
  desc "call configured publish_to_package_manager_method"
225
224
  task :publish => [:config, :"validate:changelog"] do
226
- @releasinator_config[:publish_to_package_manager_method].call(@currentRelease.release)
225
+ @releasinator_config[:publish_to_package_manager_method].call(@current_release.version)
227
226
  end
228
227
 
229
228
  desc "call configured wait_for_package_manager_method"
230
229
  task :wait => [:config, :"validate:changelog"] do
231
- @releasinator_config[:wait_for_package_manager_method].call(@currentRelease.release)
230
+ @releasinator_config[:wait_for_package_manager_method].call(@current_release.version)
232
231
  end
233
232
  end
234
233
 
@@ -299,7 +298,7 @@ namespace :downstream do
299
298
  reset_repo(downstream_repo.branch)
300
299
 
301
300
  if downstream_repo.options.has_key? :new_branch_name
302
- new_branch_name = get_new_branch_name(downstream_repo.options[:new_branch_name], @currentRelease.release)
301
+ new_branch_name = get_new_branch_name(downstream_repo.options[:new_branch_name], @current_release.version)
303
302
  GitUtil.delete_branch new_branch_name
304
303
  end
305
304
  end
@@ -324,7 +323,7 @@ namespace :downstream do
324
323
  Dir.chdir(downstream_repo.name) do
325
324
 
326
325
  if downstream_repo.options.has_key? :new_branch_name
327
- new_branch_name = get_new_branch_name(downstream_repo.options[:new_branch_name], @currentRelease.release)
326
+ new_branch_name = get_new_branch_name(downstream_repo.options[:new_branch_name], @current_release.version)
328
327
  CommandProcessor.command("git checkout -b #{new_branch_name}")
329
328
  end
330
329
 
@@ -340,13 +339,13 @@ namespace :downstream do
340
339
  # copy custom files
341
340
  if downstream_repo.options.has_key? :files_to_copy
342
341
  downstream_repo.options[:files_to_copy].each do |copy_file|
343
- copy_the_file(root_dir, copy_file, @currentRelease.release)
342
+ copy_the_file(root_dir, copy_file, @current_release.version)
344
343
  end
345
344
  end
346
345
 
347
346
  if downstream_repo.options.has_key? :post_copy_methods
348
347
  downstream_repo.options[:post_copy_methods].each do |method|
349
- method.call(@currentRelease.release)
348
+ method.call(@current_release.version)
350
349
  end
351
350
  end
352
351
 
@@ -358,9 +357,9 @@ namespace :downstream do
358
357
  CommandProcessor.command("git add .")
359
358
  CommandProcessor.command("git add -u .")
360
359
  if downstream_repo.options.has_key? :new_branch_name
361
- commit_message = "Update #{@releasinator_config[:product_name]} to #{@currentRelease.release}"
360
+ commit_message = "Update #{@releasinator_config[:product_name]} to #{@current_release.version}"
362
361
  else
363
- commit_message = "Release #{@currentRelease.release}"
362
+ commit_message = "Release #{@current_release.version}"
364
363
  end
365
364
  CommandProcessor.command("git commit -am \"#{commit_message}\"")
366
365
  end
@@ -402,7 +401,7 @@ namespace :downstream do
402
401
  Dir.chdir(DOWNSTREAM_REPOS) do
403
402
  Dir.chdir(downstream_repo.name) do
404
403
  # don't tag those where new branches are created
405
- GitUtil.tag(@currentRelease.release, @currentRelease.changelog) unless downstream_repo.options.has_key? :new_branch_name
404
+ GitUtil.tag(@current_release.version, @current_release.changelog) unless downstream_repo.options.has_key? :new_branch_name
406
405
  end
407
406
  end
408
407
  end
@@ -420,12 +419,12 @@ namespace :downstream do
420
419
  Dir.chdir(DOWNSTREAM_REPOS) do
421
420
  Dir.chdir(downstream_repo.name) do
422
421
  if downstream_repo.options.has_key? :new_branch_name
423
- new_branch_name = get_new_branch_name(downstream_repo.options[:new_branch_name], @currentRelease.release)
422
+ new_branch_name = get_new_branch_name(downstream_repo.options[:new_branch_name], @current_release.version)
424
423
  CommandProcessor.command("git push -u origin #{new_branch_name}")
425
- Publisher.new(@releasinator_config).publish_pull_request(downstream_repo.url, @currentRelease, @releasinator_config[:product_name], downstream_repo.branch, new_branch_name)
424
+ Publisher.new(@releasinator_config).publish_pull_request(downstream_repo.url, @current_release, @releasinator_config[:product_name], downstream_repo.branch, new_branch_name)
426
425
  else
427
426
  CommandProcessor.command("git push origin master --tags")
428
- Publisher.new(@releasinator_config).publish_draft(downstream_repo.url, @currentRelease) unless ! release_to_github(downstream_repo.options)
427
+ Publisher.new(@releasinator_config).publish_draft(downstream_repo.url, @current_release) unless ! release_to_github(downstream_repo.options)
429
428
  end
430
429
  end
431
430
  end
@@ -469,7 +468,7 @@ namespace :docs do
469
468
  end
470
469
 
471
470
  CommandProcessor.command("git add .")
472
- CommandProcessor.command("git commit -m \"Update docs for release #{@currentRelease.release}\"")
471
+ CommandProcessor.command("git commit -m \"Update docs for release #{@current_release.version}\"")
473
472
 
474
473
  # switch back to previous branch
475
474
  CommandProcessor.command("git checkout #{current_branch}")
data/releasinator.gemspec CHANGED
@@ -28,6 +28,7 @@ Gem::Specification.new do |spec|
28
28
 
29
29
  spec.add_development_dependency "bundler", "~> 1.11"
30
30
  spec.add_development_dependency "rake", "~> 11.1"
31
+ spec.add_development_dependency "test-unit", "~> 3.1"
31
32
 
32
33
  spec.add_dependency "configatron", "~> 4.5"
33
34
  spec.add_dependency "colorize", "~> 0.7"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: releasinator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - PayPal
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '11.1'
41
+ - !ruby/object:Gem::Dependency
42
+ name: test-unit
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.1'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.1'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: configatron
43
57
  requirement: !ruby/object:Gem::Requirement