From b5652552df8c981453e8285aa4d6b5521102b913 Mon Sep 17 00:00:00 2001 From: Calen Pennington Date: Fri, 23 Mar 2012 14:29:56 -0400 Subject: [PATCH] Switching to rake for build management --- ci/build.sh | 58 ----------------------------------------------------- rakefile | 50 +++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+), 58 deletions(-) delete mode 100755 ci/build.sh create mode 100644 rakefile diff --git a/ci/build.sh b/ci/build.sh deleted file mode 100755 index a147574bd7..0000000000 --- a/ci/build.sh +++ /dev/null @@ -1,58 +0,0 @@ -#! /bin/bash - -set -x -set -e - -#sass sass:static/css -r templates/sass/bourbon/lib/bourbon.rb --style :compressed - -if [ -z "${GIT_COMMIT}" ]; then - GIT_COMMIT=$(git rev-parse HEAD) -fi - -if [ -z "${GIT_BRANCH}" ]; then - GIT_BRANCH=$(git symbolic-ref -q HEAD) - GIT_BRANCH=${GIT_BRANCH##refs/heads/} - GIT_BRANCH=${GIT_BRANCH:-HEAD} -fi -GIT_BRANCH=${GIT_BRANCH##origin/} -GIT_BRANCH=${GIT_BRANCH//\//_} - -if [ -z "${BUILD_NUMBER}" ]; then - BUILD_NUMBER=dev -fi - -REPO_ROOT=$(dirname $(pwd)/$(dirname $0)) -BUILD_DIR=${REPO_ROOT}/build - -if [ "${GIT_BRANCH}" == "master" ]; then - NAME=mitx -else - NAME=mitx-${GIT_BRANCH} -fi - -mkdir -p ${BUILD_DIR} -cd ${BUILD_DIR} -fpm -s dir -t deb \ - --exclude=build \ - --exclude=ci \ - --exclude=.git \ - --prefix=/opt/wwc/mitx \ - --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 ${NAME} \ - --version 0.1 \ - --iteration ${BUILD_NUMBER}-${GIT_COMMIT} \ - -a all \ - ${REPO_ROOT} diff --git a/rakefile b/rakefile new file mode 100644 index 0000000000..255082b4e7 --- /dev/null +++ b/rakefile @@ -0,0 +1,50 @@ +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["BRANCH_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", + "--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