]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
buildpackages: get ceph submodules
authorLoic Dachary <ldachary@redhat.com>
Mon, 12 Oct 2015 16:46:38 +0000 (18:46 +0200)
committerLoic Dachary <ldachary@redhat.com>
Tue, 13 Oct 2015 08:56:39 +0000 (10:56 +0200)
Prior to v0.80.9, autogen.sh did not get submodules. Copy/paste the
submodule initialization from newer autogen.sh in common.sh so that
v0.80.8 and below can be rebuilt from sources. It does not hurt to
update the submodules twice.

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

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

index 6c523188c6e4c1a68f8828b3959ebd7f3904deb1..036b22d53348612bd0fdc1ca06d070bfa2bf0cb0 100644 (file)
@@ -19,6 +19,14 @@ function install_deps() {
     bash -x install-deps.sh
 }
 
+function git_submodules() {
+    # see http://tracker.ceph.com/issues/13426
+    perl -pi -e 's|git://ceph.com/git/ceph-object-corpus.git|https://github.com/ceph/ceph-object-corpus.git|' .gitmodules
+    local force=$(if git submodule usage 2>&1 | grep --quiet 'update.*--force'; then echo --force ; fi)
+    git submodule sync || return 1
+    git submodule update $force --init --recursive || return 1
+}
+
 function get_ceph() {
     local git_ceph_url=$1
     local sha1=$2
@@ -26,6 +34,12 @@ function get_ceph() {
     test -d ceph || git clone ${git_ceph_url}
     cd ceph
     git checkout ${sha1}
-    # see http://tracker.ceph.com/issues/13426
-    perl -pi -e 's|git://ceph.com/git/ceph-object-corpus.git|https://github.com/ceph/ceph-object-corpus.git|' .gitmodules
+}
+
+function init_ceph() {
+    local git_ceph_url=$1
+    local sha1=$2
+    get_ceph $git_ceph_url $sha1 || return 1
+    git_submodules || return 1
+    install_deps || return 1
 }
index 92926c64a75f7837831db574f0bfae3b792dd996..124957f021230f21b50006eefe1e85368e9eabff 100755 (executable)
@@ -32,8 +32,7 @@ sudo apt-get install -y git
 
 source $(dirname $0)/common.sh
 
-get_ceph $git_ceph_url $sha1
-install_deps
+init_ceph $git_ceph_url $sha1
 
 #codename=$(lsb_release -sc)
 releasedir=$base/$(lsb_release -si)/WORKDIR
index e3c8f35bbc0f10816443cdb19d6dc6c5523efeed..7cb0c4de1c82292c0702ffa6550a7e67ac3dcd41 100755 (executable)
@@ -32,8 +32,7 @@ sudo yum install -y git
 
 source $(dirname $0)/common.sh
 
-get_ceph $git_ceph_url $sha1
-install_deps
+init_ceph $git_ceph_url $sha1
 
 #id=$(lsb_release -s -i | tr A-Z a-z)
 #major=$(lsb_release -s -r | sed -s "s;\..*;;g")