#!/bin/bash prjname=archfi version=$(date +"%Y.%m.%d.%H.%M.%S") branch=$(git rev-parse --abbrev-ref HEAD) ssh -T git@github.com if [ ! "$?" = "1" ]; then echo "No Github ssh key loaded exiting..." exit 1 fi scp matmoul@web.sourceforge.net:/home/frs/project/$prjname/README.txt /dev/null if [ ! "$?" = "0" ]; then echo "No Sourceforge ssh key loaded exiting..." exit 1 fi clear read -p "Current branch is $branch. Continue ? (y/N)" choice case "$choice" in n|N|'' ) echo "cancel build !" exit 1 ;; y|Y ) echo "Begin Build Release...";; * ) echo "cancel build !" exit 1 ;; esac echo "Building version $version..." echo "" echo "Finalise archfi script..." sed -i /apptitle=/c\apptitle=\""Arch Linux Fast Install (archfi) - Version: $version (GPLv3)"\" archfi sed -i /baseurl=/c\baseurl=https://raw.githubusercontent.com/MatMoul/archfi/master archfi echo "Finalise CHANGELOG..." nano CHANGELOG sed -i '/Current\ Version\ :/{n;d}' CHANGELOG sed -i '/Current\ Version\ :/a-------------------------------' CHANGELOG sed -i "/Current\ Version\ :/c\Version\ :\ $version\ :" CHANGELOG sed -i '1s/^/\n/' CHANGELOG sed -i '1s/^/-----------------\n/' CHANGELOG sed -i '1s/^/Current Version :\n/' CHANGELOG echo "Make last commit..." git commit -a -m "New Release : $version" if [ ! "$branch" = "master" ]; then echo "Merge branch $branch to master..." git checkout master git merge $branch read -p "Delete branch $branch ? (y/N)" choice case "$choice" in y|Y ) git branch -D $branch ;; esac fi read -p "Publish to server ? (Y/n)" choice case "$choice" in n|N ) exit 1 ;; esac echo "Create index.html..." fle=$(cat archfi) git checkout gh-pages echo "$fle" > index.html chmod 640 index.html git commit -a -m "New Release : $version" echo "Push index.html..." git push git checkout master echo "Push release..." git push #Sourceforge : targetpath=.build/$version mkdir -p $targetpath cp -R * $targetpath echo "Finalise archfi script..." sed -i "/baseurl=/c\baseurl=http://downloads.sourceforge.net/project/archfi/release/$version" $targetpath/archfi echo "Publish release..." scp -r $targetpath matmoul@web.sourceforge.net:/home/frs/project/$prjname/release/ echo "Update redirect page..." pubfile=.build/index.php echo " $pubfile echo "header(\"Location: http://downloads.sourceforge.net/project/$prjname/release/$version/$prjname\");" >> $pubfile echo "exit;" >> $pubfile echo "?>" >> $pubfile scp $pubfile matmoul@web.sourceforge.net:/home/project-web/$prjname/htdocs/$prjname/index.php rm -R .build if [ ! "$branch" = "master" ]; then git checkout $branch fi