X-Git-Url: https://review.fuel-infra.org/gitweb?a=blobdiff_plain;f=ext%2Fpackaging.rake;fp=ext%2Fpackaging.rake;h=3adb34092fa71cb3a58f105627003e92e5001a01;hb=7c9314f502cde8daad23b61d10b24a542e04154a;hp=0000000000000000000000000000000000000000;hpb=d1f1649ba43c5cbc43c4beb2380096ba051d646a;p=packages%2Fprecise%2Fmcollective.git diff --git a/ext/packaging.rake b/ext/packaging.rake new file mode 100644 index 0000000..3adb340 --- /dev/null +++ b/ext/packaging.rake @@ -0,0 +1,36 @@ +build_defs_file = File.join(RAKE_ROOT, 'ext', 'build_defaults.yaml') +if File.exist?(build_defs_file) + begin + require 'yaml' + @build_defaults ||= YAML.load_file(build_defs_file) + rescue Exception => e + STDERR.puts "Unable to load yaml from #{build_defs_file}:" + raise e + end + @packaging_url = @build_defaults['packaging_url'] + @packaging_repo = @build_defaults['packaging_repo'] + raise "Could not find packaging url in #{build_defs_file}" if @packaging_url.nil? + raise "Could not find packaging repo in #{build_defs_file}" if @packaging_repo.nil? + + namespace :package do + desc "Bootstrap packaging automation, e.g. clone into packaging repo" + task :bootstrap do + if File.exist?(File.join(RAKE_ROOT, "ext", @packaging_repo)) + puts "It looks like you already have ext/#{@packaging_repo}. If you don't like it, blow it away with package:implode." + else + cd File.join(RAKE_ROOT, 'ext') do + %x{git clone #{@packaging_url}} + end + end + end + desc "Remove all cloned packaging automation" + task :implode do + rm_rf File.join(RAKE_ROOT, "ext", @packaging_repo) + end + end +end + +begin + load File.join(RAKE_ROOT, 'ext', 'packaging', 'packaging.rake') +rescue LoadError +end