Merge pull request #245 from marcov/build_all-improve

Build all improvements
This commit is contained in:
Jose Carlos Venegas Munoz 2018-11-20 09:59:38 -06:00 committed by GitHub
commit 1ad6ef33f1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -18,7 +18,6 @@ source "${script_dir}/scripts/obs-pkgs.sh"
PUSH=${PUSH:-""}
LOCAL=${LOCAL:-""}
PUSH_TO_OBS=""
export BUILD_DISTROS=${BUILD_DISTROS:-xUbuntu_16.04}
# Packaging use this variable instead of use git user value
@ -29,21 +28,54 @@ export AUTHOR_EMAIL="${AUTHOR_EMAIL:-user@example.com}"
usage() {
msg="${1:-}"
exit_code=$"${2:-0}"
if [ -n "${msg}" ]; then
local logPrefix=""
[ ${exit_code} != "0" ] && logPrefix="ERROR: "
echo -e "${logPrefix}${msg}\n"
fi
cat <<EOT
${msg}
Usage:
${script_name} <kata-branch>
${script_name} [-h | --help] <kata-branch> [PROJ1 PROJ2 ... ]
Generate OBS packages sources for the kata projects, based on branch
kata-branch.
${script_name} processes all the kata projects by default; alternatively you can
specify a subset of the projects as additional arguments.
Environment variables:
PUSH When set, push the packages sources to the openSUSE build
service.
LOCAL When set, build the packages locally.
EOT
exit "${exit_code}"
}
main() {
local branch="${1:-}"
[ -n "${branch}" ] || usage "missing branch" "1"
case "${1:-}" in
"-h"|"--help")
usage "" "0"
;;
-*)
usage "Invalid option: ${1:-}" "1"
;;
"")
usage "missing branch" "1"
;;
*)
branch="${1:-}"
;;
esac
pushd "${script_dir}"
for p in "${OBS_PKGS_PROJECTS[@]}"; do
pushd "$p" >>/dev/null
shift
local projectsList=("$@")
[ "${#projectsList[@]}" = "0" ] && projectsList=("${OBS_PKGS_PROJECTS[@]}")
pushd "${script_dir}" >>/dev/null
for p in "${projectsList[@]}"; do
[ -d "$p" ] || usage "$p is not a valid project directory" "1"
update_cmd="./update.sh"
if [ -n "${PUSH}" ]; then
# push to obs
@ -53,11 +85,13 @@ main() {
update_cmd+=" -l"
fi
echo "update ${p}"
echo "======= Updating ${p} ======="
pushd "$p" >>/dev/null
bash -c "${update_cmd} ${branch}"
popd >>/dev/null
echo ""
done
popd
popd >> /dev/null
}
main $@