summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlamont-granquist <lamont@scriptkiddie.org>2013-09-30 14:54:41 -0700
committerlamont-granquist <lamont@scriptkiddie.org>2013-09-30 14:54:41 -0700
commit56a5ae1f9b7f7d5854c6532566995d1c8a276e6e (patch)
tree8731cc121f88f7e94761781dbe05ade9e7498edd
parent37be5bcf623c60bbdbedcbeab246924f82c6adb7 (diff)
parent27cee0f443af3bdcd537bb528664401e1894d9a0 (diff)
downloadchef-56a5ae1f9b7f7d5854c6532566995d1c8a276e6e.tar.gz
Merge pull request #1001 from opscode/lcg/mingw-gemspec
use separate gemspec for mingw
-rw-r--r--Gemfile21
-rw-r--r--Rakefile26
-rw-r--r--chef-x86-mingw32.gemspec20
3 files changed, 42 insertions, 25 deletions
diff --git a/Gemfile b/Gemfile
index 21f7744ba6..1fe4580c0b 100644
--- a/Gemfile
+++ b/Gemfile
@@ -1,6 +1,5 @@
source "https://rubygems.org"
-
-gemspec
+gemspec :name => "chef"
gem "activesupport", "< 4.0.0", :group => :compat_testing, :platform => "ruby"
@@ -18,24 +17,6 @@ group(:development, :test) do
# gem 'pry'
end
-platforms :mswin, :mingw do
- gem "systemu", "2.2.0" # CHEF-3718
- gem "ffi", "1.3.1"
- gem "rdp-ruby-wmi", "0.3.1"
- gem "windows-api", "0.4.2"
- gem "windows-pr", "1.2.2"
- gem "win32-api", "1.4.8"
- gem "win32-dir", "0.4.1"
- gem "win32-event", "0.6.0"
- gem "win32-mutex", "0.4.0"
- gem "win32-process", "0.7.3"
- gem "win32-service", "0.7.2"
-end
-
-platforms :mingw_18 do
- gem "win32-open3", "0.3.2"
-end
-
# If you want to load debugging tools into the bundle exec sandbox,
# add these additional dependencies into chef/Gemfile.local
eval(IO.read(__FILE__ + '.local'), binding) if File.exists?(__FILE__ + '.local')
diff --git a/Rakefile b/Rakefile
index 085887fab5..eb48b8e389 100644
--- a/Rakefile
+++ b/Rakefile
@@ -26,13 +26,12 @@ require './tasks/rspec.rb'
GEM_NAME = "chef"
-spec = eval(File.read("chef.gemspec"))
-
# This has to be here or else the docs get generated *after* the gem is created
task :gem => 'docs:all'
-Gem::PackageTask.new(spec) do |pkg|
- pkg.gem_spec = spec
+Dir[File.expand_path("../*gemspec", __FILE__)].reverse.each do |gemspec_path|
+ gemspec = eval(IO.read(gemspec_path))
+ Gem::PackageTask.new(gemspec).define
end
begin
@@ -60,6 +59,15 @@ task :uninstall do
sh %{gem uninstall #{GEM_NAME} -x -v #{Chef::VERSION} }
end
+desc "Build it, tag it and ship it"
+task :ship => :gem do
+ sh("git tag #{Chef::VERSION}")
+ sh("git push opscode --tags")
+ Dir[File.expand_path("../pkg/*.gem", __FILE__)].reverse.each do |built_gem|
+ sh("gem push #{built_gem}")
+ end
+end
+
RONN_OPTS = "--manual='Chef Manual' --organization='Chef #{Chef::VERSION}' --date='#{Time.new.strftime('%Y-%m-%d')}'"
namespace :docs do
@@ -85,7 +93,15 @@ namespace :docs do
end
end
- if system('which ronn > /dev/null')
+ # we can have ronn in the path, but not in the bundle, require both
+ ronn_in_bundle = true
+ begin
+ require 'ronn'
+ rescue LoadError
+ ronn_in_bundle = false
+ end
+
+ if ronn_in_bundle && system('which ronn > /dev/null')
['distro/common/markdown/man1/*.mkd', 'distro/common/markdown/man8/*.mkd'].each do |dir|
Dir[dir].each do |mkd|
basename = File.basename(mkd, '.mkd')
diff --git a/chef-x86-mingw32.gemspec b/chef-x86-mingw32.gemspec
new file mode 100644
index 0000000000..8e59f8257f
--- /dev/null
+++ b/chef-x86-mingw32.gemspec
@@ -0,0 +1,20 @@
+# x86-mingw32 Gemspec #
+gemspec = eval(IO.read(File.expand_path("../chef.gemspec", __FILE__)))
+
+gemspec.platform = "x86-mingw32"
+
+gemspec.add_dependency "mixlib-shellout", "1.2.0"
+gemspec.add_dependency "systemu", "2.5.2" # CHEF-3718
+gemspec.add_dependency "ffi", "1.3.1"
+gemspec.add_dependency "rdp-ruby-wmi", "0.3.1"
+gemspec.add_dependency "windows-api", "0.4.2"
+gemspec.add_dependency "windows-pr", "1.2.2"
+gemspec.add_dependency "win32-api", "1.4.8"
+gemspec.add_dependency "win32-dir", "0.4.5"
+gemspec.add_dependency "win32-event", "0.6.1"
+gemspec.add_dependency "win32-mutex", "0.4.1"
+gemspec.add_dependency "win32-process", "0.7.3"
+gemspec.add_dependency "win32-service", "0.8.2"
+gemspec.add_dependency "win32-mmap", "0.4.0"
+
+gemspec