aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorbaigk <baiguoku@huawei.com>2015-10-27 13:10:25 -0700
committerbaigk <baiguoku@huawei.com>2015-10-27 13:10:25 -0700
commit5a8ee51210424e6d13f37d60982373330f9e3a56 (patch)
treeb465595c3d21b22a2b2ed865cf4e09af911cb942
parentba4bf5c48ec04ae70ef97443f8adb23f3e86b290 (diff)
support optional isos and ppas in the compass iso file
JIRA: COMPASS-120 Change-Id: Icd61b0b7f448e38b5bef8aa7d8166e5e968a4f16 Signed-off-by: baigk <baiguoku@huawei.com>
-rwxr-xr-xbuild.sh42
-rw-r--r--build/build.conf33
2 files changed, 48 insertions, 27 deletions
diff --git a/build.sh b/build.sh
index 7151317a..cffceecf 100755
--- a/build.sh
+++ b/build.sh
@@ -29,7 +29,7 @@ function prepare_env()
function download_git()
{
- file_dir=$CACHE_DIR/${1%.*}
+ file_dir=$CACHE_DIR/${1%.*}
if [[ -d $file_dir/.git ]]; then
cd $file_dir
git pull origin master
@@ -57,22 +57,30 @@ function download_url()
function download_local()
{
- cp $2 $CACHE_DIR/ -rf
+ if [[ $2 != $CACHE_DIR/$1 ]]; then
+ cp $2 $CACHE_DIR/ -rf
+ fi
}
function download_packages()
{
for i in $CENTOS_BASE $COMPASS_CORE $COMPASS_WEB $COMPASS_INSTALL $TRUSTY_JUNO_PPA $UBUNTU_ISO \
$CENTOS_ISO $CENTOS7_JUNO_PPA $LOADERS $CIRROS $APP_PACKAGE $COMPASS_PKG $PIP_REPO $ANSIBLE_MODULE; do
+
+ if [[ ! $i ]]; then
+ continue
+ fi
name=`basename $i`
+
if [[ ${name##*.} == git ]]; then
download_git $name $i
- elif [[ "https?" =~ ${i%%:*} ]]; then
+ elif [[ "https?" =~ ${i%%:*} || "file://" =~ ${i%%:*} ]]; then
download_url $name $i
else
download_local $name $i
fi
done
+
}
function copy_file()
@@ -87,25 +95,39 @@ function copy_file()
rm -rf $new/.rr_moved
- cp $CACHE_DIR/`basename $UBUNTU_ISO` $new/repos/cobbler/ubuntu/iso/ -rf
- cp $CACHE_DIR/`basename $TRUSTY_JUNO_PPA` $new/repos/cobbler/ubuntu/ppa/ -rf
- cp $CACHE_DIR/`basename $CENTOS_ISO` $new/repos/cobbler/centos/iso/ -rf
- cp $CACHE_DIR/`basename $CENTOS7_JUNO_PPA` $new/repos/cobbler/centos/ppa/ -rf
+ if [[ $UBUNTU_ISO ]]; then
+ cp $CACHE_DIR/`basename $UBUNTU_ISO` $new/repos/cobbler/ubuntu/iso/ -rf
+ fi
+
+ if [[ $TRUSTY_JUNO_PPA ]]; then
+ cp $CACHE_DIR/`basename $TRUSTY_JUNO_PPA` $new/repos/cobbler/ubuntu/ppa/ -rf
+ fi
+
+ if [[ $CENTOS_ISO ]]; then
+ cp $CACHE_DIR/`basename $CENTOS_ISO` $new/repos/cobbler/centos/iso/ -rf
+ fi
+
+ if [[ $CENTOS7_JUNO_PPA ]]; then
+ cp $CACHE_DIR/`basename $CENTOS7_JUNO_PPA` $new/repos/cobbler/centos/ppa/ -rf
+ fi
cp $CACHE_DIR/`basename $LOADERS` $new/ -rf || exit 1
- cp $CACHE_DIR/`basename $CIRROS` $new/guestimg/ -rf || exit 1
cp $CACHE_DIR/`basename $APP_PACKAGE` $new/app_packages/ -rf || exit 1
cp $CACHE_DIR/`basename $ANSIBLE_MODULE | sed 's/.git//g'` $new/ansible/ -rf || exit 1
+ if [[ $CIRROS ]]; then
+ cp $CACHE_DIR/`basename $CIRROS` $new/guestimg/ -rf || exit 1
+ fi
+
for i in $COMPASS_CORE $COMPASS_INSTALL $COMPASS_WEB; do
cp $CACHE_DIR/`basename $i | sed 's/.git//g'` $new/compass/ -rf
done
cp $COMPASS_DIR/deploy/adapters $new/compass/compass-adapters -rf
- tar -zxvf $CACHE_DIR/pip.tar.gz -C $new/
+ tar -zxvf $CACHE_DIR/`basename $PIP_REPO` -C $new/
- find $new/compass -name ".git" |xargs rm -rf
+ find $new/compass -name ".git" | xargs rm -rf
}
function rebuild_ppa()
diff --git a/build/build.conf b/build/build.conf
index cf44905f..d57e5f37 100644
--- a/build/build.conf
+++ b/build/build.conf
@@ -1,25 +1,24 @@
TIMEOUT=10
-PACKAGE_URL=${PACKAGE_URL:-http://58.251.166.184:9999}
+export PACKAGE_URL=${PACKAGE_URL:-http://58.251.166.184:9999}
#begin: package download
-PACKAGE_MD5=${PACKAGE_MD5:-$PACKAGE_URL/md5.txt}
-CENTOS_BASE=${CENTOS_BASE:-$PACKAGE_URL/centos_base.iso}
-COMPASS_CORE=${COMPASS_CORE:-http://github.com/baigk/compass-core.git}
-COMPASS_WEB=${COMPASS_WEB:-http://github.com/baigk/compass-web.git}
-COMPASS_INSTALL=${COMPASS_INSTALL:-http://github.com/baigk/compass-install.git}
-TRUSTY_JUNO_PPA=${TRUSTY_JUNO_PPA:-$PACKAGE_URL/trusty-juno-ppa.tar.gz}
-UBUNTU_ISO=${UBUNTU_ISO:-$PACKAGE_URL/ubuntu-14.04.3-server-amd64.iso}
-CENTOS_ISO=${CENTOS_ISO:-$PACKAGE_URL/CentOS-7-x86_64-Minimal-1503-01.iso}
-CENTOS7_JUNO_PPA=${CENTOS7_JUNO_PPA:-$PACKAGE_URL/centos7-juno-ppa.tar.gz}
-COMPASS_PKG=${COMPASS_PKG:-$PACKAGE_URL/centos6-package.tar.gz}
-LOADERS=${LOADERS:-$PACKAGE_URL/loaders.tar.gz}
-CIRROS=${CIRROS:-$PACKAGE_URL/cirros-0.3.3-x86_64-disk.img}
-APP_PACKAGE=${APP_PACKAGE:-$PACKAGE_URL/packages.tar.gz}
-PIP_REPO=${PIP_REPO:-$PACKAGE_URL/pip.tar.gz}
-ANSIBLE_MODULE=${ANSIBLE_MODULE:-https://github.com/openstack-ansible/openstack-ansible-modules.git}
+export CENTOS_BASE=${CENTOS_BASE:-$PACKAGE_URL/centos_base.iso}
+export COMPASS_CORE=${COMPASS_CORE:-http://github.com/baigk/compass-core.git}
+export COMPASS_WEB=${COMPASS_WEB:-http://github.com/baigk/compass-web.git}
+export COMPASS_INSTALL=${COMPASS_INSTALL:-http://github.com/baigk/compass-install.git}
+export TRUSTY_JUNO_PPA=${TRUSTY_JUNO_PPA:-$PACKAGE_URL/trusty-juno-ppa.tar.gz}
+export UBUNTU_ISO=${UBUNTU_ISO:-$PACKAGE_URL/ubuntu-14.04.3-server-amd64.iso}
+export CENTOS_ISO=${CENTOS_ISO:-$PACKAGE_URL/CentOS-7-x86_64-Minimal-1503-01.iso}
+export CENTOS7_JUNO_PPA=${CENTOS7_JUNO_PPA:-$PACKAGE_URL/centos7-juno-ppa.tar.gz}
+export COMPASS_PKG=${COMPASS_PKG:-$PACKAGE_URL/centos6-package.tar.gz}
+export LOADERS=${LOADERS:-$PACKAGE_URL/loaders.tar.gz}
+export CIRROS=${CIRROS:-$PACKAGE_URL/cirros-0.3.3-x86_64-disk.img}
+export APP_PACKAGE=${APP_PACKAGE:-$PACKAGE_URL/packages.tar.gz}
+export PIP_REPO=${PIP_REPO:-$PACKAGE_URL/pip.tar.gz}
+export ANSIBLE_MODULE=${ANSIBLE_MODULE:-https://github.com/openstack-ansible/openstack-ansible-modules.git}
#end
-PIP_CONF="https://bootstrap.pypa.io/ez_setup.py \
+export PIP_CONF="https://bootstrap.pypa.io/ez_setup.py \
https://pypi.python.org/packages/source/s/setuptools/setuptools-18.2.zip \
https://pypi.python.org/packages/source/p/pip/pip-7.1.2.tar.gz \
https://pypi.python.org/packages/source/a/ansible/ansible-1.9.2.tar.gz \