111 lines
2.5 KiB
Bash
Executable file
111 lines
2.5 KiB
Bash
Executable file
#!/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/release/2018.09.04.01.26.38/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=https://raw.githubusercontent.com/c\baseurl=https://raw.githubusercontent.com/MatMoul/archfi/master archfi
|
|
|
|
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 pull
|
|
git merge $branch
|
|
|
|
read -p "Delete branch $branch ? (y/N)" choice
|
|
case "$choice" in
|
|
y|Y )
|
|
git branch -D $branch
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
read -p "Push release ? (Y/n)" choice
|
|
case "$choice" in
|
|
n|N ) exit 1;;
|
|
esac
|
|
|
|
git checkout master
|
|
echo "Push release..."
|
|
git push
|
|
|
|
|
|
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
|
|
git pull
|
|
echo "$fle" > index.html
|
|
chmod 640 index.html
|
|
git commit -a -m "New Release : $version"
|
|
echo "Push index.html..."
|
|
git push
|
|
|
|
git checkout master
|
|
#Sourceforge :
|
|
|
|
targetpath=.build/$version
|
|
mkdir -p $targetpath
|
|
cp -R * $targetpath
|
|
|
|
echo "Finalise archfi script..."
|
|
sed -i "/baseurl=https:\/\/raw.githubusercontent.com\/MatMoul\/archfi/c\baseurl=http://downloads.sourceforge.net/project/archfi/release/$version" $targetpath/archfi
|
|
|
|
echo "Publish release..."
|
|
rsync -r $targetpath matmoul@web.sourceforge.net:/home/frs/project/$prjname/release/
|
|
|
|
echo "Update redirect page..."
|
|
pubfile=.build/index.php
|
|
echo "<?php" > $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
|
|
git merge master
|
|
git push
|
|
fi
|