[php-doctrine-annotations] Add get source script

Shawn Iwinski siwinski at fedoraproject.org
Sun Dec 28 06:30:28 UTC 2014


commit 6258e65d63e92abcc2dcfc894dc8184cd3c59521
Author: Shawn Iwinski <shawn.iwinski at gmail.com>
Date:   Sun Dec 28 01:30:15 2014 -0500

    Add get source script

 php-doctrine-annotations-get-source.sh |   62 ++++++++++++++++++++++++++++++++
 1 files changed, 62 insertions(+), 0 deletions(-)
---
diff --git a/php-doctrine-annotations-get-source.sh b/php-doctrine-annotations-get-source.sh
new file mode 100755
index 0000000..e283587
--- /dev/null
+++ b/php-doctrine-annotations-get-source.sh
@@ -0,0 +1,62 @@
+#/bin/sh
+
+GIT=`which git`
+RPM=`which rpm`
+
+if [ -z "$GIT" ]
+then
+    echo "ERROR: 'git' command not found" 1>&2
+    exit 1
+elif [ -z "$RPM" ]
+then
+    echo "ERROR: 'rpm' command not found" 1>&2
+    exit 1
+fi
+
+function print {
+    echo -e "\e[0;33m>>>>> ${1}\e[0m"
+}
+
+SPEC=`ls *.spec`
+NAME=`echo $SPEC | sed 's#\.spec##'`
+VERSION=`egrep '%global\s*github_version' $SPEC | awk '{print $3}'`
+
+print "SPEC = $SPEC"
+print "NAME = $NAME"
+
+GIT_OWNER=`egrep '%global\s*github_owner' $SPEC | awk '{print $3}'`
+GIT_NAME=`egrep '%global\s*github_name' $SPEC | awk '{print $3}'`
+GIT_COMMIT=`egrep '%global\s*github_commit' $SPEC | awk '{print $3}'`
+GIT_REPO=https://github.com/${GIT_OWNER}/${GIT_NAME}
+GIT_DIR=`echo $GIT_REPO | sed 's#.*/##'`
+
+print "GIT_OWNER = $GIT_OWNER"
+print "GIT_NAME = $GIT_NAME"
+print "GIT_COMMIT = $GIT_COMMIT"
+print "GIT_REPO = $GIT_REPO"
+print "GIT_DIR = $GIT_DIR"
+
+TEMP_DIR=$(mktemp --dir)
+
+pushd $TEMP_DIR
+    print "Cloning git repo..."
+    $GIT clone $GIT_REPO
+
+    pushd $GIT_DIR
+        print "Checking out commit..."
+        $GIT checkout $GIT_COMMIT
+    popd
+
+    TAR_DIR=${GIT_NAME}-${GIT_COMMIT}
+    print "TAR_DIR = $TAR_DIR"
+
+    mv $GIT_DIR $TAR_DIR
+
+    TAR_FILE=`$RPM --eval='%{_sourcedir}'`/${NAME}-${VERSION}-${GIT_COMMIT}.tar.gz
+    print "TAR_FILE = $TAR_FILE"
+
+    [ -e $TAR_FILE ] && rm -f $TAR_FILE
+    tar --exclude-vcs -czf $TAR_FILE $TAR_DIR
+popd
+
+rm -rf $TEMP_DIR


More information about the scm-commits mailing list