diff options
author | Silvio Rhatto <rhatto@riseup.net> | 2014-02-28 13:11:16 -0300 |
---|---|---|
committer | Silvio Rhatto <rhatto@riseup.net> | 2014-02-28 13:11:16 -0300 |
commit | 173bd5c76143bf1e298106314f1577a94773ed9d (patch) | |
tree | f5e3c95ede2dab79572f84a483a9a0f7a901bdd5 | |
parent | 022dfee473c804af2f3bf01065a49250d2074db2 (diff) | |
download | hydra-173bd5c76143bf1e298106314f1577a94773ed9d.tar.gz hydra-173bd5c76143bf1e298106314f1577a94773ed9d.tar.bz2 |
Setting/syncing config and doc repositories
-rw-r--r-- | README | 8 | ||||
-rw-r--r-- | lib/hydra/usage | 4 | ||||
-rwxr-xr-x | share/hydra/init | 36 | ||||
-rwxr-xr-x | share/hydra/sync | 4 |
4 files changed, 31 insertions, 21 deletions
@@ -1,5 +1,8 @@ -Hydra Process Command Tool -========================== +Hydra Suite - Cloud Command and Control +======================================= + +The Hydra Suite is a complete set of tools for orchestration and management +of computers. This suite is made of three commands: @@ -14,7 +17,6 @@ Hydra: - Init: create config and doc repositories. - Init: generate puppet repository using "hydractl bootstrap repository" - - Sync: clone hydra configuration repository that should be created by the new init action. - Sync: split between public and private repositories. - Sync: Git clone URL recommendation which support for both git-annex and non-standard port. - Uniform syntax for specifying nodes (either by hostname or fqdn) on deploy and import-key. diff --git a/lib/hydra/usage b/lib/hydra/usage index 32acbb0..bb34eb8 100644 --- a/lib/hydra/usage +++ b/lib/hydra/usage @@ -10,8 +10,12 @@ function hydra_action_usage { echo "Usage: $NAME <command> [arguments]" fi + echo "" echo "Available commands:" ls $ACTIONS | sed -e 's/^/\t/' + + echo "" + echo "Available hydras: "`ls ~/.hydra/ -1 | grep -ve "^config$" | xargs` } # Hydra usage diff --git a/share/hydra/init b/share/hydra/init index ad2f065..dbc2414 100755 --- a/share/hydra/init +++ b/share/hydra/init @@ -47,24 +47,28 @@ if [ ! -z "$REMOTE" ]; then echo "Using $REMOTE as private gitolite address." echo "PRIVATE_REPOS=$REMOTE" >> $PREFERENCES else - # TODO: setup remotes and README content # No remote was given, so we assume this is a shiny new hydra! - mkdir $BASEDIR/{config,doc} - ( - cd $BASEDIR/config - touch README.md - git init - git add . - git commit -m "Initial import" - ) + if [ ! -d "$BASEDIR/config" ]; then + mkdir -p "$BASEDIR/config" + ( + cd $BASEDIR/config + echo "Hydra $HYDRA config repository" > README.md + git init + git add . + git commit -m "Initial import" + ) + fi - ( - cd $BASEDIR/doc - touch README.md - git init - git add . - git commit -m "Initial import" - ) + if [ ! -d "$BASEDIR/doc" ]; then + mkdir -p "$BASEDIR/doc" + ( + cd $BASEDIR/doc + echo "Use this repository for notes about Hydra $HYDRA" > README.md + git init + git add . + git commit -m "Initial import" + ) + fi fi # Sync repositories diff --git a/share/hydra/sync b/share/hydra/sync index b65a95e..56eeede 100755 --- a/share/hydra/sync +++ b/share/hydra/sync @@ -26,7 +26,7 @@ function hydra_sync { continue fi - if [ ! -d "$HYDRA_FOLDER/$repository/.git" ]; then + if [ ! -d "$HYDRA_FOLDER/$repository" ]; then git clone $PRIVATE_REPOS/$repository $HYDRA_FOLDER/$repository fi @@ -44,7 +44,7 @@ function hydra_sync { # Basic parameters. if [ -z "$1" ]; then - REPOSITORIES="bootless dns gitolite/public gitolite/private gitosis/public gitosis/private puppet" + REPOSITORIES="config doc bootless dns gitolite/public gitolite/private gitosis/public gitosis/private puppet" else REPOSITORIES="$*" UPDATE_KEYRINGER="no" |