facter 1.6.12 → 1.6.13.rc1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of facter might be problematic. Click here for more details.

@@ -1,4 +1,4 @@
1
- if @build_gem == TRUE or @build_gem == 'true' or @build_gem == 'TRUE'
1
+ if @build_gem
2
2
  require 'rubygems/package_task'
3
3
 
4
4
  def glob_gem_files
@@ -15,18 +15,18 @@ if @build_gem == TRUE or @build_gem == 'true' or @build_gem == 'TRUE'
15
15
  end
16
16
 
17
17
  spec = Gem::Specification.new do |s|
18
- s.name = @name
19
- s.version = @gemversion
20
- s.author = @author
21
- s.email = @email
22
- s.homepage = @homepage
23
- s.summary = @summary
24
- s.description = @description
25
- s.files = glob_gem_files
26
- s.require_path = @gem_require_path
27
- s.test_files = FileList[@gem_test_files.split(' ')]
28
- s.executables = @gem_executables
29
- s.rubyforge_project = @gem_forge_project
18
+ s.name = @name unless @name.nil?
19
+ s.version = @gemversion unless @gemversion.nil?
20
+ s.author = @author unless @author.nil?
21
+ s.email = @email unless @email.nil?
22
+ s.homepage = @homepage unless @homepage.nil?
23
+ s.summary = @summary unless @summary.nil?
24
+ s.description = @description unless @description.nil?
25
+ s.files = glob_gem_files unless glob_gem_files.nil?
26
+ s.executables = @gem_executables unless @gem_executables.nil?
27
+ s.require_path = @gem_require_path unless @gem_require_path.nil?
28
+ s.test_files = FileList[@gem_test_files.split(' ')] unless @gem_test_files.nil?
29
+ s.rubyforge_project = @gem_forge_project unless @gem_forge_project.nil?
30
30
 
31
31
  @gem_runtime_dependencies.each do |gem, version|
32
32
  s.add_runtime_dependency("#{gem}", "#{version}") unless (version.nil? or version.empty?)
@@ -1,79 +1,80 @@
1
- require 'erb'
2
- namespace :package do
3
- namespace :ips do
4
- workdir = "pkg/ips"
5
- proto = workdir + '/proto'
1
+ if @build_ips
2
+ require 'erb'
3
+ namespace :package do
4
+ namespace :ips do
5
+ workdir = "pkg/ips"
6
+ proto = workdir + '/proto'
7
+ repo = workdir + '/repo'
8
+ pkgs = workdir + '/pkgs'
9
+ repouri = "file://#{`pwd`.strip + '/' + repo}"
10
+ artifact = "#{pkgs}/#{@name}@#{@ipsversion}.p5p"
6
11
 
