@@ -6,15 +6,17 @@ permalink: /instructions/save/
66
77# Save to Persistent Storage with GoCommands
88
9- ### 0) One-time setup (install + login )
9+ ### 0) One-time setup (install + init )
1010``` bash
1111# Install GoCommands (Linux x86_64)
1212GOCMD_VER=$( curl -L -s https://raw.githubusercontent.com/cyverse/gocommands/main/VERSION.txt) ; \
1313curl -L -s https://github.com/cyverse/gocommands/releases/download/${GOCMD_VER} /gocmd-${GOCMD_VER} -linux-amd64.tar.gz | tar zxvf -
1414
15- # Configure iRODS (accept defaults for Host/Port/Zone; use your CyVerse creds )
15+ # Configure iRODS (accept defaults for Host/Port/Zone; use your CyVerse username )
1616./gocmd init
17- ./gocmd auth login # follow prompts to authenticate with CyVerse
17+
18+ # Quick sanity check: can you list your home?
19+ ./gocmd ls i:/iplant/home/YOUR_USER
1820```
1921
2022** Community folder root (read/write for teams):**
@@ -32,7 +34,7 @@ COMMUNITY="i:/iplant/home/shared/esiil/Innovation_summit/${GROUP_NAME}"
3234PERSONAL=" i:/iplant/home/${USERNAME} "
3335```
3436
35- > ** Note:** GoCommands uses ` i: ` to denote paths on the CyVerse Data Store. Include this prefix for any remote path (for example, ` i:/iplant/home/... ` ). Local filesystem paths should not have the ` i: ` prefix .
37+ > ** Note:** ` i: ` indicates an iRODS remote path. Omit ` i: ` for local filesystem paths.
3638
3739---
3840
@@ -42,7 +44,10 @@ PERSONAL="i:/iplant/home/${USERNAME}"
4244LOCAL_SRC=" outputs/run-YYYYMMDD"
4345REMOTE_DST=" ${COMMUNITY} /outputs/"
4446
45- ./gocmd put --icat --retry 3 -d -k -r " ${LOCAL_SRC} " " ${REMOTE_DST} "
47+ ./gocmd put --progress -K --icat -r " ${LOCAL_SRC} " " ${REMOTE_DST} "
48+
49+ # Optional sync-like upload to skip unchanged files
50+ ./gocmd put --progress -K --icat --diff -r " ${LOCAL_SRC} " " ${REMOTE_DST} "
4651```
4752- ` put ` uploads from local → CyVerse Data Store
4853- ` -r ` is recursive; ` --diff ` (optional) only sends changed files
@@ -52,6 +57,16 @@ Verify upload:
5257./gocmd ls " ${REMOTE_DST} "
5358```
5459
60+ > ** Troubleshooting:**
61+ ``` bash
62+ # If a path "is not found", list upward, then drill down to confirm exact names
63+ ./gocmd ls i:/iplant/home/shared/esiil/Innovation_summit
64+ ./gocmd ls i:/iplant/home/shared/esiil/Innovation_summit/${GROUP_NAME}
65+
66+ # Inspect type and permissions if a collection exists but transfers fail
67+ ./gocmd stat i:/iplant/home/shared/esiil/Innovation_summit/${GROUP_NAME} /< EXACT_NAME>
68+ ```
69+
5570---
5671
5772## B) ** Pull** data ** from the community folder**
@@ -61,7 +76,7 @@ mkdir -p ./data
6176REMOTE_SRC=" ${COMMUNITY} /shared_data/"
6277LOCAL_DST=" ./data/"
6378
64- ./gocmd get --icat --retry 3 -d -k -r " ${REMOTE_SRC} " " ${LOCAL_DST} "
79+ ./gocmd get --progress -K --icat -r " ${REMOTE_SRC} " " ${LOCAL_DST} "
6580```
6681- ` get ` downloads from CyVerse → local machine
6782- Use for pulling common datasets your team prepared
@@ -74,7 +89,7 @@ LOCAL_DST="./data/"
7489REMOTE_SRC=" i:/iplant/home/shared/esiil/Innovation_summit/${GROUP_NAME} /deliverables/"
7590REMOTE_PERSONAL_DST=" i:/iplant/home/${USERNAME} /projects/innovation_summit_2025/deliverables/"
7691
77- ./gocmd cp --icat --retry 3 -d -k -r " ${REMOTE_SRC} " " ${REMOTE_PERSONAL_DST} "
92+ ./gocmd cp --progress -K --icat -r " ${REMOTE_SRC} " " ${REMOTE_PERSONAL_DST} "
7893
7994# Verify contents
8095./gocmd ls " ${REMOTE_PERSONAL_DST} "
0 commit comments