]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
buildpackages: implement notcmalloc flavor
authorLoic Dachary <ldachary@redhat.com>
Tue, 13 Oct 2015 11:43:24 +0000 (13:43 +0200)
committerLoic Dachary <ldachary@redhat.com>
Tue, 13 Oct 2015 12:58:49 +0000 (14:58 +0200)
http://tracker.ceph.com/issues/13454 Fixes: #13454

Signed-off-by: Loic Dachary <loic@dachary.org>
(cherry picked from commit baa8ea327e136197072faffedbe23087c9db2cdb)

tasks/buildpackages.py
tasks/buildpackages/Makefile
tasks/buildpackages/common.sh
tasks/buildpackages/make-deb.sh
tasks/buildpackages/make-rpm.sh

index 196171fb8193d885cd128345023c409276e3067c..4d900db8738fb06dedbf292b8eba60d6489c8d1c 100644 (file)
@@ -196,6 +196,7 @@ def task(ctx, config):
                    " CEPH_SHA1=" + sha1 +
                    " CEPH_TAG=" + (tag or '') +
                    " CEPH_BRANCH=" + (branch or '') +
+                   " CEPH_FLAVOR=" + gitbuilder.flavor +
                    " GITBUILDER_URL=" + url +
                    " BUILD_FLAVOR=" + build_flavor +
                    " HTTP_FLAVOR=" + http_flavor +
index e120fbd65ea51695aab181135f815efda0222427..3e93c1774272205ddd5b7f3328782b3d841d2c1e 100644 (file)
@@ -21,7 +21,7 @@ packages-repository:
        perl -pi -e "s/^gitbuilder_host:.*/gitbuilder_host: $$ip/" ~/.teuthology.yaml
        mkdir -p ${D}/${@D} ; touch ${D}/$@
 
-ceph-${CEPH_PKG_TYPE}-${CEPH_DIST}-${CEPH_ARCH}-basic-${CEPH_SHA1}: packages-repository
+ceph-${CEPH_PKG_TYPE}-${CEPH_DIST}-${CEPH_ARCH}-${CEPH_FLAVOR}-${CEPH_SHA1}: packages-repository
        openstack server create --image 'teuthology-${CEPH_OS_TYPE}-${CEPH_OS_VERSION}' --flavor ${BUILD_FLAVOR} --key-name teuthology --security-group teuthology --property ownedby=${MY_IP} --user-data ${CEPH_OS_TYPE}-${CEPH_OS_VERSION}-user-data.txt --wait $@ ; sleep 30
        set -ex ; \
        trap "openstack server delete $@" EXIT ; \
@@ -29,7 +29,7 @@ ceph-${CEPH_PKG_TYPE}-${CEPH_DIST}-${CEPH_ARCH}-basic-${CEPH_SHA1}: packages-rep
        for delay in 1 2 4 8 8 8 8 8 8 8 8 8 16 16 16 16 16 32 32 32 64 128 256 512 ; do if ssh -o 'ConnectTimeout=3' $$ip bash -c '"grep -q READYTORUN /var/log/cloud-init*.log"' ; then break ; else sleep $$delay ; fi ; done ; \
        scp make-${CEPH_PKG_TYPE}.sh common.sh ubuntu@$$ip: ; \
        packages_repository=$(call get_ip,${<F}) ; \
-       ssh -tt -A ubuntu@$$ip bash ./make-${CEPH_PKG_TYPE}.sh $$packages_repository ${CEPH_DIST} ${CEPH_GIT_URL} ${CEPH_SHA1}
+       ssh -tt -A ubuntu@$$ip bash ./make-${CEPH_PKG_TYPE}.sh $$packages_repository ${CEPH_DIST} ${CEPH_GIT_URL} ${CEPH_SHA1} ${CEPH_FLAVOR}
        mkdir -p ${D}/${@D} ; touch ${D}/$@
 
 clobber:
index 036b22d53348612bd0fdc1ca06d070bfa2bf0cb0..f98ffe38e76816d4d51756c6576c5ba430c6ed5f 100644 (file)
@@ -43,3 +43,11 @@ function init_ceph() {
     git_submodules || return 1
     install_deps || return 1
 }
+
+function flavor2configure() {
+    local flavor=$1
+
+    if test $flavor = notcmalloc ; then
+        echo --without-tcmalloc --without-cryptopp
+    fi
+}
index 124957f021230f21b50006eefe1e85368e9eabff..9887cfb0fce715e5602b51105fb852e9779287da 100755 (executable)
@@ -26,6 +26,7 @@ gitbuilder_host=$1
 codename=$2
 git_ceph_url=$3
 sha1=$4
+flavor=$5
 
 sudo apt-get update
 sudo apt-get install -y git
@@ -67,7 +68,8 @@ function build_package() {
     # options (otherwise parts of the source tree will be left out).
     #
     ./autogen.sh
-    ./configure --with-rocksdb --with-ocf \
+    ./configure $(flavor2configure $flavor) \
+        --with-rocksdb --with-ocf \
         --with-nss --with-debug --enable-cephfs-java \
         --with-lttng --with-babeltrace
     #
@@ -121,7 +123,7 @@ function build_repo() {
     # as
     #
     arch=x86_64
-    base=ceph-deb-$codename-$arch-basic
+    base=ceph-deb-$codename-$arch-$flavor
     sha1_dir=$codename/$base/sha1/$sha1
     mkdir -p $sha1_dir/conf
     cat > $sha1_dir/conf/distributions <<EOF
index 7cb0c4de1c82292c0702ffa6550a7e67ac3dcd41..4abb16a21c44830e145072aec8eec5fd94968552 100755 (executable)
@@ -27,6 +27,7 @@ gitbuilder_host=$1
 codename=$2
 git_ceph_url=$3
 sha1=$4
+flavor=$5
 
 sudo yum install -y git
 
@@ -54,7 +55,7 @@ ceph_dir=$(pwd)
 # as
 #
 arch=x86_64
-base=ceph-rpm-$codename-$arch-basic
+base=ceph-rpm-$codename-$arch-$flavor
 
 function setup_rpmmacros() {
     if ! grep -q find_debuginfo_dwz_opts $HOME/.rpmmacros ; then
@@ -81,7 +82,7 @@ function build_package() {
     #
     sudo yum install -y bzip2
     ./autogen.sh
-    ./configure --with-debug --with-radosgw --with-fuse --with-libatomic-ops --with-gtk2 --with-nss
+    ./configure $(flavor2configure $flavor) --with-debug --with-radosgw --with-fuse --with-libatomic-ops --with-gtk2 --with-nss
     #
     # use distdir= to set the name of the top level directory of the
     # tarbal to match the desired version