7
- # Create a source repo
8
- # We dont clean the base pkg directory only ips work dir.
9
- task :clean do
10
- %x[rm -rf #{workdir}]
11
- end
12
+ # Create a source repo
13
+ # We dont clean the base pkg directory only ips work dir.
14
+ task :clean do
15
+ %x[rm -rf #{workdir}]
16
+ end
12
17
 
13
- # Create an installation image at ips/proto
14
- task :prepare => :clean do
15
- check_tool('pkgsend')
16
- x %[mkdir -p #{workdir}]
17
- x %[gmake -f ext/ips/rules DESTDIR=#{proto} 2>#{workdir}/build.out ]
18
- end
18
+ # Create an installation image at ips/proto
19
+ task :prepare => :clean do
20
+ check_tool('pkgsend')
21
+ x %[mkdir -p #{workdir}]
22
+ x %[gmake -f ext/ips/rules DESTDIR=#{proto} 2>#{workdir}/build.out ]
23
+ end
19
24
 
20
- # Process templates and write the initial manifest
21
- task :prototmpl do
22
- erb("ext/ips/#{@name}.p5m.erb", workdir + '/' + @name + '.p5m.x')
23
- end
25
+ # Process templates and write the initial manifest
26
+ task :prototmpl do
27
+ erb("ext/ips/#{@name}.p5m.erb", workdir + '/' + @name + '.p5m.x')
28
+ end
24
29
 
25
- # Update manifest to include the installation image information.
26
- task :protogen => :prototmpl do
27
- x %[pkgsend generate #{proto} >> #{workdir}/#{@name}.p5m.x ]
28
- os=%x[uname -p].chomp
29
- end
30
+ # Update manifest to include the installation image information.
31
+ task :protogen => :prototmpl do
32
+ x %[pkgsend generate #{proto} >> #{workdir}/#{@name}.p5m.x ]
33
+ os=%x[uname -p].chomp
34
+ end
30
35
 
31
- # Generate and resolve dependency list
32
- task :protodeps => :protogen do
33
- x %[pkgdepend generate -d #{proto} #{workdir}/#{@name}.p5m.x > #{workdir}/#{@name}.depends ]
34
- x %[pkgdepend resolve -m #{workdir}/#{@name}.depends ]
35
- x %[cat #{workdir}/#{@name}.depends.res >> #{workdir}/#{@name}.p5m.x]
36
- end
36
+ # Generate and resolve dependency list
37
+ task :protodeps => :protogen do
38
+ x %[pkgdepend generate -d #{proto} #{workdir}/#{@name}.p5m.x > #{workdir}/#{@name}.depends ]
39
+ x %[pkgdepend resolve -m #{workdir}/#{@name}.depends ]
40
+ x %[cat #{workdir}/#{@name}.depends.res >> #{workdir}/#{@name}.p5m.x]
41
+ end
37
42
 
38
- # Mogrify manifest to remove unncecessary info, and other kinds of transforms.
39
- task :protomogrify => :protodeps do
40
- x %[pkgmogrify ./ext/ips/transforms ./#{workdir}/#{@name}.p5m.x| pkgfmt >> #{workdir}/#{@name}.p5m ]
41
- end
43
+ # Mogrify manifest to remove unncecessary info, and other kinds of transforms.
44
+ task :protomogrify => :protodeps do
45
+ x %[pkgmogrify ./ext/ips/transforms ./#{workdir}/#{@name}.p5m.x| pkgfmt >> #{workdir}/#{@name}.p5m ]
46
+ end
42
47
 
43
- # Generate and resolve dependency list
44
- task :license => :protomogrify do
45
- x %[cp LICENSE #{proto}/#{@name}.license]
46
- end
48
+ # Generate and resolve dependency list
49
+ task :license => :protomogrify do
50
+ x %[cp LICENSE #{proto}/#{@name}.license]
51
+ end
47
52
 
48
- # Ensure that our manifest is sane.
49
- task :lint => :license do
50
- x %[pkglint #{workdir}/#{@name}.p5m]
51
- end
52
-
53
- # the older versions may require --fmri-in-manifest
54
- task :package => :lint do
55
- x %[pkgsend -s #{@ips_repo} publish -d #{proto} --fmri-in-manifest #{workdir}/#{@name}.p5m]
56
- end
53
+ # Ensure that our manifest is sane.
54
+ task :lint => :license do
55
+ x %[pkglint #{workdir}/#{@name}.p5m]
56
+ end
57
57
 
58
- task :retrieve do
59
- %x[rm #{workdir}/#{@name}.p5p]
60
- x %[pkgrecv -s #{@ips_repo} -a -d #{workdir}/#{@name}.p5p #{@name}@#{@ipsversion}]
61
- x %[pkg list -n -g #{workdir}/#{@name}.p5p #{@name}@#{@ipsversion}]
62
- end
58
+ task :package => :lint do
59
+ x %[rm -rf #{pkgs}]
60
+ x %[mkdir -p #{pkgs}]
61
+ x %[pkgrepo create #{repo}]
62
+ x %[pkgrepo set -s #{repo} publisher/prefix=puppetlabs.com]
63
+ x %[pkgsend -s #{repouri} publish -d #{proto} --fmri-in-manifest #{workdir}/#{@name}.p5m]
64
+ x %[rm -f #{artifact}]
65
+ x %[pkgrecv -s #{repouri} -a -d #{artifact} #{@name}@#{@ipsversion}]
66
+ end
63
67
 
64
- task :dry_install => :retrieve do
65
- x %[pkg install -nv -g #{workdir}/#{@name}.p5p #{@name}@#{@ipsversion}]
68
+ task :dry_install do
69
+ x %[pkg install -nv -g #{artifact} #{@name}@#{@ipsversion}]
70
+ end
66
71
  end
67
72
 
68
- task :install_cmd => :retrieve do
69
- puts %x[pkg install -nv -g #{workdir}/#{@name}.p5p #{@name}@#{@ipsversion}]
73
+ desc "Creates an ips version"
74
+ task :ips do
75
+ Rake::Task['package:ips:prepare'].invoke
76
+ Rake::Task['package:ips:package'].invoke
70
77
  end
71
- end
72
78
 
73
- desc "Uploads an ips version"
74
- task :ips do
75
- Rake::Task['package:ips:prepare'].invoke
76
- Rake::Task['package:ips:package'].invoke
77
79
  end
78
-
79
80
  end
@@ -49,7 +49,7 @@ def build_rpm_with_mock(is_rc, subdir)
49
49
  end
50
50
  end
51
51
 
52
- case rpm
52
+ case File.basename(rpm)
53
53
  when /debuginfo/
54
54
  rm_rf(rpm)
55
55
  when /src\.rpm/
@@ -60,7 +60,7 @@ def build_rpm_with_mock(is_rc, subdir)
60
60
  cp_pr(rpm, "pkg/#{family}/#{version}/#{subdir}/x86_64")
61
61
  when /noarch/
62
62
  cp_pr(rpm, "pkg/#{family}/#{version}/#{subdir}/i386")
63
- ln("pkg/#{family}/#{version}/#{subdir}/i386/#{File.basename rpm}", "pkg/#{family}/#{version}/#{subdir}/x86_64/")
63
+ ln("pkg/#{family}/#{version}/#{subdir}/i386/#{File.basename(rpm)}", "pkg/#{family}/#{version}/#{subdir}/x86_64/")
64
64
  end
65
65
  end
66
66
  end
@@ -1,20 +1,54 @@
1
- namespace :package do
2
- desc "Update the version in #{@version_file} to current and commit."
3
- task :versionbump do
4
- old_version = get_version_file_version
5
- contents = IO.read(@version_file)
6
- new_version = '"' + @version.to_s.strip + '"'
7
- if contents.match("VERSION = #{old_version}")
8
- contents.gsub!("VERSION = #{old_version}", "VERSION = #{new_version}")
9
- elsif contents.match("#{@name.upcase}VERSION = #{old_version}")
10
- contents.gsub!("#{@name.upcase}VERSION = #{old_version}", "#{@name.upcase}VERSION = #{new_version}")
11
- else
12
- contents.gsub!(old_version, @version)
1
+ # These tasks are "release" chains that couple as much of the release process for a package as possible
2
+
3
+ namespace :pl do
4
+ if @build_gem
5
+ desc "Build and ship a gem"
6
+ task :release_gem do
7
+ invoke_task("package:gem")
8
+ if confirm_ship(FileList["pkg/*.gem"])
9
+ invoke_task("pl:ship_gem")
10
+ end
11
+ end
12
+ end
13
+
14
+ desc "Release deb RCs, e.g. package:tar, pl:{deb_all_rc, sign_deb_changes, ship_debs}"
15
+ task :release_deb_rc do
16
+ invoke_task("pl:deb_all_rc")
17
+ invoke_task("pl:sign_deb_changes")
18
+ if confirm_ship(FileList["pkg/deb/**/*"])
19
+ invoke_task("pl:ship_debs")
20
+ end
21
+ end
22
+
23
+ desc "Release deb FINALs, e.g. package:tar, pl:{deb_all, sign_deb_changes, ship_debs}"
24
+ task :release_deb_final do
25
+ invoke_task("pl:deb_all")
26
+ invoke_task("pl:sign_deb_changes")
27
+ if confirm_ship(FileList["pkg/deb/**/*"])
28
+ invoke_task("pl:ship_debs")
29
+ end
30
+ end
31
+
32
+ desc "Release rpm RCs, e.g. package:tar, pl:{mock_rc, sign_rpms, ship_rpms, update_yum_repo}"
33
+ task :release_rpm_rc do
34
+ invoke_task("pl:mock_rc")
35
+ invoke_task("pl:sign_rpms")
36
+ if confirm_ship(FileList["pkg/el/**/*", "pkg/fedora/**/*"])
37
+ invoke_task("pl:ship_rpms")
38
+ invoke_task("pl:update_yum_repo")
39
+ end
40
+ end
41
+
42
+ desc "Release rpm FINALs, e.g. package:tar, pl:{mock_final, sign_rpms, ship_rpms, update_yum_repo}"
43
+ task :release_rpm_final do
44
+ invoke_task("pl:mock_final")
45
+ invoke_task("pl:sign_rpms")
46
+ if confirm_ship(FileList["pkg/el/**/*", "pkg/fedora/**/*"])
47
+ invoke_task("pl:ship_rpms")
48
+ invoke_task("pl:update_yum_repo")
13
49
  end
14
- file = File.open(@version_file, 'w')
15
- file.write contents
16
- file.close
17
- git_commit_file(@version_file)
18
50
  end
19
51
  end
20
52
 
53
+
54
+
@@ -7,7 +7,7 @@ namespace :pl do
7
7
 
8
8
  desc "Update remote rpm repodata on #{@yum_host}"
9
9
  task :update_yum_repo do
10
- remote_ssh_cmd(@yum_host, '/var/lib/gems/1.8/gems/rake-0.9.2.2/bin/rake -I /opt/repository/ mk_repo')
10
+ remote_ssh_cmd(@yum_host, '/var/lib/gems/1.8/gems/rake-0.9.2.2/bin/rake -f /opt/repository/Rakefile mk_repo')
11
11
  end
12
12
 
13
13
  desc "Ship cow-built debs to #{@apt_host}"
@@ -15,7 +15,17 @@ namespace :pl do
15
15
  rsync_to('pkg/deb/', @apt_host, @apt_repo_path)
16
16
  end
17
17
 
18
- if @build_gem == TRUE or @build_gem == 'true' or @build_gem == 'TRUE'
18
+ if @build_ips
19
+ desc "Update remote ips repository on #{@ips_host}"
20
+ task :update_ips_repo do
21
+ rsync_to('pkg/ips/pkgs', @ips_host, @ips_store)
22
+ remote_ssh_cmd(@ips_host, "pkgrecv -s #{@ips_store}/pkgs/#{@name}@#{@ipsversion}.p5p -d #{@ips_repo} \\*")
23
+ remote_ssh_cmd(@ips_host, "pkgrepo refresh -s #{@ips_repo}")
24
+ remote_ssh_cmd(@ips_host, "/usr/sbin/svcadm restart svc:/application/pkg/server")
25
+ end
26
+ end
27
+
28
+ if @build_gem
19
29
  desc "Ship built gem to rubygems"
20
30
  task :ship_gem do
21
31
  ship_gem("pkg/#{@name}-#{@gemversion}.gem")
@@ -15,6 +15,13 @@ def sign_deb_changes(file)
15
15
  %x{debsign --re-sign -k#{@gpg_key} #{file}}
16
16
  end
17
17
 
18
+ # requires atleast a self signed prvate key and certificate pair
19
+ def sign_ips(pkg)
20
+ %x{pkgsign -s pkg/ips/repo/ -k #{@privatekey_pem} -c #{@certificate_pem} #{@name}@#{@ipsversion}}
21
+ %x{rm -f #{pkg}}
22
+ %x{pkgrecv -s pkg/ips/repo -a -d #{pkg} #{@name}@#{@ipsversion}}
23
+ end
24
+
18
25
  namespace :pl do
19
26
  desc "Sign the tarball, defaults to PL key, pass GPG_KEY to override or edit build_defaults"
20
27
  task :sign_tar do
@@ -35,6 +42,15 @@ namespace :pl do
35
42
  sign_modern modern_rpms
36
43
  end
37
44
 
45
+ if @build_ips
46
+ desc "Sign ips package, Defaults to PL Key, pass KEY to override"
47
+ task :sign_ips do
48
+ ips_pkgs = Dir["pkg/ips/pkgs/*.p5p"].join(' ')
49
+ puts "Signing ips packages..."
50
+ sign_ips ips_pkgs
51
+ end
52
+ end
53
+
38
54
  desc "Check if all rpms are signed"
39
55
  task :check_rpm_sigs do
40
56
  signed = TRUE
@@ -0,0 +1,8 @@
1
+ namespace 'pl' do
2
+ desc "Tag this repository, requires a TAG, e.g. TAG=1.1.1"
3
+ task "tag" do
4
+ check_var('TAG', ENV['TAG'])
5
+ git_tag(ENV['TAG'])
6
+ end
7
+ end
8
+
@@ -0,0 +1,20 @@
1
+ namespace :package do
2
+ desc "Update the version in #{@version_file} to current and commit."
3
+ task :versionbump do
4
+ old_version = get_version_file_version
5
+ contents = IO.read(@version_file)
6
+ new_version = '"' + @version.to_s.strip + '"'
7
+ if contents.match("VERSION = #{old_version}")
8
+ contents.gsub!("VERSION = #{old_version}", "VERSION = #{new_version}")
9
+ elsif contents.match("#{@name.upcase}VERSION = #{old_version}")
10
+ contents.gsub!("#{@name.upcase}VERSION = #{old_version}", "#{@name.upcase}VERSION = #{new_version}")
11
+ else
12
+ contents.gsub!(old_version, @version)
13
+ end
14
+ file = File.open(@version_file, 'w')
15
+ file.write contents
16
+ file.close
17
+ git_commit_file(@version_file)
18
+ end
19
+ end
20
+
@@ -3,23 +3,23 @@
3
3
  %if 0%{?fedora} >= 17
4
4
  %global facter_libdir %(ruby -rrbconfig -e 'puts RbConfig::CONFIG["vendorlibdir"]')
5
5
  %else
6
- %global facter_libdir %(ruby -rrbconfig -e 'puts Object.const_get(defined?(RbConfig) ? :RbConfig : :Config)::CONFIG["sitelibdir"]')
6
+ %global facter_libdir %(ruby -rrbconfig -e 'puts RbConfig::CONFIG["sitelibdir"]')
7
7
  %endif
8
8
 
9
9
  # VERSION is subbed out during rake srpm process
10
- # %global realversion <%= @version %>
11
- # %global rpmversion <%= @rpmversion %>
10
+ %global realversion <%= @version %>
11
+ %global rpmversion <%= @rpmversion %>
12
12
 
13
13
  Summary: Ruby module for collecting simple facts about a host operating system
14
14
  Name: facter
15
15
  Version: %{rpmversion}
16
16
  Release: <%= @rpmrelease -%>%{?dist}
17
-
18
- License: Apache 2.0
17
+ Epoch: 1
18
+ License: ASL 2.0
19
19
  Group: System Environment/Base
20
20
  URL: http://www.puppetlabs.com/puppet/related-projects/%{name}
21
+ # Note this URL will only be valid at official tags from Puppet Labs
21
22
  Source0: http://puppetlabs.com/downloads/%{name}/%{name}-%{realversion}.tar.gz
22
- Source1: http://puppetlabs.com/downloads/%{name}/%{name}-%{realversion}.tar.gz.asc
23
23
 
24
24
  BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
25
25
 
@@ -64,11 +64,11 @@ rm -rf %{buildroot}
64
64
  %{facter_libdir}/facter.rb
65
65
  %{facter_libdir}/facter
66
66
  %{_mandir}/man8/facter.8.gz
67
- %doc CHANGELOG INSTALL LICENSE README.md
67
+ %doc LICENSE README.md
68
68
 
69
69
 
70
70
  %changelog
71
- * <%= Time.now.strftime("%a %b %d %Y") %> Puppet Labs Release <info@puppetlabs.com> - <%= @rpmversion %>-<%= @rpmrelease %>
71
+ * <%= Time.now.strftime("%a %b %d %Y") %> Puppet Labs Release <info@puppetlabs.com> - 1:<%= @rpmversion %>-<%= @rpmrelease %>
72
72
  - Build for <%= @version %>
73
73
 
74
74
  * Wed Aug 08 2012 Moses Mendoza <moses@puppetlabs.com> - 1.6.11-2
data/install.rb CHANGED
@@ -47,12 +47,6 @@ rescue LoadError
47
47
  $haverdoc = false
48
48
  end
49
49
 
50
- # Monkey patch RbConfig->Config for Rubies older then 1.8.5.
51
- unless defined? ::RbConfig
52
- require 'rbconfig'
53
- ::RbConfig = ::Config
54
- end
55
-
56
50
  begin
57
51
  if $haverdoc
58
52
  rst2man = %x{which rst2man.py}
@@ -77,15 +71,13 @@ def glob(list)
77
71
  g = list.map { |i| Dir.glob(i) }
78
72
  g.flatten!
79
73
  g.compact!
80
- g.reject! { |e| e =~ /\.svn/ }
81
74
  g
82
75
  end
83
76
 
84
77
  # Set these values to what you want installed.
85
- sbins = glob(%w{sbin/*})
86
78
  bins = glob(%w{bin/*})
87
- rdoc = glob(%w{bin/* sbin/* lib/**/*.rb README README-library CHANGELOG TODO Install}).reject { |e| e=~ /\.(bat|cmd)$/ }
88
- ri = glob(%w(bin/*.rb sbin/* lib/**/*.rb)).reject { |e| e=~ /\.(bat|cmd)$/ }
79
+ rdoc = glob(%w{bin/* lib/**/*.rb README README-library TODO }).reject { |e| e=~ /\.(bat|cmd)$/ }
80
+ ri = glob(%w(bin/*.rb lib/**/*.rb)).reject { |e| e=~ /\.(bat|cmd)$/ }
89
81
  man = glob(%w{man/man8/*})
90
82
  libs = glob(%w{lib/**/*.rb lib/**/*.py})
91
83
  tests = glob(%w{tests/**/*.rb})
@@ -190,8 +182,8 @@ def prepare_installation
190
182
  opts.on('--bindir[=OPTIONAL]', 'Installation directory for binaries', 'overrides RbConfig::CONFIG["bindir"]') do |bindir|
191
183
  InstallOptions.bindir = bindir
192
184
  end
193
- opts.on('--sbindir[=OPTIONAL]', 'Installation directory for system binaries', 'overrides RbConfig::CONFIG["sbindir"]') do |sbindir|
194
- InstallOptions.sbindir = sbindir
185
+ opts.on('--ruby[=OPTIONAL]', 'Ruby interpreter to use with installation', 'overrides ruby used to call install.rb') do |ruby|
186
+ InstallOptions.ruby = ruby
195
187
  end
196
188
  opts.on('--sitelibdir[=OPTIONAL]', 'Installation directory for libraries', 'overrides RbConfig::CONFIG["sitelibdir"]') do |sitelibdir|
197
189
  InstallOptions.sitelibdir = sitelibdir
@@ -221,14 +213,12 @@ def prepare_installation
221
213
  version = [RbConfig::CONFIG["MAJOR"], RbConfig::CONFIG["MINOR"]].join(".")
222
214
  libdir = File.join(RbConfig::CONFIG["libdir"], "ruby", version)
223
215
 
224
- # Mac OS X 10.5 and higher declare bindir and sbindir as
216
+ # Mac OS X 10.5 and higher declare bindir
225
217
  # /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin
226
- # /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/sbin
227
218
  # which is not generally where people expect executables to be installed
228
219
  # These settings are appropriate defaults for all OS X versions.
229
220
  if RUBY_PLATFORM =~ /^universal-darwin[\d\.]+$/
230
221
  RbConfig::CONFIG['bindir'] = "/usr/bin"
231
- RbConfig::CONFIG['sbindir'] = "/usr/sbin"
232
222
  end
233
223
 
234
224
  if not InstallOptions.bindir.nil?
@@ -237,12 +227,6 @@ def prepare_installation
237
227
  bindir = RbConfig::CONFIG['bindir']
238
228
  end
239
229
 
240
- if not InstallOptions.sbindir.nil?
241
- sbindir = InstallOptions.sbindir
242
- else
243
- sbindir = RbConfig::CONFIG['sbindir']
244
- end
245
-
246
230
  if not InstallOptions.sitelibdir.nil?
247
231
  sitelibdir = InstallOptions.sitelibdir
248
232
  else
@@ -267,30 +251,25 @@ def prepare_installation
267
251
  if (destdir = ENV['DESTDIR'])
268
252
  warn "DESTDIR is deprecated. Use --destdir instead."
269
253
  bindir = join(destdir, bindir)
270
- sbindir = join(destdir, sbindir)
271
254
  mandir = join(destdir, mandir)
272
255
  sitelibdir = join(destdir, sitelibdir)
273
256
 
274
257
  FileUtils.makedirs(bindir)
275
- FileUtils.makedirs(sbindir)
276
258
  FileUtils.makedirs(mandir)
277
259
  FileUtils.makedirs(sitelibdir)
278
260
  # This is the new way forward
279
261
  elsif (destdir = InstallOptions.destdir)
280
262
  bindir = join(destdir, bindir)
281
- sbindir = join(destdir, sbindir)
282
263
  mandir = join(destdir, mandir)
283
264
  sitelibdir = join(destdir, sitelibdir)
284
265
 
285
266
  FileUtils.makedirs(bindir)
286
- FileUtils.makedirs(sbindir)
287
267
  FileUtils.makedirs(mandir)
288
268
  FileUtils.makedirs(sitelibdir)
289
269
  end
290
270
 
291
271
  InstallOptions.site_dir = sitelibdir
292
272
  InstallOptions.bin_dir = bindir
293
- InstallOptions.sbin_dir = sbindir
294
273
  InstallOptions.lib_dir = libdir
295
274
  InstallOptions.man_dir = mandir
296
275
  end
@@ -382,17 +361,18 @@ end
382
361
  def install_binfile(from, op_file, target)
383
362
  tmp_file = Tempfile.new('facter-binfile')
384
363
 
385
- ruby = File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'])
364
+ if not InstallOptions.ruby.nil?
365
+ ruby = InstallOptions.ruby
366
+ else
367
+ ruby = File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'])
368
+ end
386
369
 
387
370
  File.open(from) do |ip|
388
371
  File.open(tmp_file.path, "w") do |op|
389
- ruby = File.join(RbConfig::CONFIG['bindir'], RbConfig::CONFIG['ruby_install_name'])
390
372
  op.puts "#!#{ruby}"
391
373
  contents = ip.readlines
392
- if contents[0] =~ /^#!/
393
- contents.shift
394
- end
395
- op.write contents.join()
374
+ contents.shift if contents[0] =~ /^#!/
375
+ op.write contents.join
396
376
  end
397
377
  end
398
378
 
@@ -436,7 +416,6 @@ run_tests(tests) if InstallOptions.tests
436
416
  #build_rdoc(rdoc) if InstallOptions.rdoc
437
417
  #build_ri(ri) if InstallOptions.ri
438
418
  #build_man(bins) if InstallOptions.man
439
- do_bins(sbins, InstallOptions.sbin_dir)
440
419
  do_bins(bins, InstallOptions.bin_dir)
441
420
  do_libs(libs)
442
421
  do_man(man)