puppet_module_packaging 0.0.1

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.
Files changed (47) hide show
  1. checksums.yaml +7 -0
  2. checksums.yaml.gz.sig +0 -0
  3. data/.gitignore +12 -0
  4. data/.ruby-version +1 -0
  5. data/.travis.yml +17 -0
  6. data/Changelog.md +6 -0
  7. data/Gemfile +3 -0
  8. data/LICENSE +22 -0
  9. data/README.md +90 -0
  10. data/Rakefile +22 -0
  11. data/Vagrantfile +11 -0
  12. data/lib/puppet_module/pkg/tasks/build.rb +120 -0
  13. data/lib/puppet_module/pkg/tasks/clean.rb +15 -0
  14. data/lib/puppet_module/pkg/tasks/deb.rb +13 -0
  15. data/lib/puppet_module/pkg/tasks/install.rb +33 -0
  16. data/lib/puppet_module/pkg/tasks/modulefile.rb +69 -0
  17. data/lib/puppet_module/pkg/tasks/rake_tasks.rb +42 -0
  18. data/lib/puppet_module/pkg/tasks/rpm.rb +13 -0
  19. data/lib/puppet_module/pkg/tasks/system.rb +25 -0
  20. data/lib/puppet_module/pkg/tasks.rb +13 -0
  21. data/lib/puppet_module/pkg/version.rb +5 -0
  22. data/puppet_module_packaging.gemspec +40 -0
  23. data/rubygems-stefanozanella.crt +20 -0
  24. data/test/end_to_end/.gitkeep +0 -0
  25. data/test/end_to_end/clean_test.rb +14 -0
  26. data/test/end_to_end/install_test.rb +34 -0
  27. data/test/end_to_end/pkg_test.rb +33 -0
  28. data/test/end_to_end/tasks_test.rb +16 -0
  29. data/test/fixture/testmod/Modulefile +13 -0
  30. data/test/fixture/testmod/Modulefile.no_name_or_author +2 -0
  31. data/test/fixture/testmod/Modulefile.no_version +1 -0
  32. data/test/fixture/testmod/Rakefile +3 -0
  33. data/test/fixture/testmod/files/example.dat +0 -0
  34. data/test/fixture/testmod/lib/utils.rb +0 -0
  35. data/test/fixture/testmod/manifests/init.pp +0 -0
  36. data/test/fixture/testmod/templates/config.erb +0 -0
  37. data/test/integration/modulefile_test.rb +50 -0
  38. data/test/integration/system_test.rb +59 -0
  39. data/test/test_helper.rb +85 -0
  40. data/test/test_vm.pp +23 -0
  41. data/test/unit/.gitkeep +0 -0
  42. data/test/unit/build_test.rb +81 -0
  43. data/test/unit/clean_test.rb +13 -0
  44. data/test/unit/install_test.rb +34 -0
  45. data.tar.gz.sig +0 -0
  46. metadata +242 -0
  47. metadata.gz.sig +2 -0
