simp-rake-helpers 1.0.14 → 1.0.15
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 +8 -8
- data/Gemfile +1 -0
- data/README.md +8 -2
- data/Rakefile +2 -51
- data/lib/simp/rake/fixtures.rb +81 -0
- data/lib/simp/rake/helpers.rb +12 -2
- data/lib/simp/rake/helpers/version.rb +6 -0
- data/lib/simp/rake/rubygem.rb +69 -0
- metadata +5 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
N2ZmNDFjZDQ0NWFjNTNkNWQ3MTFlYjgwYmJlNWUxOWFlZmE5YjQ3ZQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
NTFhZTA4YTQ2ZGM5N2NhYTRjMGRmY2Y1ZjI4ODJjOWMzNDYxODU2Ng==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NGQ1MDMyOTUyOTQyYzQ0NTBmMmVjMzhmNTBkZDA3NDgxMWQ0ZGQ2Mjk5YzAy
|
10
|
+
YTFkOWVhZTdiMWM3YjM1YmU4YTU3OTk3YzdiOTYwODBmMmI2OTg3MmMwNmY1
|
11
|
+
OTBmZjc4YzY1NGI4YjVlN2NiNjA3NDA1ZmQ5OTQ0NDUyOGY2MGU=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
NWQxNTRmNzI1NmM5ZGRjZjNhYjIyNTE3MzMxN2YxMjBlNTIzMjFlMzlhMDMy
|
14
|
+
NWE3MGI0MGFmZTFhMTEwYWEyZjc3NzdmYjJmMmExZTg2OTMxZDQ1YWQ4MGEy
|
15
|
+
Y2RjM2RiNzY3NzFhOTlhMTRiYTlkMzcyYzU4MGZhNjgyNWIzNDY=
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -45,10 +45,16 @@ gem 'simp-rake-helpers'
|
|
45
45
|
|
46
46
|
|
47
47
|
## Usage
|
48
|
-
|
48
|
+
### In a Rubygem
|
49
|
+
Within the project's Rakefile:
|
49
50
|
|
50
51
|
```ruby
|
51
|
-
require 'simp/rake/
|
52
|
+
require 'simp/rake/rubygem'
|
53
|
+
|
54
|
+
# e.g., "simp-rake-helpers"
|
55
|
+
package = 'name-of-rubygem'
|
56
|
+
Simp::Rake::Rubygem.new(package, File.direname(__FILE__)
|
57
|
+
|
52
58
|
```
|
53
59
|
|
54
60
|
To see the extra rake tasks:
|
data/Rakefile
CHANGED
@@ -9,57 +9,8 @@ require 'rspec/core/rake_task'
|
|
9
9
|
@package='simp-rake-helpers'
|
10
10
|
@rakefile_dir=File.dirname(__FILE__)
|
11
11
|
|
12
|
-
|
13
|
-
|
14
|
-
CLEAN.include 'dist'
|
15
|
-
CLEAN.include 'spec/acceptance/files/testpackage/dist'
|
16
|
-
Find.find( @rakefile_dir ) do |path|
|
17
|
-
if File.directory? path
|
18
|
-
CLEAN.include path if File.basename(path) == 'tmp'
|
19
|
-
else
|
20
|
-
Find.prune
|
21
|
-
end
|
22
|
-
end
|
12
|
+
require 'simp/rake/rubygem'
|
13
|
+
Simp::Rake::Rubygem.new(@package, @rakefile_dir)
|
23
14
|
|
24
|
-
desc 'Ensure gemspec-safe permissions on all files'
|
25
|
-
task :chmod do
|
26
|
-
gemspec = File.expand_path( "#{@package}.gemspec", @rakefile_dir ).strip
|
27
|
-
spec = Gem::Specification::load( gemspec )
|
28
|
-
spec.files.each do |file|
|
29
|
-
FileUtils.chmod 'go=r', file
|
30
|
-
end
|
31
|
-
end
|
32
|
-
|
33
|
-
namespace :pkg do
|
34
|
-
desc "build rubygem package for #{@package}"
|
35
|
-
task :gem => :chmod do
|
36
|
-
Dir.chdir @rakefile_dir
|
37
|
-
Dir['*.gemspec'].each do |spec_file|
|
38
|
-
cmd = %Q{SIMP_RPM_BUILD=0 bundle exec gem build "#{spec_file}"}
|
39
|
-
sh cmd
|
40
|
-
FileUtils.mkdir_p 'dist'
|
41
|
-
FileUtils.mv Dir.glob("#{@package}*.gem"), 'dist/'
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
desc "build and install rubygem package for #{@package}"
|
46
|
-
task :install_gem => [:clean, :gem] do
|
47
|
-
Dir.chdir @rakefile_dir
|
48
|
-
Dir.glob("dist/#{@package}*.gem") do |pkg|
|
49
|
-
sh %Q{bundle exec gem install #{pkg}}
|
50
|
-
end
|
51
|
-
end
|
52
|
-
end
|
53
|
-
|
54
|
-
desc "Run acceptance tests"
|
55
|
-
RSpec::Core::RakeTask.new(:acceptance) do |t|
|
56
|
-
t.pattern = 'spec/acceptance'
|
57
|
-
end
|
58
|
-
|
59
|
-
desc "Run spec tests"
|
60
|
-
RSpec::Core::RakeTask.new(:spec) do |t|
|
61
|
-
t.rspec_opts = ['--color']
|
62
|
-
t.pattern = 'spec/lib/simp/**/*_spec.rb'
|
63
|
-
end
|
64
15
|
|
65
16
|
# vim: syntax=ruby
|
@@ -0,0 +1,81 @@
|
|
1
|
+
module Simp; end
|
2
|
+
module Simp::Rake
|
3
|
+
class Fixtures < ::Rake::TaskLib
|
4
|
+
def initialize
|
5
|
+
###::CLEAN.include( '.fixtures.yml.local' )
|
6
|
+
define
|
7
|
+
end
|
8
|
+
|
9
|
+
def define
|
10
|
+
namespace :fixtures do
|
11
|
+
def flatten_fixtures_hash(_f)
|
12
|
+
_f
|
13
|
+
.map{|k,v| v.values}
|
14
|
+
.flatten
|
15
|
+
.reduce({}){|h,pairs|
|
16
|
+
pairs.each{|k,v|
|
17
|
+
(h[k] ||= []) << v
|
18
|
+
}; h
|
19
|
+
}
|
20
|
+
.keys
|
21
|
+
.uniq
|
22
|
+
.sort
|
23
|
+
end
|
24
|
+
|
25
|
+
def fixtures_yml_local(_f)
|
26
|
+
_f_m = flatten_fixtures_hash(_f)
|
27
|
+
|
28
|
+
_s = Hash[_f_m.map{|k|
|
29
|
+
v= _f['fixtures']['repositories'].key?(k) ? "#\{source_dir\}/../#{k}": _f['fixtures']['symlinks'].fetch(k)
|
30
|
+
[k, v ]}
|
31
|
+
]
|
32
|
+
|
33
|
+
{'fixtures'=> {'symlinks'=> _s }}
|
34
|
+
end
|
35
|
+
|
36
|
+
desc 'generate .fixtures.yml.local formm the entries in .fixtures.yml'
|
37
|
+
task :generate do
|
38
|
+
pwd = File.expand_path(File.dirname(__FILE__))
|
39
|
+
_f = YAML.load_file(File.join(pwd,'.fixtures.yml'))
|
40
|
+
_l = fixtures_yml_local( _f )
|
41
|
+
_o = File.join(pwd,'.fixtures.yml.local')
|
42
|
+
File.open( _o,'w'){|f| puts _l.to_yaml; f.puts _l.to_yaml}
|
43
|
+
puts
|
44
|
+
puts "# written to '#{_o}'"
|
45
|
+
end
|
46
|
+
|
47
|
+
|
48
|
+
desc "check for missing .fixture modules"
|
49
|
+
task :diff do
|
50
|
+
require 'yaml'
|
51
|
+
pwd = File.expand_path(File.dirname(__FILE__))
|
52
|
+
_f = YAML.load_file(File.join(pwd,'.fixtures.yml'))
|
53
|
+
_fl = YAML.load_file(File.join(pwd,'.fixtures.yml.local'))
|
54
|
+
|
55
|
+
# reduce modules
|
56
|
+
_f_m = flatten_fixtures_hash(_f)
|
57
|
+
_fl_m = flatten_fixtures_hash(_fl)
|
58
|
+
_f_u = (_f_m-_fl_m)
|
59
|
+
_fl_u = (_fl_m-_f_m)
|
60
|
+
|
61
|
+
if (_f_u.size + _fl_u.size) > 0
|
62
|
+
warn ''
|
63
|
+
warn "WARNING: .fixtures.yml & .fixtures.yml.local have different files!"
|
64
|
+
warn ''
|
65
|
+
if _f_u.size > 0
|
66
|
+
warn 'Unique modules to .fixtures.yml:'
|
67
|
+
_f_u.each{|x| warn " - #{x}"}
|
68
|
+
warn ''
|
69
|
+
end
|
70
|
+
if _fl_u.size > 0
|
71
|
+
warn 'Unique modules to .fixtures.yml.local:'
|
72
|
+
_fl_u.each{|x| warn " - #{x}"}
|
73
|
+
warn ''
|
74
|
+
end
|
75
|
+
exit 1
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
80
|
+
end
|
81
|
+
end
|
data/lib/simp/rake/helpers.rb
CHANGED
@@ -1,6 +1,16 @@
|
|
1
|
+
require File.expand_path('pkg', File.dirname(__FILE__))
|
2
|
+
require File.expand_path('fixtures', File.dirname(__FILE__))
|
3
|
+
|
1
4
|
module Simp; end
|
2
5
|
module Simp::Rake; end
|
3
|
-
|
4
6
|
class Simp::Rake::Helpers
|
5
|
-
|
7
|
+
|
8
|
+
def initialize( dir = Dir.pwd )
|
9
|
+
Simp::Rake::Pkg.new( dir ) do | t |
|
10
|
+
t.clean_list << "#{t.base_dir}/spec/fixtures/hieradata/hiera.yaml"
|
11
|
+
end
|
12
|
+
|
13
|
+
Simp::Rake::Fixtures.new
|
14
|
+
end
|
15
|
+
|
6
16
|
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
module Simp; end
|
2
|
+
module Simp::Rake
|
3
|
+
class Rubygem < ::Rake::TaskLib
|
4
|
+
def initialize( package, rakefile_dir = File.pwd )
|
5
|
+
@package = package
|
6
|
+
@rakefile_dir = rakefile_dir
|
7
|
+
define
|
8
|
+
end
|
9
|
+
|
10
|
+
def define_clean_paths
|
11
|
+
CLEAN.include "#{@package}-*.gem"
|
12
|
+
CLEAN.include 'pkg'
|
13
|
+
CLEAN.include 'dist'
|
14
|
+
CLEAN.include 'spec/acceptance/files/testpackage/dist'
|
15
|
+
Find.find( @rakefile_dir ) do |path|
|
16
|
+
if File.directory? path
|
17
|
+
CLEAN.include path if File.basename(path) == 'tmp'
|
18
|
+
else
|
19
|
+
Find.prune
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
def define
|
25
|
+
define_clean_paths
|
26
|
+
|
27
|
+
desc 'Ensure gemspec-safe permissions on all files'
|
28
|
+
task :chmod do
|
29
|
+
gemspec = File.expand_path( "#{@package}.gemspec", @rakefile_dir ).strip
|
30
|
+
spec = Gem::Specification::load( gemspec )
|
31
|
+
spec.files.each do |file|
|
32
|
+
FileUtils.chmod 'go=r', file
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
namespace :pkg do
|
37
|
+
desc "build rubygem package for #{@package}"
|
38
|
+
task :gem => :chmod do
|
39
|
+
Dir.chdir @rakefile_dir
|
40
|
+
Dir['*.gemspec'].each do |spec_file|
|
41
|
+
cmd = %Q{SIMP_RPM_BUILD=#{ENV.fetch('SIMP_RPM_BUILD',1)} bundle exec gem build "#{spec_file}"}
|
42
|
+
sh cmd
|
43
|
+
FileUtils.mkdir_p 'dist'
|
44
|
+
FileUtils.mv Dir.glob("#{@package}*.gem"), 'dist/'
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
desc "build and install rubygem package for #{@package}"
|
49
|
+
task :install_gem => [:clean, :gem] do
|
50
|
+
Dir.chdir @rakefile_dir
|
51
|
+
Dir.glob("dist/#{@package}*.gem") do |pkg|
|
52
|
+
sh %Q{bundle exec gem install #{pkg}}
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
desc "Run acceptance tests"
|
58
|
+
RSpec::Core::RakeTask.new(:acceptance) do |t|
|
59
|
+
t.pattern = 'spec/acceptance'
|
60
|
+
end
|
61
|
+
|
62
|
+
desc "Run spec tests"
|
63
|
+
RSpec::Core::RakeTask.new(:spec) do |t|
|
64
|
+
t.rspec_opts = ['--color']
|
65
|
+
t.pattern = 'spec/lib/simp/**/*_spec.rb'
|
66
|
+
end
|
67
|
+
end
|
68
|
+
end
|
69
|
+
end
|
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: 1.0.
|
4
|
+
version: 1.0.15
|
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: 2016-
|
12
|
+
date: 2016-03-09 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -289,8 +289,11 @@ files:
|
|
289
289
|
- Rakefile
|
290
290
|
- bin/simp_rake_helpers
|
291
291
|
- lib/simp/rake.rb
|
292
|
+
- lib/simp/rake/fixtures.rb
|
292
293
|
- lib/simp/rake/helpers.rb
|
294
|
+
- lib/simp/rake/helpers/version.rb
|
293
295
|
- lib/simp/rake/pkg.rb
|
296
|
+
- lib/simp/rake/rubygem.rb
|
294
297
|
- lib/simp/rpm.rb
|
295
298
|
- spec/acceptance/files/testpackage/Rakefile
|
296
299
|
- spec/acceptance/files/testpackage/build/testpackage.spec
|