Last active
August 29, 2015 14:12
-
-
Save zshipko/56a09c842810cdfec3e2 to your computer and use it in GitHub Desktop.
build organizer
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env bash | |
proj=${proj-`basename $(pwd)`} | |
MAKE=${MAKE-make} | |
builddir=${builddir-builder} | |
# this will be something like OpenBSD-amd64 or Darwin-x86_64 | |
platform=`uname -ms | sed 's/ /-/'` | |
command=$1 | |
shift | |
case $command in | |
build) | |
echo Building $PROJ | |
$MAKE builder || echo "Unable to build" | |
if [ -d builder ]; then | |
echo Built $proj | |
else | |
echo "Check the 'builder' entry in your makefile" | |
exit 1 | |
fi | |
date > builder/DATE | |
cat builder/DATE README.md | markdown > builder/index.html | |
echo "<a href="$proj-$platform.tar.gz">Download - $proj-$platform.tar.gz</a>" >> builder/index.html | |
echo "cp bin/* \${dest-/usr/local}/bin && cp lib/* \${dest-/usr/local}/lib && cp -R ./include/ \${dest-/usr/local}/include" > builder/install.sh | |
mv builder "$proj-$platform" | |
tar zcf "$proj-$platform.tar.gz" "$proj-$platform" | |
cp $proj-$platform.tar.gz "$proj-$platform" | |
;; | |
upload) | |
if [ -d "$proj-$platform" ]; then | |
echo Uploading "$proj-$platform" | |
else | |
echo "Either the build failed or you haven't built the project yet" | |
exit 1 | |
fi | |
mv "$proj-$platform" $platform | |
scp -r $platform $server:$builddir/$proj || echo "Error: $proj not uploaded" | |
ssh $server "echo \"<div><a href=\"$proj/$platform\">`date` $proj/$platform</a></div>\" >> $builddir/index.html" | |
rm -r $platform | |
;; | |
clean) | |
rm -rf builder $platform | |
;; | |
init-remote) | |
ssh $server mkdir -p $builddir/$proj | |
;; | |
*) | |
;; | |
esac |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment