bunchr 0.1.3 → 0.1.4
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.
- data/example_recipes/autoconf.rake +18 -0
- data/example_recipes/libyaml.rake +18 -0
- data/example_recipes/openssl.rake +54 -0
- data/example_recipes/ruby.rake +38 -0
- data/example_recipes/sensu.rake +18 -0
- data/example_recipes/sensu_bin_stubs.rake +17 -0
- data/example_recipes/sensu_configs.rake +30 -0
- data/example_recipes/sensu_dashboard.rake +17 -0
- data/example_recipes/zlib.rake +32 -0
- data/lib/bunchr/packages.rb +1 -1
- data/lib/bunchr/version.rb +1 -1
- metadata +90 -61
@@ -0,0 +1,18 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'autoconf'
|
3
|
+
t.version = '2.63'
|
4
|
+
|
5
|
+
install_prefix = "#{Bunchr.install_dir}/embedded"
|
6
|
+
|
7
|
+
t.download_commands << "curl -O http://ftp.gnu.org/gnu/autoconf/autoconf-2.63.tar.gz"
|
8
|
+
t.download_commands << "tar xfvz autoconf-2.63.tar.gz"
|
9
|
+
|
10
|
+
t.build_environment['LDFLAGS'] = "-R#{install_prefix}/lib -L#{install_prefix}/lib -I#{install_prefix}/include"
|
11
|
+
t.build_environment['CFLAGS'] = "-L#{install_prefix}/lib -I#{install_prefix}/include"
|
12
|
+
t.build_commands << "./configure --prefix=#{install_prefix}"
|
13
|
+
t.build_commands << "make"
|
14
|
+
|
15
|
+
t.install_commands << "make install"
|
16
|
+
|
17
|
+
CLEAN << install_prefix
|
18
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'libyaml'
|
3
|
+
t.version = '0.1.4'
|
4
|
+
|
5
|
+
install_prefix = "#{Bunchr.install_dir}/embedded"
|
6
|
+
|
7
|
+
t.download_commands << "curl -O http://pyyaml.org/download/libyaml/yaml-0.1.4.tar.gz"
|
8
|
+
t.download_commands << "tar xfvz yaml-0.1.4.tar.gz"
|
9
|
+
|
10
|
+
t.work_dir = "yaml-#{t.version}"
|
11
|
+
|
12
|
+
t.build_commands << "./configure --prefix=#{install_prefix}"
|
13
|
+
t.build_commands << "make"
|
14
|
+
|
15
|
+
t.install_commands << "make install"
|
16
|
+
|
17
|
+
CLEAN << install_prefix
|
18
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'openssl'
|
3
|
+
t.version = '1.0.1'
|
4
|
+
|
5
|
+
install_prefix = "#{Bunchr.install_dir}/embedded"
|
6
|
+
|
7
|
+
## download_commands are executed in the +download_dir+ directory.
|
8
|
+
t.download_commands << "curl -O http://www.openssl.org/source/openssl-1.0.1.tar.gz"
|
9
|
+
t.download_commands << "tar xfvz openssl-1.0.1.tar.gz"
|
10
|
+
|
11
|
+
## build_commands are executed in the +work_dir+ directory.
|
12
|
+
## If work_dir is not specified, it is assumed to be "name-version" or "name"
|
13
|
+
## which is typically the case for tarballs. Can be overriden here, eg:
|
14
|
+
## t.work_dir = "openssl"
|
15
|
+
|
16
|
+
os = t.ohai['os']
|
17
|
+
arch = t.ohai['kernel']['machine']
|
18
|
+
|
19
|
+
if os == 'darwin' && arch == 'x86_64'
|
20
|
+
# mac 64bit specifics
|
21
|
+
t.build_commands << "./Configure darwin64-x86_64-cc \
|
22
|
+
--prefix=#{install_prefix} \
|
23
|
+
--with-zlib-lib=#{install_prefix}/lib \
|
24
|
+
--with-zlib-include=#{install_prefix}/include \
|
25
|
+
zlib shared"
|
26
|
+
elsif os == 'solaris2'
|
27
|
+
# solaris2 specifics
|
28
|
+
t.build_commands << "./Configure solaris-x86-gcc \
|
29
|
+
--prefix=#{install_prefix} \
|
30
|
+
--with-zlib-lib=#{install_prefix}/lib \
|
31
|
+
--with-zlib-include=#{install_prefix}/include \
|
32
|
+
zlib shared \
|
33
|
+
-L#{install_prefix}/lib \
|
34
|
+
-I#{install_prefix}/include \
|
35
|
+
-R#{install_prefix}/lib"
|
36
|
+
else
|
37
|
+
# all other platforms
|
38
|
+
t.build_commands << "./config \
|
39
|
+
--prefix=#{install_prefix} \
|
40
|
+
--with-zlib-lib=#{install_prefix}/lib \
|
41
|
+
--with-zlib-include=#{install_prefix}/include \
|
42
|
+
zlib shared \
|
43
|
+
-L#{install_prefix}/lib \
|
44
|
+
-I#{install_prefix}/include"
|
45
|
+
end
|
46
|
+
t.build_environment['LD_RUN_PATH'] = "#{install_prefix}/lib"
|
47
|
+
t.build_commands << "make"
|
48
|
+
|
49
|
+
## install_commands are executed in the +work_dir+ directory.
|
50
|
+
t.install_commands << "make install"
|
51
|
+
t.install_commands << "rm -rf #{install_prefix}/ssl/man"
|
52
|
+
|
53
|
+
CLEAN << install_prefix
|
54
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'ruby'
|
3
|
+
t.version = '1.9.3-p125'
|
4
|
+
|
5
|
+
t.depends_on('autoconf')
|
6
|
+
t.depends_on('zlib')
|
7
|
+
t.depends_on('openssl')
|
8
|
+
t.depends_on('libyaml')
|
9
|
+
|
10
|
+
install_prefix = "#{Bunchr.install_dir}/embedded"
|
11
|
+
|
12
|
+
os = t.ohai['os']
|
13
|
+
arch = t.ohai['kernel']['machine']
|
14
|
+
|
15
|
+
t.download_commands << "curl -O http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p125.tar.gz"
|
16
|
+
t.download_commands << "tar xfvz ruby-1.9.3-p125.tar.gz"
|
17
|
+
|
18
|
+
if os == 'darwin' && arch == 'x86_64'
|
19
|
+
t.build_environment['LDFLAGS'] = "-arch x86_64 -R#{install_prefix}/lib -L#{install_prefix}/lib -I#{install_prefix}/include"
|
20
|
+
t.build_environment['CFLAGS'] = "-arch x86_64 -m64 -L#{install_prefix}/lib -I#{install_prefix}/include"
|
21
|
+
elsif os == 'linux'
|
22
|
+
t.build_environment['LDFLAGS'] = "-Wl,-rpath #{install_prefix}/lib -L#{install_prefix}/lib -I#{install_prefix}/include"
|
23
|
+
t.build_environment['CFLAGS'] = "-L#{install_prefix}/lib -I#{install_prefix}/include"
|
24
|
+
elsif os == 'solaris2'
|
25
|
+
t.build_environment['LDFLAGS'] = "-R#{install_prefix}/lib -L#{install_prefix}/lib -I#{install_prefix}/include"
|
26
|
+
t.build_environment['CFLAGS'] = "-L#{install_prefix}/lib -I#{install_prefix}/include"
|
27
|
+
end
|
28
|
+
|
29
|
+
t.build_commands << "./configure --prefix=#{install_prefix} \
|
30
|
+
--with-opt-dir=#{install_prefix} \
|
31
|
+
--enable-shared \
|
32
|
+
--disable-install-doc"
|
33
|
+
t.build_commands << "make"
|
34
|
+
|
35
|
+
t.install_commands << "make install"
|
36
|
+
|
37
|
+
CLEAN << install_prefix
|
38
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'sensu'
|
3
|
+
|
4
|
+
install_prefix = "#{Bunchr.install_dir}"
|
5
|
+
|
6
|
+
# use the gem installed by the ruby.rake recipe in <Bunchr.install_dir>/embedded/bin
|
7
|
+
gem_bin = "#{install_prefix}/embedded/bin/gem"
|
8
|
+
|
9
|
+
t.download_commands << "git clone git://github.com/sensu/sensu.git"
|
10
|
+
|
11
|
+
t.build_commands << "rm -f sensu-*.gem"
|
12
|
+
t.build_commands << "#{gem_bin} build sensu.gemspec"
|
13
|
+
|
14
|
+
t.install_commands << "#{gem_bin} install --no-ri --no-rdoc \
|
15
|
+
sensu-*.gem"
|
16
|
+
|
17
|
+
CLEAN << install_prefix
|
18
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'sensu_bin_stubs'
|
3
|
+
|
4
|
+
bin_dir = "#{Bunchr.install_dir}/bin"
|
5
|
+
|
6
|
+
# build and install commands run from t.work_dir. In this case, our
|
7
|
+
# files are located in the same dir as the Rakefile.
|
8
|
+
t.work_dir = Dir.pwd
|
9
|
+
|
10
|
+
t.install_commands << "rm -rf #{bin_dir}"
|
11
|
+
t.install_commands << "mkdir -p #{bin_dir}"
|
12
|
+
|
13
|
+
t.install_commands << "ln -s ../embedded/bin/sensu-api #{bin_dir}/sensu-api"
|
14
|
+
t.install_commands << "ln -s ../embedded/bin/sensu-client #{bin_dir}/sensu-client"
|
15
|
+
t.install_commands << "ln -s ../embedded/bin/sensu-server #{bin_dir}/sensu-server"
|
16
|
+
t.install_commands << "ln -s ../embedded/bin/sensu-dashboard #{bin_dir}/sensu-dashboard"
|
17
|
+
end
|
@@ -0,0 +1,30 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'sensu_configs'
|
3
|
+
|
4
|
+
# build and install commands run from t.work_dir. In this case, our
|
5
|
+
# files are located in the same dir as the Rakefile.
|
6
|
+
t.work_dir = Dir.pwd
|
7
|
+
|
8
|
+
t.install_commands << "rm -rf /etc/sensu"
|
9
|
+
t.install_commands << "rm -rf /etc/init.d/sensu-*"
|
10
|
+
t.install_commands << "rm -rf /usr/share/sensu"
|
11
|
+
t.install_commands << "rm -rf /var/log/sensu"
|
12
|
+
|
13
|
+
t.install_commands << "cp -rf ./sensu_configs/sensu /etc/sensu"
|
14
|
+
t.install_commands << "cp -f ./sensu_configs/logrotate.d/sensu /etc/logrotate.d/sensu"
|
15
|
+
|
16
|
+
t.install_commands << "cp -f ./sensu_configs/init.d/sensu-api /etc/init.d/sensu-api"
|
17
|
+
t.install_commands << "cp -f ./sensu_configs/init.d/sensu-server /etc/init.d/sensu-server"
|
18
|
+
t.install_commands << "cp -f ./sensu_configs/init.d/sensu-client /etc/init.d/sensu-client"
|
19
|
+
t.install_commands << "cp -f ./sensu_configs/init.d/sensu-dashboard /etc/init.d/sensu-dashboard"
|
20
|
+
|
21
|
+
t.install_commands << "mkdir -p /usr/share/sensu/upstart"
|
22
|
+
t.install_commands << "cp -f ./sensu_configs/init/*.conf /usr/share/sensu/upstart/"
|
23
|
+
|
24
|
+
t.install_commands << "mkdir /var/log/sensu"
|
25
|
+
|
26
|
+
CLEAN << "/var/log/sensu"
|
27
|
+
CLEAN << "/etc/sensu"
|
28
|
+
CLEAN << "/etc/init.d/sensu-*"
|
29
|
+
CLEAN << "/usr/share/sensu"
|
30
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'sensu_dashboard'
|
3
|
+
|
4
|
+
install_prefix = "#{Bunchr.install_dir}"
|
5
|
+
# use the gem installed by the ruby.rake recipe in <Bunchr.install_dir>/embedded/bin
|
6
|
+
gem_bin = "#{install_prefix}/embedded/bin/gem"
|
7
|
+
|
8
|
+
t.download_commands << "git clone git://github.com/sensu/sensu-dashboard.git"
|
9
|
+
|
10
|
+
t.work_dir = 'sensu-dashboard'
|
11
|
+
|
12
|
+
t.build_commands << "rm -f sensu-dashboard-*.gem"
|
13
|
+
t.build_commands << "#{gem_bin} build sensu-dashboard.gemspec"
|
14
|
+
|
15
|
+
t.install_commands << "#{gem_bin} install --no-ri --no-rdoc \
|
16
|
+
sensu-dashboard-*.gem"
|
17
|
+
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
Bunchr::Software.new do |t|
|
2
|
+
t.name = 'zlib'
|
3
|
+
t.version = '1.2.6'
|
4
|
+
|
5
|
+
install_prefix = "#{Bunchr.install_dir}/embedded"
|
6
|
+
|
7
|
+
t.download_commands << "curl -O http://zlib.net/zlib-1.2.6.tar.gz"
|
8
|
+
t.download_commands << "tar xfvz zlib-1.2.6.tar.gz"
|
9
|
+
|
10
|
+
os = t.ohai['os']
|
11
|
+
arch = t.ohai['kernel']['machine']
|
12
|
+
|
13
|
+
if os == 'darwin' && arch == 'x86_64'
|
14
|
+
t.build_environment['LDFLAGS'] = "-R#{install_prefix}/lib -L#{install_prefix}/lib -I#{install_prefix}/include"
|
15
|
+
t.build_environment['CFLAGS'] = "-I#{install_prefix}/include -L#{install_prefix}/lib"
|
16
|
+
elsif os == 'linux'
|
17
|
+
t.build_environment['LDFLAGS'] = "-Wl,-rpath #{install_prefix}/lib -L#{install_prefix}/lib -I#{install_prefix}/include"
|
18
|
+
t.build_environment['CFLAGS'] = "-I#{install_prefix}/include -L#{install_prefix}/lib"
|
19
|
+
end
|
20
|
+
|
21
|
+
# gcc will error if the lib dir doesn't exist, at least on some linux platforms
|
22
|
+
unless File.directory?("#{install_prefix}/lib")
|
23
|
+
t.build_commands << "mkdir #{install_prefix}/lib"
|
24
|
+
end
|
25
|
+
|
26
|
+
t.build_commands << "./configure --prefix=#{install_prefix}"
|
27
|
+
t.build_commands << "make"
|
28
|
+
|
29
|
+
t.install_commands << "make install"
|
30
|
+
|
31
|
+
CLEAN << install_prefix
|
32
|
+
end
|
data/lib/bunchr/packages.rb
CHANGED
@@ -10,7 +10,7 @@ module Bunchr
|
|
10
10
|
|
11
11
|
# only attempt to build .rpm's on these platforms (as reported by
|
12
12
|
# ohai.platform)
|
13
|
-
RPM_PLATFORMS = %w[centos redhat fedora scientific]
|
13
|
+
RPM_PLATFORMS = %w[centos redhat fedora scientific suse]
|
14
14
|
|
15
15
|
# only attempt to build .deb's on these platforms (as reported by
|
16
16
|
# ohai.platform)
|
data/lib/bunchr/version.rb
CHANGED
metadata
CHANGED
@@ -1,76 +1,98 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: bunchr
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
5
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
prerelease: false
|
5
|
+
segments:
|
6
|
+
- 0
|
7
|
+
- 1
|
8
|
+
- 4
|
9
|
+
version: 0.1.4
|
6
10
|
platform: ruby
|
7
|
-
authors:
|
11
|
+
authors:
|
8
12
|
- Joe Miller
|
9
13
|
autorequire:
|
10
14
|
bindir: bin
|
11
15
|
cert_chain: []
|
12
|
-
|
13
|
-
|
14
|
-
|
16
|
+
|
17
|
+
date: 2012-04-17 00:00:00 -07:00
|
18
|
+
default_executable:
|
19
|
+
dependencies:
|
20
|
+
- !ruby/object:Gem::Dependency
|
15
21
|
name: rake
|
16
|
-
|
17
|
-
|
18
|
-
requirements:
|
19
|
-
- -
|
20
|
-
- !ruby/object:Gem::Version
|
22
|
+
prerelease: false
|
23
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
24
|
+
requirements:
|
25
|
+
- - ">="
|
26
|
+
- !ruby/object:Gem::Version
|
27
|
+
segments:
|
28
|
+
- 0
|
29
|
+
- 8
|
30
|
+
- 7
|
21
31
|
version: 0.8.7
|
22
32
|
type: :runtime
|
23
|
-
|
24
|
-
|
25
|
-
- !ruby/object:Gem::Dependency
|
33
|
+
version_requirements: *id001
|
34
|
+
- !ruby/object:Gem::Dependency
|
26
35
|
name: ohai
|
27
|
-
requirement: &70334137300680 !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
29
|
-
requirements:
|
30
|
-
- - ! '>='
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '0'
|
33
|
-
type: :runtime
|
34
36
|
prerelease: false
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
- !ruby/object:Gem::Version
|
43
|
-
version: '0'
|
37
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
38
|
+
requirements:
|
39
|
+
- - ">="
|
40
|
+
- !ruby/object:Gem::Version
|
41
|
+
segments:
|
42
|
+
- 0
|
43
|
+
version: "0"
|
44
44
|
type: :runtime
|
45
|
+
version_requirements: *id002
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: systemu
|
45
48
|
prerelease: false
|
46
|
-
|
47
|
-
|
49
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
segments:
|
54
|
+
- 0
|
55
|
+
version: "0"
|
56
|
+
type: :runtime
|
57
|
+
version_requirements: *id003
|
58
|
+
- !ruby/object:Gem::Dependency
|
48
59
|
name: fpm
|
49
|
-
|
50
|
-
|
51
|
-
requirements:
|
60
|
+
prerelease: false
|
61
|
+
requirement: &id004 !ruby/object:Gem::Requirement
|
62
|
+
requirements:
|
52
63
|
- - ~>
|
53
|
-
- !ruby/object:Gem::Version
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
segments:
|
66
|
+
- 0
|
67
|
+
- 4
|
68
|
+
- 6
|
54
69
|
version: 0.4.6
|
55
70
|
type: :runtime
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
DEB, etc).
|
60
|
-
|
71
|
+
version_requirements: *id004
|
72
|
+
description: |
|
73
|
+
A DSL for building complex software projects and packaging them (RPM, DEB, etc).
|
61
74
|
Originally developed to create "omnibus" style packages that include an entire
|
62
|
-
|
63
75
|
ruby stack along with one or more gems, but useful for general compilation and
|
64
|
-
|
65
76
|
packaging as well.
|
66
77
|
|
67
|
-
'
|
68
78
|
email: joeym@joeym.net
|
69
79
|
executables: []
|
80
|
+
|
70
81
|
extensions: []
|
82
|
+
|
71
83
|
extra_rdoc_files: []
|
72
|
-
|
84
|
+
|
85
|
+
files:
|
73
86
|
- README.md
|
87
|
+
- example_recipes/autoconf.rake
|
88
|
+
- example_recipes/libyaml.rake
|
89
|
+
- example_recipes/openssl.rake
|
90
|
+
- example_recipes/ruby.rake
|
91
|
+
- example_recipes/sensu.rake
|
92
|
+
- example_recipes/sensu_bin_stubs.rake
|
93
|
+
- example_recipes/sensu_configs.rake
|
94
|
+
- example_recipes/sensu_dashboard.rake
|
95
|
+
- example_recipes/zlib.rake
|
74
96
|
- lib/bunchr/logger.rb
|
75
97
|
- lib/bunchr/ohai.rb
|
76
98
|
- lib/bunchr/packages.rb
|
@@ -78,28 +100,35 @@ files:
|
|
78
100
|
- lib/bunchr/utils.rb
|
79
101
|
- lib/bunchr/version.rb
|
80
102
|
- lib/bunchr.rb
|
103
|
+
has_rdoc: true
|
81
104
|
homepage: https://github.com/joemiller/bunchr
|
82
105
|
licenses: []
|
106
|
+
|
83
107
|
post_install_message:
|
84
108
|
rdoc_options: []
|
85
|
-
|
109
|
+
|
110
|
+
require_paths:
|
86
111
|
- lib
|
87
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
requirements:
|
96
|
-
- -
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
|
112
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
113
|
+
requirements:
|
114
|
+
- - ">="
|
115
|
+
- !ruby/object:Gem::Version
|
116
|
+
segments:
|
117
|
+
- 0
|
118
|
+
version: "0"
|
119
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - ">="
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
segments:
|
124
|
+
- 0
|
125
|
+
version: "0"
|
99
126
|
requirements: []
|
127
|
+
|
100
128
|
rubyforge_project:
|
101
|
-
rubygems_version: 1.
|
129
|
+
rubygems_version: 1.3.6
|
102
130
|
signing_key:
|
103
131
|
specification_version: 3
|
104
132
|
summary: A DSL for bundling complex software projects into 'omnibus'-style packages.
|
105
133
|
test_files: []
|
134
|
+
|