diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2015-09-08 15:30:00 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2015-09-08 15:30:00 -0300 |
commit | e0f6b1bc64d737aa03f1383b01c71989443d48a3 (patch) | |
tree | e70bdab8893e9bc6827e318e174a5e7f7ea1fab0 /share/hydractl/install | |
parent | ace671aaab66e86568db07a6852ec3aac5a22cd8 (diff) | |
download | hydra-e0f6b1bc64d737aa03f1383b01c71989443d48a3.tar.gz hydra-e0f6b1bc64d737aa03f1383b01c71989443d48a3.tar.bz2 |
Rename actions 'deploy' to 'install'
Diffstat (limited to 'share/hydractl/install')
-rwxr-xr-x | share/hydractl/install | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/share/hydractl/install b/share/hydractl/install new file mode 100755 index 0000000..1b687db --- /dev/null +++ b/share/hydractl/install @@ -0,0 +1,59 @@ +#!/bin/bash +# +# Install the Hydra Suite on local node. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public +# License along with this program. If not, see +# <http://www.gnu.org/licenses/>. + +# Load +source $APP_BASE/lib/hydra/functions || exit 1 +hydra_config_load + +# Validation +if [ -z "$ORIGIN" ]; then + ORIGIN="git://git.sarava.org/hydra.git" +fi + +# Set sudo config +if [ "`whoami`" != 'root' ]; then + sudo="sudo" +fi + +# Deploy +echo "Deploying to local node..." + +if ! which git &> /dev/null; then + echo "Installing git..." + $sudo aptitude update + $sudo aptitude install git-core -y +fi + +if [ ! -d /usr/local/hydra ]; then + $sudo git clone $ORIGIN /usr/local/hydra + ( cd /usr/local/hydra ; $sudo git reset --hard $COMMIT ) +else + ( cd /usr/local/hydra ; $sudo git pull ; $sudo git reset --hard $COMMIT ) +fi + +# Update symlinks +$sudo ln -sf /usr/local/hydra/hydra /usr/local/bin/hydra +$sudo ln -sf /usr/local/hydra/hydra /usr/local/bin/hydractl +$sudo ln -sf /usr/local/hydra/hydras /usr/local/bin/hydras + +# Remove from old location +# We're keep hydra on /usr/local/bin as /usr/local/sbin might +# not be available on $PATH when connecting to a remote system. +$sudo rm -f /usr/local/sbin/hydra +$sudo rm -f /usr/local/sbin/hydractl +$sudo rm -f /usr/local/sbin/hydras |