build_inf.sh: build debian image only
[pti/rtp.git] / scripts / build_inf.sh
index 4f43daf..82926aa 100755 (executable)
@@ -82,8 +82,11 @@ run_cmd () {
 
 DRYRUN=""
 YP_ARGS="-s"
+YOCTO_ONLY="No"
+CENTOS_ONLY="No"
+DEBIAN_ONLY="Yes"
 
-while getopts "w:b:e:r:unh" OPTION; do
+while getopts "w:ycdnh" OPTION; do
     case ${OPTION} in
         w)
             WORKSPACE=`readlink -f ${OPTARG}`
@@ -92,6 +95,15 @@ while getopts "w:b:e:r:unh" OPTION; do
             DRYRUN="-n"
             YP_ARGS=""
             ;;
+        y)
+            YOCTO_ONLY="Yes"
+            ;;
+        c)
+            CENTOS_ONLY="Yes"
+            ;;
+        d)
+            DEBIAN_ONLY="Yes"
+            ;;
         h)
             help_info
             exit
@@ -109,19 +121,23 @@ fi
 #########################################################################
 WORKSPACE_YP=${WORKSPACE}/workspace_yocto
 WORKSPACE_CENTOS=${WORKSPACE}/workspace_centos
+WORKSPACE_DEB=${WORKSPACE}/workspace_debian
 SCRIPT_YP=${SCRIPTS_DIR}/build_inf_yocto/build_inf_yocto.sh
 SCRIPT_CENTOS=${SCRIPTS_DIR}/build_inf_centos/build_inf_centos.sh
 SCRIPT_CENTOS_PRE=${SCRIPTS_DIR}/build_inf_centos/build_inf_prepare_jenkins.sh
+SCRIPT_DEB=${SCRIPTS_DIR}/build_inf_debian/build_inf_debian.sh
+SCRIPT_DEB_PRE=${SCRIPTS_DIR}/build_inf_debian/build_inf_prepare_jenkins.sh
 
 prepare_workspace () {
     msg_step="Create workspace for the multi-os builds"
     echo_step_start
 
-    mkdir -p ${WORKSPACE_YP} ${WORKSPACE_CENTOS}
+    mkdir -p ${WORKSPACE_YP} ${WORKSPACE_CENTOS} ${WORKSPACE_DEB}
 
     echo_info "The following directories are created in your workspace(${WORKSPACE}):"
     echo_info "For Yocto buid: ${WORKSPACE_YP}"
     echo_info "For CentOS buid: ${WORKSPACE_CENTOS}"
+    echo_info "For Debian buid: ${WORKSPACE_DEB}"
 
     echo_step_end
 }
@@ -150,6 +166,50 @@ get_debug_info () {
     echo_step_end
 }
 
+build_yocto () {
+    msg_step="Yocto builds"
+    echo_step_start
+
+    RUN_CMD="${SCRIPT_YP} -w ${WORKSPACE_YP} ${DRYRUN} ${YP_ARGS}"
+    run_cmd "Start Yocto builds"
+
+    echo_step_end
+}
+
+build_centos () {
+    # dry-run is not supported yet for CentOS build
+    if [ -z "${DRYRUN}" ]; then
+        msg_step="CentOS builds"
+        echo_step_start
+
+        if [ "$CI" = "true" ]; then
+            RUN_CMD="${SCRIPT_CENTOS_PRE} -w ${WORKSPACE_CENTOS}"
+            run_cmd "Prepare for CentOS builds"
+        fi
+        RUN_CMD="${SCRIPT_CENTOS} -w ${WORKSPACE_CENTOS} -m ${DRYRUN}"
+        run_cmd "Start CentOS builds"
+
+        echo_step_end
+    fi
+}
+
+build_debian () {
+    if [ -z "${DRYRUN}" ]; then
+        msg_step="Debian builds"
+        echo_step_start
+
+        if [ "$CI" = "true" ]; then
+            RUN_CMD="${SCRIPT_DEB_PRE} -w ${WORKSPACE_DEB}"
+            run_cmd "Prepare for Debian builds"
+        fi
+
+        RUN_CMD="${SCRIPT_DEB} -w ${WORKSPACE_DEB} -m ${DRYRUN}"
+        run_cmd "Start Debian builds"
+
+        echo_step_end
+    fi
+}
+
 
 #########################################################################
 # Main process
@@ -160,25 +220,14 @@ if [ "$CI" = "true" ]; then
     get_debug_info
 fi
 
-# dry-run is not supported yet for CentOS build
-if [ -z "${DRYRUN}" ]; then
-    msg_step="CentOS builds"
-    echo_step_start
-
-    if [ "$CI" = "true" ]; then
-        RUN_CMD="${SCRIPT_CENTOS_PRE} -w ${WORKSPACE_CENTOS}"
-        run_cmd "Prepare for CentOS builds"
-    fi
-    RUN_CMD="${SCRIPT_CENTOS} -w ${WORKSPACE_CENTOS} ${DRYRUN}"
-    run_cmd "Start CentOS builds"
-
-    echo_step_end
+if [ "${YOCTO_ONLY}" == "Yes" ]; then
+    build_yocto
+elif [ "${CENTOS_ONLY}" == "Yes" ]; then
+    build_centos
+elif [ "${DEBIAN_ONLY}" == "Yes" ]; then
+    build_debian
+else
+    build_centos
+    build_yocto
+    build_debian
 fi
-
-msg_step="CentOS builds"
-echo_step_start
-
-RUN_CMD="${SCRIPT_YP} -w ${WORKSPACE_YP} ${DRYRUN} ${YP_ARGS}"
-run_cmd "Start Yocto builds"
-
-echo_step_end