@@ -0,0 +1,33 @@
1
+ require 'test_helper'
2
+
3
+ describe 'deb task' do
4
+ around do |t|
5
+ do_into_tmp_module('testmod', t)
6
+ end
7
+
8
+ describe 'by default' do
9
+ let(:pkg) { 'pkg/puppet-mod-testdev-testmod_0.0.1_all.deb' }
10
+
11
+ it 'build a package into the `pkg` folder' do
12
+ `rake deb`
13
+
14
+ assert file?(pkg), "expected package #{pkg} to exist"
15
+ end
16
+ end
17
+ end
18
+
19
+ describe 'rpm task' do
20
+ around do |t|
21
+ do_into_tmp_module('testmod', only_if_rpmbuild_found(t))
22
+ end
23
+
24
+ describe 'by default' do
25
+ let(:pkg) { 'pkg/puppet-mod-testdev-testmod-0.0.1.noarch.rpm' }
26
+
27
+ it 'build a package into the `pkg` folder' do
28
+ `rake rpm`
29
+
30
+ assert file?(pkg), "expected package #{pkg} to exist"
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,16 @@
1
+ require 'test_helper'
2
+
3
+ describe 'using PuppetModule::Pkg::Tasks in a Rakefile' do
4
+ around do |t|
5
+ do_into_tmp_module('testmod', t)
6
+ end
7
+
8
+ let(:fixture_module) { File.join(fixture_dir, 'testmod') }
9
+ let(:task_list) { `rake -T` }
10
+
11
+ [:install, :clean, :deb, :rpm].each do |task|
12
+ it "defines a `#{task}` task" do
13
+ task_list.must_match /^rake #{task}/
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,13 @@
1
+ name 'testdev/testmod'
2
+ version '0.0.1'
3
+ source 'https://example.com/git/testmod'
4
+ author 'Test Developer <test@example.com>'
5
+ license 'Apache License, Version 2.0'
6
+ summary 'A silly module, only useful for testing'
7
+ description 'A long description of this silly module'
8
+ project_page 'https://example.com/testmod/home'
9
+
10
+ ## Add dependencies, if any:
11
+ # dependency 'username/name', '>= 1.2.0'
12
+
13
+ unsupported_field 'I don`t know what I am for'
@@ -0,0 +1,2 @@
1
+ name 'missing_name_or_author'
2
+ version '0.0.1'
@@ -0,0 +1 @@
1
+ name 'testdev/testmod'
@@ -0,0 +1,3 @@
1
+ require 'puppet_module/pkg/tasks'
2
+
3
+ PuppetModule::Pkg::Tasks.new
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,50 @@
1
+ require 'test_helper'
2
+
3
+ describe PuppetModule::Pkg::Tasks::Modulefile do
4
+ # TODO: dependency management
5
+ #
6
+ # TODO: Modulefile not present => Errno::ENOENT, Errno::EISDIR => requires
7
+ # specification of shell output format
8
+ #
9
+ # TODO: incorrect format (maybe)
10
+ #
11
+ # TODO: allow for single-dash commented line to be parsed (maybe,
12
+ # particularly for non-forge dependencies)
13
+
14
+ around do |t|
15
+ do_into_tmp_module('testmod', t)
16
+ end
17
+
18
+ let(:parser) { PuppetModule::Pkg::Tasks::Modulefile }
19
+
20
+ it 'reads a Modulefile and maps its fields to an object value' do
21
+ metadata = parser.parse 'Modulefile'
22
+
23
+ metadata.name.must_equal 'testmod'
24
+ metadata.author.must_equal 'testdev'
25
+ metadata.version.must_equal '0.0.1'
26
+ metadata.source.must_equal 'https://example.com/git/testmod'
27
+ metadata.author_full.must_equal 'Test Developer <test@example.com>'
28
+ metadata.license.must_equal 'Apache License, Version 2.0'
29
+ metadata.summary.must_equal 'A silly module, only useful for testing'
30
+ metadata.description.must_equal 'A long description of this silly module'
31
+ metadata.project_page.must_equal 'https://example.com/testmod/home'
32
+ end
33
+
34
+ it 'raises an error if the Modulefile doesn`t contain required fields' do
35
+ # We need at least module name, developer name and version in order to
36
+ # build a package
37
+ proc {
38
+ parser.parse 'Modulefile.no_name_or_author'
39
+ }.must_raise ArgumentError
40
+
41
+ proc {
42
+ parser.parse 'Modulefile.no_version'
43
+ }.must_raise ArgumentError
44
+ end
45
+
46
+ it 'doesn`t complain if it finds an unsupported/unrecognized field' do
47
+ metadata = parser.parse 'Modulefile'
48
+ metadata.unsupported_field.must_be_nil
49
+ end
50
+ end
@@ -0,0 +1,59 @@
1
+ require 'test_helper'
2
+ require 'tmpdir'
3
+
4
+ describe PuppetModule::Pkg::Tasks::System do
5
+ let(:fs) { PuppetModule::Pkg::Tasks::System.new }
6
+
7
+ around do |t|
8
+ do_into_tmpdir(t)
9
+ end
10
+
11
+ describe 'mkdir' do
12
+ it 'creates a whole directory subtree' do
13
+ fs.mkdir('a/b/c/d')
14
+
15
+ walk_path('a'..'d').each do |dir|
16
+ assert directory?(dir), "expected directory #{dir} to exist"
17
+ end
18
+ end
19
+
20
+ it 'doesn`t complain if some of the directories already exist' do
21
+ fs.mkdir('a/b/c/d')
22
+ fs.mkdir('a/b/c/d')
23
+ end
24
+ end
25
+
26
+ describe 'cp' do
27
+ it 'recursively copies a list of directories into a destination' do
28
+ mkdir 'out'
29
+ ('a'..'d').to_a.each do |dir|
30
+ mkdir dir
31
+ touch join dir, "test_#{dir}"
32
+ end
33
+
34
+ fs.cp('a'..'d', 'out')
35
+
36
+ ('a'..'d').to_a.each do |dir|
37
+ assert directory?(join 'out', dir), "expected directory #{dir} to exist"
38
+ assert file?(join 'out', dir, "test_#{dir}"), "expected file out/#{dir}/test_#{dir} to exist"
39
+ end
40
+ end
41
+ end
42
+
43
+ describe 'rm' do
44
+ it 'removes the whole subtree under given directory' do
45
+ mkdir 'a/b/c/d'
46
+
47
+ fs.rm 'a'
48
+ refute directory?('a'), "expected directory 'a' to have been wiped"
49
+ end
50
+ end
51
+
52
+ describe 'exec' do
53
+ it 'executes given command in system`s shell' do
54
+ fs.sh 'touch test_file'
55
+
56
+ assert file?('test_file'), "expected file test_file to have been created, but it was not"
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,85 @@
1
+ require 'minitest/autorun'
2
+ require 'minitest/spec'
3
+ require 'minitest/filesystem'
4
+ require 'minitest/around/spec'
5
+ require 'mocha/setup'
6
+
7
+ require 'tmpdir'
8
+
9
+ require 'puppet_module/pkg/tasks'
10
+
11
+ # Directory that contains test fixtures
12
+ def fixture_dir
13
+ File.join File.dirname(__FILE__), 'fixture'
14
+ end
15
+
16
+ # Path of the test module named `name`
17
+ def fixture_module(name)
18
+ File.join(fixture_dir, name)
19
+ end
20
+
21
+ # Creates an array of all increasing paths from dirs.first to dirs.last
22
+ #
23
+ # Ex: walk_path(['a','b','c']) # => ['a', 'a/b', 'a/b/c']
24
+ def walk_path(dirs)
25
+ (1..dirs.to_a.length).map do |k|
26
+ File.join(*dirs.to_a.take(k))
27
+ end
28
+ end
29
+
30
+ # Exec proc inside specified directory
31
+ def do_into_dir(dir, t)
32
+ Dir.chdir dir do
33
+ t.call
34
+ end
35
+ end
36
+
37
+ # Exec proc inside a temp dir
38
+ def do_into_tmpdir(t)
39
+ Dir.mktmpdir do |dir|
40
+ do_into_dir(dir, t)
41
+ end
42
+ end
43
+
44
+ # Exec proc inside a temp copy of fixture module `mod_name`
45
+ def do_into_tmp_module(mod_name, t)
46
+ do_into_tmpdir(proc {
47
+ FileUtils.cp_r fixture_module(mod_name), mod_name
48
+ do_into_dir(mod_name, t)
49
+ })
50
+ end
51
+
52
+ # FPM requires rpmbuild to be present in order to produce a RPM package.
53
+ # If we can't find it, do not run given test
54
+ def only_if_rpmbuild_found(t)
55
+ if rpmbuild_found?
56
+ return t
57
+ else
58
+ return Proc.new {}
59
+ end
60
+ end
61
+
62
+ def rpmbuild_found?
63
+ `which rpmbuild`
64
+ return $? == 0
65
+ end
66
+
67
+ def directory?(d)
68
+ File.directory? d
69
+ end
70
+
71
+ def file?(f)
72
+ File.file? f
73
+ end
74
+
75
+ def mkdir(d)
76
+ FileUtils.mkdir_p d
77
+ end
78
+
79
+ def touch(f)
80
+ FileUtils.touch f
81
+ end
82
+
83
+ def join(*args)
84
+ File.join(*args)
85
+ end
data/test/test_vm.pp ADDED
@@ -0,0 +1,23 @@
1
+ $deps = [
2
+ 'libxml2',
3
+ 'libxml2-dev',
4
+ 'libxslt1.1',
5
+ 'libxslt1-dev',
6
+ 'rpm',
7
+ 'git',
8
+ ]
9
+
10
+ package { $deps:
11
+ ensure => installed,
12
+ require => Exec['apt-get update'],
13
+ }
14
+
15
+ package { 'bundler':
16
+ ensure => installed,
17
+ require => Package[$deps],
18
+ provider => 'gem',
19
+ }
20
+
21
+ exec { 'apt-get update':
22
+ path => '/usr/bin',
23
+ }
File without changes
@@ -0,0 +1,81 @@
1
+ require 'test_helper'
2
+
3
+ describe 'packaging tasks' do
4
+ let(:deb_task) { PuppetModule::Pkg::Tasks::Deb }
5
+ let(:rpm_task) { PuppetModule::Pkg::Tasks::RPM }
6
+ let(:sys) { stub_everything }
7
+ let(:minimal_mod) { OpenStruct.new(
8
+ :name => 'my_mod',
9
+ :author => 'a_dev',
10
+ :version => 'some_version')
11
+ }
12
+
13
+ let(:mod) { OpenStruct.new(
14
+ :name => 'my_mod',
15
+ :author => 'a_dev',
16
+ :version => 'some_version',
17
+ :author_full => 'a_dev <a@dev.com>',
18
+ :project_page => 'http://a.b.c/my_mod',
19
+ :summary => 'nothing fancy',
20
+ :license => 'whatever')
21
+ }
22
+ let(:opts) { OpenStruct.new(
23
+ :pkg_dir => 'pkg',
24
+ :install_dir => 'some/where')
25
+ }
26
+
27
+ it 'creates the output folder' do
28
+ sys.expects(:mkdir).with(regexp_matches(/#{opts.pkg_dir}/))
29
+
30
+ deb_task.new(sys).invoke(mod, opts)
31
+ end
32
+
33
+ it 'builds a package using all available module info' do
34
+ sys.expects(:sh).with(all_of(
35
+ regexp_matches(/^fpm/),
36
+ regexp_matches(/-s dir/),
37
+ regexp_matches(/-a all/),
38
+ regexp_matches(/-n puppet-mod-#{mod.author}-#{mod.name}/),
39
+ regexp_matches(/-v #{mod.version}/),
40
+ regexp_matches(/-m '#{mod.author_full}'/),
41
+ regexp_matches(/--url '#{mod.project_page}'/),
42
+ regexp_matches(/--description '#{mod.summary}'/),
43
+ regexp_matches(/--license '#{mod.license}'/),
44
+ regexp_matches(/-C #{opts.install_dir}/),
45
+ regexp_matches(/\.$/)))
46
+
47
+ deb_task.new(sys).invoke(mod, opts)
48
+ end
49
+
50
+ it 'doesn`t complain if optional module info are missing' do
51
+ sys.expects(:sh).with(Not(any_of(
52
+ regexp_matches(/-m /),
53
+ regexp_matches(/--url /),
54
+ regexp_matches(/--description /),
55
+ regexp_matches(/--license /)
56
+ )))
57
+
58
+ deb_task.new(sys).invoke(minimal_mod, opts)
59
+ end
60
+
61
+ describe 'deb task' do
62
+ it 'builds a deb package, using Debian conventions' do
63
+ sys.expects(:sh).with(all_of(
64
+ regexp_matches(/-t deb/),
65
+ regexp_matches(/-p #{opts.pkg_dir}\/puppet-mod-#{mod.author}-#{mod.name}_VERSION_ARCH.deb/)))
66
+
67
+ deb_task.new(sys).invoke(mod, opts)
68
+ end
69
+ end
70
+
71
+ describe 'rpm task' do
72
+ it 'builds a rpm package, using RPM conventions' do
73
+ sys.expects(:sh).with(all_of(
74
+ regexp_matches(/-t rpm/),
75
+ regexp_matches(/-p #{opts.pkg_dir}\/puppet-mod-#{mod.author}-#{mod.name}-VERSION.ARCH.rpm/)))
76
+
77
+ rpm_task.new(sys).invoke(mod, opts)
78
+ end
79
+ end
80
+ end
81
+
@@ -0,0 +1,13 @@
1
+ require 'test_helper'
2
+
3
+ describe PuppetModule::Pkg::Tasks::Clean do
4
+ let(:clean_task) { PuppetModule::Pkg::Tasks::Clean }
5
+ let(:sys) { stub_everything }
6
+ let(:opts) { OpenStruct.new(:install_dir => 'clean_test')}
7
+
8
+ it 'removes the installation directory' do
9
+ sys.expects(:rm).with(regexp_matches(/#{opts.install_dir}/))
10
+
11
+ clean_task.new(sys).invoke(nil, opts)
12
+ end
13
+ end
@@ -0,0 +1,34 @@
1
+ require 'test_helper'
2
+
3
+ describe PuppetModule::Pkg::Tasks::Install do
4
+ let(:install_task) { PuppetModule::Pkg::Tasks::Install }
5
+ let(:sys) { stub_everything }
6
+ let(:mod) { OpenStruct.new(:name => 'my_mod')}
7
+ let(:opts) { OpenStruct.new(:install_dir => 'build')}
8
+ let(:dest_path) { "usr/share/puppet/modules/#{mod.name}" }
9
+ let(:install_path) { join(opts.install_dir, dest_path) }
10
+
11
+ it 'creates the output folder' do
12
+ sys.expects(:mkdir).with(regexp_matches(/#{opts.install_dir}/))
13
+
14
+ install_task.new(sys).invoke(mod, opts)
15
+ end
16
+
17
+ it 'creates the destination path into the output folder' do
18
+ sys.expects(:mkdir).with(regexp_matches(/#{dest_path}/))
19
+
20
+ install_task.new(sys).invoke(mod, opts)
21
+ end
22
+
23
+ it 'installs all the relevant directories into the output folder' do
24
+ sys.expects(:cp).with(
25
+ includes(
26
+ 'manifests',
27
+ 'templates',
28
+ 'files',
29
+ 'lib'),
30
+ install_path)
31
+
32
+ install_task.new(sys).invoke(mod, opts)
33
+ end
34
+ end
data.tar.gz.sig ADDED
Binary file
metadata ADDED
@@ -0,0 +1,242 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: puppet_module_packaging
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Stefano Zanella
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDQDCCAiigAwIBAgIBADANBgkqhkiG9w0BAQUFADBGMRgwFgYDVQQDDA96YW5l
14
+ bGxhLnN0ZWZhbm8xFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixk
15
+ ARkWA2NvbTAeFw0xMzA4MDcxOTA2MDZaFw0xNDA4MDcxOTA2MDZaMEYxGDAWBgNV
16
+ BAMMD3phbmVsbGEuc3RlZmFubzEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYK
17
+ CZImiZPyLGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
18
+ 2JCnJCnjjs62MR/Tw/4WgSG42ruiCEqXV1ECMsXymHPE8xyHkYAwLXvBRzOkZ/IA
19
+ puJ1XhScduMRcUuE0ZPA5N2HBZI0WsmyyNTYBjOob8m0SNInoRZfIMloj3D8QzB7
20
+ /6G5HLMWNx60JEpIDgfXvIuSRKNKQ0/0+/G/H4COgj72pd3F4dYltvx+mSwPRq7Q
21
+ MdZsK3T5Q3d4eLBY1VSlJpq0wkwdEWTXAhR0Mfmbn1D8m9IhJfubgXuXVBY4OPO8
22
+ KAF/wWqTkzA6guVQlSKdZR4vwms7OpeFkotnivBKa6JwUQSXO8AZEyy53V8cSYDu
23
+ dbaFi53YbEwOWSMQnW8/kQIDAQABozkwNzAdBgNVHQ4EFgQUcBKkmJAvSTKfDf7z
24
+ LEu1wE+Rk+swCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwDQYJKoZIhvcNAQEFBQAD
25
+ ggEBAMeqfk1l4Y0iZ8jNiu0afcQ60DVqBkRtrT/rsZEqGsdOw11bntOE4yWpo4Kd
26
+ Y0C/kYrVQ/mIN7IGKbCSjES3aYdQftV9SRW77FA25m2KXRbnEYtJDUX35gAqSdRY
27
+ 9IiYivsMq2dr70eKPNFrFOwWvmwhcGyEG8EDvYoXWllke7RGz1Dn/AZx6jPnShO+
28
+ 0ru4OXsM9++md3sGXIugEFNygvo2/1yQoTe6+XiBocS+pWsJd6JZBfkxPRT4Dz4H
29
+ RigBD0E3/t/ABjCXkmqwp5gnAZmP8JiVUkn8rp5E0FXvC8T7nsPs2TW/TAmUV6rN
30
+ hK25FX8YWgT9fD9y3PpWjiYcrCo=
31
+ -----END CERTIFICATE-----
32
+ date: 2013-11-13 00:00:00.000000000 Z
33
+ dependencies:
34
+ - !ruby/object:Gem::Dependency
35
+ name: fpm
36
+ requirement: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ~>
39
+ - !ruby/object:Gem::Version
40
+ version: '0.4'
41
+ type: :runtime
42
+ prerelease: false
43
+ version_requirements: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ~>
46
+ - !ruby/object:Gem::Version
47
+ version: '0.4'
48
+ - !ruby/object:Gem::Dependency
49
+ name: bundler
50
+ requirement: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ~>
53
+ - !ruby/object:Gem::Version
54
+ version: '1.3'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ~>
60
+ - !ruby/object:Gem::Version
61
+ version: '1.3'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rake
64
+ requirement: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ type: :development
70
+ prerelease: false
71
+ version_requirements: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - '>='
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ - !ruby/object:Gem::Dependency
77
+ name: rubygems-tasks
78
+ requirement: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - '>='
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
90
+ - !ruby/object:Gem::Dependency
91
+ name: minitest
92
+ requirement: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ type: :development
98
+ prerelease: false
99
+ version_requirements: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - '>='
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
104
+ - !ruby/object:Gem::Dependency
105
+ name: minitest-filesystem
106
+ requirement: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '>='
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ type: :development
112
+ prerelease: false
113
+ version_requirements: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '>='
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
118
+ - !ruby/object:Gem::Dependency
119
+ name: minitest-around
120
+ requirement: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - '>='
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ type: :development
126
+ prerelease: false
127
+ version_requirements: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ - !ruby/object:Gem::Dependency
133
+ name: mocha
134
+ requirement: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - '>='
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ type: :development
140
+ prerelease: false
141
+ version_requirements: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - '>='
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
146
+ description: |2
147
+ puppet_module_packaging provides some Rake tasks to ease wrapping Puppet
148
+ modules into proper system packages like deb and rpm.
149
+ email:
150
+ - zanella.stefano@gmail.com
151
+ executables: []
152
+ extensions: []
153
+ extra_rdoc_files: []
154
+ files:
155
+ - .gitignore
156
+ - .ruby-version
157
+ - .travis.yml
158
+ - Changelog.md
159
+ - Gemfile
160
+ - LICENSE
161
+ - README.md
162
+ - Rakefile
163
+ - Vagrantfile
164
+ - lib/puppet_module/pkg/tasks.rb
165
+ - lib/puppet_module/pkg/tasks/build.rb
166
+ - lib/puppet_module/pkg/tasks/clean.rb
167
+ - lib/puppet_module/pkg/tasks/deb.rb
168
+ - lib/puppet_module/pkg/tasks/install.rb
169
+ - lib/puppet_module/pkg/tasks/modulefile.rb
170
+ - lib/puppet_module/pkg/tasks/rake_tasks.rb
171
+ - lib/puppet_module/pkg/tasks/rpm.rb
172
+ - lib/puppet_module/pkg/tasks/system.rb
173
+ - lib/puppet_module/pkg/version.rb
174
+ - puppet_module_packaging.gemspec
175
+ - rubygems-stefanozanella.crt
176
+ - test/end_to_end/.gitkeep
177
+ - test/end_to_end/clean_test.rb
178
+ - test/end_to_end/install_test.rb
179
+ - test/end_to_end/pkg_test.rb
180
+ - test/end_to_end/tasks_test.rb
181
+ - test/fixture/testmod/Modulefile
182
+ - test/fixture/testmod/Modulefile.no_name_or_author
183
+ - test/fixture/testmod/Modulefile.no_version
184
+ - test/fixture/testmod/Rakefile
185
+ - test/fixture/testmod/files/example.dat
186
+ - test/fixture/testmod/lib/utils.rb
187
+ - test/fixture/testmod/manifests/init.pp
188
+ - test/fixture/testmod/templates/config.erb
189
+ - test/integration/modulefile_test.rb
190
+ - test/integration/system_test.rb
191
+ - test/test_helper.rb
192
+ - test/test_vm.pp
193
+ - test/unit/.gitkeep
194
+ - test/unit/build_test.rb
195
+ - test/unit/clean_test.rb
196
+ - test/unit/install_test.rb
197
+ homepage: https://github.com/stefanozanella/puppet_module_packaging
198
+ licenses:
199
+ - MIT
200
+ metadata: {}
201
+ post_install_message:
202
+ rdoc_options: []
203
+ require_paths:
204
+ - lib
205
+ required_ruby_version: !ruby/object:Gem::Requirement
206
+ requirements:
207
+ - - '>='
208
+ - !ruby/object:Gem::Version
209
+ version: '0'
210
+ required_rubygems_version: !ruby/object:Gem::Requirement
211
+ requirements:
212
+ - - '>='
213
+ - !ruby/object:Gem::Version
214
+ version: '0'
215
+ requirements: []
216
+ rubyforge_project:
217
+ rubygems_version: 2.0.7
218
+ signing_key:
219
+ specification_version: 4
220
+ summary: Rake tasks for packaging Puppet modules
221
+ test_files:
222
+ - test/end_to_end/.gitkeep
223
+ - test/end_to_end/clean_test.rb
224
+ - test/end_to_end/install_test.rb
225
+ - test/end_to_end/pkg_test.rb
226
+ - test/end_to_end/tasks_test.rb
227
+ - test/fixture/testmod/Modulefile
228
+ - test/fixture/testmod/Modulefile.no_name_or_author
229
+ - test/fixture/testmod/Modulefile.no_version
230
+ - test/fixture/testmod/Rakefile
231
+ - test/fixture/testmod/files/example.dat
232
+ - test/fixture/testmod/lib/utils.rb
233
+ - test/fixture/testmod/manifests/init.pp
234
+ - test/fixture/testmod/templates/config.erb
235
+ - test/integration/modulefile_test.rb
236
+ - test/integration/system_test.rb
237
+ - test/test_helper.rb
238
+ - test/test_vm.pp
239
+ - test/unit/.gitkeep
240
+ - test/unit/build_test.rb
241
+ - test/unit/clean_test.rb
242
+ - test/unit/install_test.rb
metadata.gz.sig ADDED
@@ -0,0 +1,2 @@
1
+ #�El�l��4�;�6�_����hQ�H����7*�2$��E$ߌ�׭�p4C2�O,c*DVQ���a檞f�h�y�?/=���( �`�;_82-�2 ������$G<�������E���͡���^_J�jٴ��,�q �\�jOvH��B�J�h��%k5A�==�7��~ ؗD��2�[�� ��Z�ؒ�
2
+ Z��s�@0�h����F�����h@>.��T�-�?���t���N�?q̢�����i�q!ݙ