aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSilvio Rhatto <rhatto@riseup.net>2015-09-17 14:55:03 -0300
committerSilvio Rhatto <rhatto@riseup.net>2015-09-17 14:55:03 -0300
commit7419c99cab3bd9a9f8a69fe1da5897897444e705 (patch)
tree04e47ad22d33d736c642187a3cbd154c55dd05f7
parent46443babffaf1512e554ff1342d582658973fa04 (diff)
downloadapps-7419c99cab3bd9a9f8a69fe1da5897897444e705.tar.gz
apps-7419c99cab3bd9a9f8a69fe1da5897897444e705.tar.bz2
Inception: deploy to remote hostname
-rw-r--r--README.md4
m---------hydra0
-rwxr-xr-xinception33
m---------vbox0
4 files changed, 36 insertions, 1 deletions
diff --git a/README.md b/README.md
index 19f015a..44c1954 100644
--- a/README.md
+++ b/README.md
@@ -29,4 +29,8 @@ Then, after manually checking repository versions:
$HOME/apps/inception load
+Once installed locally, you can deploy remotelly using rsync+ssh:
+
+ inception deploy <hostname>
+
You should have a nice workspace now :)
diff --git a/hydra b/hydra
-Subproject ace671aaab66e86568db07a6852ec3aac5a22cd
+Subproject 955a3ab2b8e6c7555528fe09588e44c45b14959
diff --git a/inception b/inception
index 4191b6d..a6797d4 100755
--- a/inception
+++ b/inception
@@ -8,7 +8,9 @@ BASENAME="`basename $0`"
DIRNAME="$(cd `dirname $0` &> /dev/null && pwd)"
# Main
-if [ -z "$1" ] || [ "$1" == "init" ]; then
+if [ -z "$1" ]; then
+ echo "usage: $BASENAME <action> [options]"
+elif [ "$1" == "init" ]; then
(
cd $DIRNAME
@@ -46,4 +48,33 @@ elif [ "$1" == "load" ]; then
)
echo "Done. Logout and login again to apply all changes."
+elif [ "$1" == "install" ]; then
+ # We could just do that, but we shall make sure that code was verified
+ #$0 init
+ #$0 load
+ echo "Please README!"
+elif [ "$1" == "deploy" ]; then
+ if [ ! -z "$2" ]; then
+ REMOTE="$2"
+ MODULES="`$DIRNAME/metadot/metadot list`"
+
+ # Sync apps
+ if [ -e "$HOME/apps" ]; then
+ rsync -avz --delete $HOME/apps/ $REMOTE:$HOME/apps/
+ fi
+
+ # Sync dotfiles
+ if [ -e "$HOME/.dotfiles" ]; then
+ rsync -avz --delete $HOME/.dotfiles/ $REMOTE:$HOME/.dotfiles/
+ fi
+
+ # Sync loaded modules
+ ssh $REMOTE <<EOF
+ ##### BEGIN REMOTE SCRIPT #####
+ for module in $MODULES; do
+ $HOME/apps/metadot/metadot load $module
+ done
+ ##### END REMOTE SCRIPT #######
+EOF
+ fi
fi
diff --git a/vbox b/vbox
-Subproject d2cf751558216cad14a068d7ed40577ecc9ce63
+Subproject 76e629a7545b021cb47a63f17ee61c2ed9aec38