simp-rake-helpers 3.3.0 → 3.4.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/CHANGELOG.md +6 -0
- data/lib/simp/rake/helpers/version.rb +1 -1
- data/lib/simp/rake/pkg.rb +71 -1
- metadata +4 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b5744cb65933374c507bd8494480b6831d2d91dd
|
4
|
+
data.tar.gz: 00f0e5320287b4fb03c8c8fd31dc6b288d2ddf2c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da17f4c7cc829e748abc8a3b756c5c06d5735fc23d717541edaf69ab57415b946ef25e00f2de8cc958128aaa20874d689e1630005133b201bf1cfc58a5de80bf
|
7
|
+
data.tar.gz: 02bff5f622fe3aa892d1ec78526e160956de12ea440fe1a47b560f5717364a90e11b0185a7d615db9db2e3c0b4d710b8c4877c223bf298a4edf4b830ac5bc896
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,9 @@
|
|
1
|
+
### 3.4.0 / 2017-03-17
|
2
|
+
* Added a Rake task `pkg:check_version` that can be run in any module to
|
3
|
+
determine if it needs to have either the metadata.json or the CHANGELOG
|
4
|
+
version bumped
|
5
|
+
* Should be looped and manually reviewed as a pre-build task
|
6
|
+
|
1
7
|
### 3.3.0 / 2017-02-28
|
2
8
|
* Modified to no longer add the SIMP Dev key into the GPGKEYS directory and
|
3
9
|
instead add it to the root level of the DVD for local reference.
|
data/lib/simp/rake/pkg.rb
CHANGED
@@ -105,6 +105,7 @@ module Simp::Rake
|
|
105
105
|
define_pkg_srpm
|
106
106
|
define_pkg_rpm
|
107
107
|
define_pkg_scrub
|
108
|
+
define_pkg_check_version
|
108
109
|
task :default => 'pkg:tar'
|
109
110
|
|
110
111
|
Rake::Task['pkg:tar'].enhance(['pkg:restore_stash'])
|
@@ -428,9 +429,78 @@ module Simp::Rake
|
|
428
429
|
cmd = %Q(#{mock_cmd} --scrub=all)
|
429
430
|
sh cmd
|
430
431
|
end
|
431
|
-
|
432
432
|
end
|
433
|
+
end
|
433
434
|
|
435
|
+
def define_pkg_check_version
|
436
|
+
namespace :pkg do
|
437
|
+
# :pkg:check_version
|
438
|
+
# -----------------------------
|
439
|
+
desc <<-EOM
|
440
|
+
Ensure that #{@pkg_name} has a properly updated version number.
|
441
|
+
EOM
|
442
|
+
task :check_version do |t,args|
|
443
|
+
require 'json'
|
444
|
+
|
445
|
+
# Get the current version
|
446
|
+
if File.exist?('metadata.json')
|
447
|
+
mod_version = JSON.load(File.read('metadata.json'))['version'].strip
|
448
|
+
success_msg = "#{@pkg_name}: Version #{mod_version} up to date"
|
449
|
+
|
450
|
+
# If we have no tags, we need a new version
|
451
|
+
if %x(git tag).strip.empty?
|
452
|
+
puts "#{@pkg_name}: New Version Required"
|
453
|
+
else
|
454
|
+
# See if the module is newer than all tags
|
455
|
+
matching_tag = %x(git tag --points-at HEAD).strip.split("\n").first
|
456
|
+
|
457
|
+
if matching_tag.nil? || matching_tag.empty?
|
458
|
+
# We don't have a matching release
|
459
|
+
# Get the closest tag
|
460
|
+
nearest_tag = %x(git describe --abbrev=0 --tags).strip
|
461
|
+
|
462
|
+
if mod_version == nearest_tag
|
463
|
+
puts "#{@pkg_name}: Error: metadata.json needs to be updated past #{mod_version}"
|
464
|
+
else
|
465
|
+
# Check the CHANGELOG Version
|
466
|
+
if File.exist?('CHANGELOG')
|
467
|
+
changelog = File.read('CHANGELOG')
|
468
|
+
changelog_version = nil
|
469
|
+
|
470
|
+
# Find the first date line
|
471
|
+
changelog.each_line do |line|
|
472
|
+
if line =~ /\*.*(\d+\.\d+\.\d+)(-\d+)?\s*$/
|
473
|
+
changelog_version = $1
|
474
|
+
break
|
475
|
+
end
|
476
|
+
end
|
477
|
+
|
478
|
+
if changelog_version
|
479
|
+
if changelog_version == mod_version
|
480
|
+
puts success_msg
|
481
|
+
else
|
482
|
+
puts "#{@pkg_name}: Error: CHANGELOG version #{changelog_version} out of date for version #{mod_version}"
|
483
|
+
end
|
484
|
+
else
|
485
|
+
puts "#{@pkg_name}: Error: No CHANGELOG version found"
|
486
|
+
end
|
487
|
+
else
|
488
|
+
puts "#{@pkg_name}: Warning: No CHANGELOG found"
|
489
|
+
end
|
490
|
+
end
|
491
|
+
else
|
492
|
+
if mod_version != matching_tag
|
493
|
+
puts "#{@pkg_name}: Error: Tag #{matching_tag} does not match version #{mod_version}"
|
494
|
+
else
|
495
|
+
puts success_msg
|
496
|
+
end
|
497
|
+
end
|
498
|
+
end
|
499
|
+
else
|
500
|
+
puts "#{@pkg_name}: No metadata.json found"
|
501
|
+
end
|
502
|
+
end
|
503
|
+
end
|
434
504
|
end
|
435
505
|
|
436
506
|
# ------------------------------------------------------------------------------
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simp-rake-helpers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.4.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Tessmer
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2017-
|
12
|
+
date: 2017-04-11 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -379,9 +379,8 @@ dependencies:
|
|
379
379
|
- - "~>"
|
380
380
|
- !ruby/object:Gem::Version
|
381
381
|
version: '4.0'
|
382
|
-
description:
|
383
|
-
|
384
|
-
'
|
382
|
+
description: |2
|
383
|
+
"simp-rake-helpers provides common methods for SIMP Rake Tasks"
|
385
384
|
email: simp@simp-project.org
|
386
385
|
executables: []
|
387
386
|
extensions: []
|