Blame php-typo3-phar-stream-wrapper-get-source.sh
|
Shawn Iwinski |
1275c1d |
#/bin/sh
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
GIT=`which git`
|
|
Shawn Iwinski |
1275c1d |
RPM=`which rpm`
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
if [ -z "$GIT" ]
|
|
Shawn Iwinski |
1275c1d |
then
|
|
Shawn Iwinski |
1275c1d |
echo "ERROR: 'git' command not found" 1>&2
|
|
Shawn Iwinski |
1275c1d |
exit 1
|
|
Shawn Iwinski |
1275c1d |
elif [ -z "$RPM" ]
|
|
Shawn Iwinski |
1275c1d |
then
|
|
Shawn Iwinski |
1275c1d |
echo "ERROR: 'rpm' command not found" 1>&2
|
|
Shawn Iwinski |
1275c1d |
exit 1
|
|
Shawn Iwinski |
1275c1d |
fi
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
function print {
|
|
Shawn Iwinski |
1275c1d |
echo -e "\e[0;33m>>>>> ${1}\e[0m"
|
|
Shawn Iwinski |
1275c1d |
}
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
if [ -x "$1" ]
|
|
Shawn Iwinski |
1275c1d |
then
|
|
Shawn Iwinski |
1275c1d |
SPEC=$1
|
|
Shawn Iwinski |
1275c1d |
else
|
|
Shawn Iwinski |
1275c1d |
SPEC=`ls *.spec | head -1`
|
|
Shawn Iwinski |
1275c1d |
fi
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
SPEC_DIR=`pwd`
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
print "SPEC_DIR = $SPEC_DIR"
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
NAME=`echo $SPEC | sed 's#\.spec##'`
|
|
Shawn Iwinski |
1275c1d |
VERSION=`egrep '%global\s*github_version' $SPEC | awk '{print $3}'`
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
print "SPEC = $SPEC"
|
|
Shawn Iwinski |
1275c1d |
print "NAME = $NAME"
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
GIT_OWNER=`egrep '%global\s*github_owner' $SPEC | awk '{print $3}'`
|
|
Shawn Iwinski |
1275c1d |
GIT_NAME=`egrep '%global\s*github_name' $SPEC | awk '{print $3}'`
|
|
Shawn Iwinski |
1275c1d |
GIT_COMMIT=`egrep '%global\s*github_commit' $SPEC | awk '{print $3}'`
|
|
Shawn Iwinski |
1275c1d |
GIT_REPO=https://github.com/${GIT_OWNER}/${GIT_NAME}
|
|
Shawn Iwinski |
1275c1d |
GIT_DIR=`echo $GIT_REPO | sed 's#.*/##'`
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
print "GIT_OWNER = $GIT_OWNER"
|
|
Shawn Iwinski |
1275c1d |
print "GIT_NAME = $GIT_NAME"
|
|
Shawn Iwinski |
1275c1d |
print "GIT_COMMIT = $GIT_COMMIT"
|
|
Shawn Iwinski |
1275c1d |
print "GIT_REPO = $GIT_REPO"
|
|
Shawn Iwinski |
1275c1d |
print "GIT_DIR = $GIT_DIR"
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
TEMP_DIR=$(mktemp --dir)
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
pushd $TEMP_DIR
|
|
Shawn Iwinski |
1275c1d |
print "Cloning git repo..."
|
|
Shawn Iwinski |
1275c1d |
$GIT clone $GIT_REPO
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
pushd $GIT_DIR
|
|
Shawn Iwinski |
1275c1d |
print "Checking out commit..."
|
|
Shawn Iwinski |
1275c1d |
$GIT checkout $GIT_COMMIT
|
|
Shawn Iwinski |
1275c1d |
popd
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
TAR_DIR=${GIT_NAME}-${GIT_COMMIT}
|
|
Shawn Iwinski |
1275c1d |
print "TAR_DIR = $TAR_DIR"
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
mv $GIT_DIR $TAR_DIR
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
TAR_FILE=${SPEC_DIR}/${NAME}-${VERSION}-${GIT_COMMIT}.tar.gz
|
|
Shawn Iwinski |
1275c1d |
print "TAR_FILE = $TAR_FILE"
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
[ -e $TAR_FILE ] && rm -f $TAR_FILE
|
|
Shawn Iwinski |
1275c1d |
tar --exclude-vcs -czf $TAR_FILE $TAR_DIR
|
|
Shawn Iwinski |
1275c1d |
chmod 0644 $TAR_FILE
|
|
Shawn Iwinski |
1275c1d |
popd
|
|
Shawn Iwinski |
1275c1d |
|
|
Shawn Iwinski |
1275c1d |
rm -rf $TEMP_DIR
|