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.
@@ -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
@@ -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)
@@ -1,3 +1,3 @@
1
1
  module Bunchr
2
- VERSION = '0.1.3'
2
+ VERSION = '0.1.4'
3
3
  end
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
- version: 0.1.3
5
- prerelease:
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
- date: 2012-04-17 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
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
- requirement: &70334137301140 !ruby/object:Gem::Requirement
17
- none: false
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
- prerelease: false
24
- version_requirements: *70334137301140
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
- version_requirements: *70334137300680
36
- - !ruby/object:Gem::Dependency
37
- name: systemu
38
- requirement: &70334137300160 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
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
- version_requirements: *70334137300160
47
- - !ruby/object:Gem::Dependency
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
- requirement: &70334137299380 !ruby/object:Gem::Requirement
50
- none: false
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
- prerelease: false
57
- version_requirements: *70334137299380
58
- description: ! 'A DSL for building complex software projects and packaging them (RPM,
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
- files:
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
- require_paths:
109
+
110
+ require_paths:
86
111
  - lib
87
- required_ruby_version: !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
90
- - - ! '>='
91
- - !ruby/object:Gem::Version
92
- version: '0'
93
- required_rubygems_version: !ruby/object:Gem::Requirement
94
- none: false
95
- requirements:
96
- - - ! '>='
97
- - !ruby/object:Gem::Version
98
- version: '0'
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.8.15
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
+