Files
edx-platform/rakefile
2012-03-26 10:17:18 -04:00

52 lines
1.6 KiB
Plaintext

require 'rake/clean'
require 'tempfile'
REPO_ROOT = File.dirname(__FILE__)
BUILD_DIR = File.join(REPO_ROOT, "build")
CLOBBER.include('build')
CLEAN.include("#{BUILD_DIR}/*.deb")
task :package do
commit = (ENV["GIT_COMMIT"] || `git rev-parse HEAD`).chomp()
branch = (ENV["GIT_BRANCH"] || `git symbolic-ref -q HEAD`).chomp()
branch = branch.gsub('refs/heads/', '').gsub('origin/', '').gsub('/', '_')
build_number = (ENV["BUILD_NUMBER"] || "dev").chomp()
if branch == "master"
package_name = "mitx"
else
package_name = "mitx-#{branch}"
end
FileUtils.mkdir_p(BUILD_DIR)
Dir.chdir(BUILD_DIR) do
args = ["fakeroot", "fpm", "-s", "dir", "-t", "deb",
"--exclude=build",
"--exclude=rakefile",
"--exclude=.git",
"--exclude=**/*.pyc",
"--prefix=/opt/wwc/mitx-#{commit}",
"--depends=python-mysqldb",
"--depends=python-django",
"--depends=python-pip",
"--depends=python-flup",
"--depends=python-numpy",
"--depends=python-scipy",
"--depends=python-matplotlib",
"--depends=python-libxml2",
"--depends=python2.7-dev",
"--depends=libxml2-dev",
"--depends=libxslt-dev",
"--depends=python-markdown",
"--depends=python-pygments",
"--depends=mysql-client",
"--name=#{package_name}-#{commit}",
"--version=0.1",
"--iteration=#{build_number}",
"-a", "all",
"#{REPO_ROOT}"]
system(*args) || raise("fpm failed to build the .deb")
end
end