|
Pat Riehecky |
4d96e5 |
#!/bin/bash -u
|
|
Pat Riehecky |
4d96e5 |
#
|
|
Pat Riehecky |
4d96e5 |
# Extracts what appears to be the value of %{dist} from the commit message
|
|
Pat Riehecky |
4d96e5 |
#
|
|
Pat Riehecky |
4d96e5 |
# Might want to drop this in ~/bin/ and chmod u+x it
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
#####################################################################
|
|
Pat Riehecky |
4d96e5 |
usage() {
|
|
Pat Riehecky |
4d96e5 |
echo '' >&2
|
|
Pat Riehecky |
4d96e5 |
echo "$0 [-hr]" >&2
|
|
Pat Riehecky |
4d96e5 |
echo '' >&2
|
|
Pat Riehecky |
4d96e5 |
echo ' -h: This help message' >&2
|
|
Pat Riehecky |
4d96e5 |
echo ' -r: Use the Redhat tag rather than centos tag' >&2
|
|
Pat Riehecky |
4d96e5 |
echo '' >&2
|
|
Pat Riehecky |
4d96e5 |
echo ' Attempt to extract what appears to be the value of %{dist}' >&2
|
|
Pat Riehecky |
4d96e5 |
echo ' from the git.centos.org commit message' >&2
|
|
Pat Riehecky |
4d96e5 |
exit 1
|
|
Pat Riehecky |
4d96e5 |
}
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
#####################################################################
|
|
Pat Riehecky |
4d96e5 |
# setup args in the right order for making getopt evaluation
|
|
Pat Riehecky |
4d96e5 |
# nice and easy. You'll need to read the manpages for more info
|
|
Pat Riehecky |
4d96e5 |
args=$(getopt -o hr -- "$@")
|
|
Pat Riehecky |
4d96e5 |
if [[ $? -ne 0 ]]; then
|
|
Pat Riehecky |
4d96e5 |
usage
|
|
Pat Riehecky |
4d96e5 |
fi
|
|
Pat Riehecky |
4d96e5 |
eval set -- "$args"
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
RHELTAG=0
|
|
Pat Riehecky |
4d96e5 |
for arg in $@; do
|
|
Pat Riehecky |
4d96e5 |
case $1 in
|
|
Pat Riehecky |
4d96e5 |
-- )
|
|
Pat Riehecky |
4d96e5 |
# end of getopt args, shift off the -- and get out of the loop
|
|
Pat Riehecky |
4d96e5 |
shift
|
|
Pat Riehecky |
4d96e5 |
break 2
|
|
Pat Riehecky |
4d96e5 |
;;
|
|
Pat Riehecky |
4d96e5 |
-r )
|
|
Pat Riehecky |
4d96e5 |
# skip any package with 'centos' in the dist area
|
|
Pat Riehecky |
4d96e5 |
RHELTAG=1
|
|
Pat Riehecky |
4d96e5 |
;;
|
|
Pat Riehecky |
4d96e5 |
-h )
|
|
Pat Riehecky |
4d96e5 |
# get help
|
|
Pat Riehecky |
4d96e5 |
usage
|
|
Pat Riehecky |
4d96e5 |
;;
|
|
Pat Riehecky |
4d96e5 |
esac
|
|
Pat Riehecky |
4d96e5 |
done
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
packagename=$(basename `pwd`)
|
|
Pat Riehecky |
4d96e5 |
metadata=.${packagename}.metadata
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
if [[ ! -e ${metadata} ]] || [[ ! -d .git ]] || [[ ! -d SOURCES ]]; then
|
|
Pat Riehecky |
4d96e5 |
echo 'You need to run this from inside a sources git repo'
|
|
Pat Riehecky |
4d96e5 |
exit 1
|
|
Pat Riehecky |
4d96e5 |
fi
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
msg=$(git log --pretty=format:"%s")
|
|
Pat Riehecky |
4d96e5 |
pkg=$(echo ${msg} | cut -d' ' -f2)
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
if [[ ${RHELTAG} -eq 0 ]]; then
|
|
Mike McLean |
0ec59d |
thispkg=$(echo ${pkg} | head -1)
|
|
Pat Riehecky |
4d96e5 |
elif [[ ${RHELTAG} -eq 1 ]]; then
|
|
Mike McLean |
0ec59d |
thispkg=$(echo ${pkg} grep -v centos | head -1)
|
|
Pat Riehecky |
4d96e5 |
else
|
|
Pat Riehecky |
4d96e5 |
echo 'Something went terribly wrong'
|
|
Pat Riehecky |
4d96e5 |
exit 1
|
|
Pat Riehecky |
4d96e5 |
fi
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
tag=$(echo ${thispkg} | awk -F"-" '{print $NF}' | tr '.' '\012'| grep -e el[[:digit:]])
|
|
Pat Riehecky |
4d96e5 |
|
|
Pat Riehecky |
4d96e5 |
echo ${tag}
|