#!/usr/bin/ruby require 'FileUtils' puts "" puts "====================================================" puts "Bugdar Release Preparation System $Revision$" puts "====================================================" puts "" puts "What is the human-readable version of Bugdar that you are releasing?" versionhr = gets.chomp versionfs = versionhr.gsub(/\./, "-") puts "" puts "Where should I export Git from?" gitpath = gets.chomp puts "" puts "Preparing the release now..." # create the directory puts "... making release directory" pwd = FileUtils.pwd + "/" dirpath = "bugdar-" + versionfs FileUtils.mkdir(dirpath) FileUtils.cd(pwd + dirpath) # export git puts "... exporting archive from Git" system "cd " + gitpath + "; git archive --format=tar --prefix=upload/ HEAD > /tmp/gitexp.tar; cd - > /dev/null" system "tar xf /tmp/gitexp.tar; rm /tmp/gitexp.tar" # remove temp directories puts "... cleaning source export" FileUtils.rm("upload/.gitignore") FileUtils.rm_rf("upload/docs/") FileUtils.rm_rf("upload/framework/dev/") # move good files up puts "... preparing main files" FileUtils.mv("upload/INSTALLING", ".") FileUtils.mv("upload/UPGRADING", ".") FileUtils.mv("upload/CREDITS", ".") FileUtils.mv("upload/COPYING", ".") # tar and zip the files FileUtils.cd("..") system "zip -rq bugdar-" + versionfs + ".zip " + dirpath puts "... creating ZIP file" system "tar czf bugdar-" + versionfs + ".tgz " + dirpath puts "... creating TAR file" # cleanup FileUtils.rm_rf(dirpath) puts "Finished!"