Created
April 8, 2010 20:05
-
-
Save ArnaudD/360467 to your computer and use it in GitHub Desktop.
Script pour initialiser un projet symfony sous subversion à l'UAPV
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
#!/bin/bash | |
# | |
# Script pour initialiser un projet symfony sous subversion à l'UAPV | |
# | |
# Utilisation : | |
# wget http://gist.github.com/raw/360467/uapvSfProject.sh -q -O - > /tmp/uapvSfProject.sh | |
# bash /tmp/uapvSfProject.sh [nom_projet] | |
# | |
mkdir $1 | |
cd $1 | |
read -er -p "Auteur (Nom Prénom <em@il>) : " AUTHOR | |
read -er -p "Nom d'utilisateur du dépôt svn : " SVN_USERNAME | |
PROJECT_SVN="svn://depotware.univ-avignon.fr/$1" | |
SYMFONY_SVN='http://svn.symfony-project.com/branches/1.4' | |
# confirm [message] [default_value] | |
function confirm { | |
CONFIRM='' | |
local invite="$1" | |
local reponse | |
read -p "$invite" reponse | |
case "$reponse" in | |
[oO1] ) CONFIRM='o';; | |
[nN0] ) CONFIRM='n';; | |
* ) CONFIRM="$2";; | |
esac | |
} | |
# Initialisation du dépôt du projet | |
svn checkout --username $SVN_USERNAME $PROJECT_SVN/trunk . | |
# Récupération des sources de symfony | |
svn mkdir lib/vendor --parents | |
svn propset svn:externals "symfony $SYMFONY_SVN" lib/vendor | |
svn commit -m "Importation des sources de symfony" | |
svn update | |
# Génération du squelette du projet | |
PROJECT_NAME=$1 | |
./lib/vendor/symfony/data/bin/symfony generate:project --orm=Propel "$AUTHOR" | |
ln -s lib/vendor/symfony/data/web/sf web/sf | |
svn status | grep ^? | sed "s/? *//" | xargs svn add | |
svn mkdir lib/model/om lib/model/map data/sql --parents | |
svn propset svn:ignore "*" log | |
svn propset svn:ignore "*" cache | |
svn propset svn:ignore "*" web/uploads | |
svn propset svn:ignore "*schema-transformed.xml | |
database.yml" config | |
svn propset svn:ignore "lib.model.schema.sql | |
plugins.*.sql | |
sqldb.map" data/sql | |
svn propset svn:ignore "*" lib/model/om | |
svn propset svn:ignore "*" lib/model/map | |
# Installation de plugins prédéfinis | |
confirm "Souhaitez vous installer le plugin d'authentification (O/n)" o | |
if [ $CONFIRM = 'o' ]; then | |
echo "Installation de uapvAuthPlugin" | |
echo "uapvAuthPlugin svn://depotware.univ-avignon.fr/symfony_plugins/trunk/uapvAuthPlugin" >> svnexternals.tmp | |
#./symfony plugin:install | |
fi | |
confirm "Souhaitez vous installer le plugin d'accès à Appig (o/N)" n | |
if [ $CONFIRM = 'o' ]; then | |
echo "Installation de uapvAppigPlugin" | |
echo "uapvAppigPlugin svn://depotware.univ-avignon.fr/symfony_plugins/trunk/uapvAppigPlugin" >> svnexternals.tmp | |
fi | |
touch svnexternals.tmp | |
svn propset svn:externals -F svnexternals.tmp plugins/ | |
rm svnexternals.tmp | |
chown www-data:www-data log cache web/uploads | |
svn commit -m "Création du squelette symfony" | |
svn update |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment