evogalaxy: customizable install dir

This commit is contained in:
Jérémy Lecour 2016-12-22 11:43:48 +01:00 committed by Jérémy Lecour
parent d0b43f04a6
commit 88df64035f
2 changed files with 12 additions and 8 deletions

2
.gitignore vendored
View file

@ -1,3 +1,3 @@
/test/.vagrant /test/.vagrant
*.retry *.retry
/jessie /roles

View file

@ -21,14 +21,16 @@ main(){
"install") "install")
local role=$2 local role=$2
local install_dir=${3:-roles}
sub_install $role sub_install $role $install_dir
;; ;;
"update") "update")
local role=$2 local role=$2
local install_dir=${3:-roles}
sub_update $role sub_update $role $install_dir
;; ;;
*) *)
@ -57,8 +59,9 @@ sub_list(){
sub_install(){ sub_install(){
local role=$1 local role=$1
local install_dir=$2
test -d jessie/$role \ test -d $install_dir/$role \
&& exit_role_already_installed $role && exit_role_already_installed $role
local clone_dir=$(clone_git_repository) local clone_dir=$(clone_git_repository)
@ -66,20 +69,21 @@ sub_install(){
test -d $clone_dir/$role \ test -d $clone_dir/$role \
|| exit_role_unknown $role || exit_role_unknown $role
mkdir -p jessie \ mkdir -p $install_dir \
&& mv $clone_dir/$role jessie/$role && mv $clone_dir/$role $install_dir/$role
} }
sub_update(){ sub_update(){
local role=$1 local role=$1
local install_dir=$2
test -d jessie/$role \ test -d $install_dir/$role \
|| exit_role_not_installed $role || exit_role_not_installed $role
local clone_dir=$(clone_git_repository) local clone_dir=$(clone_git_repository)
mv jessie/$role $clone_dir/$role-old \ mv jessie/$role $clone_dir/$role-old \
&& mv $clone_dir/$role jessie/$role && mv $clone_dir/$role $install_dir/$role
} }
clone_git_repository() { clone_git_repository() {