mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-11-26 16:20:28 +00:00
86b80a23a5
Shellcheck suggests use of doube quotes to prevent word splitting, hence adding the same. Signed-off-by: Yug <yuggupta27@gmail.com>
94 lines
1.8 KiB
Bash
Executable File
94 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -e -o pipefail
|
|
|
|
# In case no value is specified, default values will be used.
|
|
gitrepo="https://github.com/ceph/ceph-csi"
|
|
workdir="tip/"
|
|
ref="master"
|
|
base="master"
|
|
history="no"
|
|
|
|
ARGUMENT_LIST=(
|
|
"ref"
|
|
"workdir"
|
|
"gitrepo"
|
|
"base"
|
|
)
|
|
|
|
opts=$(getopt \
|
|
--longoptions "$(printf "%s:," "${ARGUMENT_LIST[@]}")history,help" \
|
|
--name "$(basename "${0}")" \
|
|
--options "" \
|
|
-- "$@"
|
|
)
|
|
ret=$?
|
|
|
|
if [ ${ret} -ne 0 ]
|
|
then
|
|
echo "Try '--help' for more information."
|
|
exit 1
|
|
fi
|
|
|
|
eval set -- "${opts}"
|
|
|
|
while true; do
|
|
case "${1}" in
|
|
--help)
|
|
shift
|
|
echo "Options:"
|
|
echo "--help|-h specify the flags"
|
|
echo "--ref specify the reference of pr"
|
|
echo "--workdir specify the working directory"
|
|
echo "--gitrepo specify the git repository"
|
|
echo "--base specify the base branch to checkout"
|
|
echo "--history fetch the history of the base branch"
|
|
echo " "
|
|
echo "Sample Usage:"
|
|
echo "./prepare.sh --gitrepo=https://github.com/example --workdir=/opt/build --ref=pull/123/head"
|
|
exit 0
|
|
;;
|
|
--gitrepo)
|
|
shift
|
|
gitrepo=${1}
|
|
;;
|
|
--workdir)
|
|
shift
|
|
workdir=${1}
|
|
;;
|
|
--ref)
|
|
shift
|
|
ref=${1}
|
|
echo "${ref}"
|
|
;;
|
|
--base)
|
|
shift
|
|
base=${1}
|
|
;;
|
|
--history)
|
|
history="yes"
|
|
;;
|
|
--)
|
|
shift
|
|
break
|
|
;;
|
|
esac
|
|
shift
|
|
done
|
|
|
|
set -x
|
|
|
|
dnf -y install git podman make
|
|
|
|
# if --history is passed, don't pass --depth=1
|
|
depth='--depth=1'
|
|
if [[ "${history}" == 'yes' ]]
|
|
then
|
|
depth=''
|
|
fi
|
|
|
|
git clone "${depth}" --branch="${base}" "${gitrepo}" "${workdir}"
|
|
cd "${workdir}"
|
|
git fetch origin "${ref}:tip/${ref}"
|
|
git checkout "tip/${ref}"
|