Arvswitch » History » Version 8
Peter Amstutz, 03/03/2016 07:00 PM
| 1 | 1 | Peter Amstutz | h1. Arvswitch |
|---|---|---|---|
| 2 | |||
| 3 | 8 | Peter Amstutz | h2. Usage |
| 4 | |||
| 5 | <pre> |
||
| 6 | $ arvswitch |
||
| 7 | Switch Arvados environment conf |
||
| 8 | Usage: arvswitch name |
||
| 9 | Available confs: ... |
||
| 10 | |||
| 11 | $ arvsave |
||
| 12 | Save current Arvados environment variables to conf file |
||
| 13 | Usage: arvsave name |
||
| 14 | |||
| 15 | $ arvrm |
||
| 16 | Delete Arvados environment conf |
||
| 17 | Usage: arvrm name |
||
| 18 | |||
| 19 | $ arvboxswitch |
||
| 20 | Switch Arvbox environment conf |
||
| 21 | Usage: arvboxswitch name |
||
| 22 | Your current container is: arvbox |
||
| 23 | Available confs: ... |
||
| 24 | |||
| 25 | $ arvopen |
||
| 26 | Open Arvados uuid in browser |
||
| 27 | Usage: arvopen uuid |
||
| 28 | </pre> |
||
| 29 | |||
| 30 | h2. Code |
||
| 31 | |||
| 32 | 1 | Peter Amstutz | Copy this into your @.bashrc@ or create a new file called something like "arvswitch.sh" and add the line ". arvswitch.sh" to your @.bashrc@ |
| 33 | |||
| 34 | <pre> |
||
| 35 | HISTIGNORE=$HISTIGNORE:'export ARVADOS_API_TOKEN=*' |
||
| 36 | |||
| 37 | arvswitch() { |
||
| 38 | if [[ -n "$1" ]] ; then |
||
| 39 | if [[ -f $HOME/.config/arvados/$1.conf ]] ; then |
||
| 40 | 3 | Peter Amstutz | unset ARVADOS_API_HOST_INSECURE |
| 41 | 1 | Peter Amstutz | for a in $(cat $HOME/.config/arvados/$1.conf) ; do export $a ; done |
| 42 | 7 | Peter Amstutz | echo "Switched to $1" |
| 43 | 1 | Peter Amstutz | else |
| 44 | echo "$1 unknown" |
||
| 45 | fi |
||
| 46 | else |
||
| 47 | echo "Switch Arvados environment conf" |
||
| 48 | echo "Usage: arvswitch name" |
||
| 49 | 7 | Peter Amstutz | echo "Available confs:" $((cd $HOME/.config/arvados && ls --indicator-style=none *.conf) | rev | cut -c6- | rev) |
| 50 | 1 | Peter Amstutz | fi |
| 51 | } |
||
| 52 | |||
| 53 | arvsave() { |
||
| 54 | if [[ -n "$1" ]] ; then |
||
| 55 | 7 | Peter Amstutz | touch $HOME/.config/arvados/$1.conf |
| 56 | chmod 0600 $HOME/.config/arvados/$1.conf |
||
| 57 | 5 | Peter Amstutz | env | grep ARVADOS_ > $HOME/.config/arvados/$1.conf |
| 58 | 1 | Peter Amstutz | else |
| 59 | echo "Save current Arvados environment variables to conf file" |
||
| 60 | echo "Usage: arvsave name" |
||
| 61 | fi |
||
| 62 | } |
||
| 63 | |||
| 64 | arvrm() { |
||
| 65 | if [[ -n "$1" ]] ; then |
||
| 66 | if [[ -f $HOME/.config/arvados/$1.conf ]] ; then |
||
| 67 | rm $HOME/.config/arvados/$1.conf |
||
| 68 | else |
||
| 69 | echo "$1 unknown" |
||
| 70 | fi |
||
| 71 | else |
||
| 72 | echo "Delete Arvados environment conf" |
||
| 73 | echo "Usage: arvrm name" |
||
| 74 | 7 | Peter Amstutz | fi |
| 75 | } |
||
| 76 | |||
| 77 | arvboxswitch() { |
||
| 78 | if [[ -n "$1" ]] ; then |
||
| 79 | if [[ -d $HOME/.arvbox/$1 ]] ; then |
||
| 80 | export ARVBOX_CONTAINER=$1 |
||
| 81 | echo "Arvbox switched to $1" |
||
| 82 | else |
||
| 83 | echo "$1 unknown" |
||
| 84 | fi |
||
| 85 | else |
||
| 86 | if test -z "$ARVBOX_CONTAINER" ; then |
||
| 87 | ARVBOX_CONTAINER=arvbox |
||
| 88 | fi |
||
| 89 | echo "Switch Arvbox environment conf" |
||
| 90 | echo "Usage: arvboxswitch name" |
||
| 91 | echo "Your current container is: $ARVBOX_CONTAINER" |
||
| 92 | echo "Available confs:" $(cd $HOME/.arvbox && ls --indicator-style=none) |
||
| 93 | fi |
||
| 94 | } |
||
| 95 | |||
| 96 | arvopen() { |
||
| 97 | if [[ -n "$1" ]] ; then |
||
| 98 | xdg-open https://curover.se/$1 |
||
| 99 | else |
||
| 100 | echo "Open Arvados uuid in browser" |
||
| 101 | echo "Usage: arvopen uuid" |
||
| 102 | 1 | Peter Amstutz | fi |
| 103 | } |
||
| 104 | </pre> |
||
| 105 | 6 | Ward Vandewege | |
| 106 | h2. Alternatives |
||
| 107 | |||
| 108 | See DJB's "envdir":http://cr.yp.to/daemontools/envdir.html |