Skip to content

Commit f5e66a7

Browse files
committed
CORE-1889 Update Tapis v2 to v3 app migration guide
Added example Tapis v3 `curl` commands.
1 parent c77aa74 commit f5e66a7

1 file changed

Lines changed: 83 additions & 0 deletions

File tree

docs/services/api/tapis-v2-v3-migration.md

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -643,3 +643,86 @@ except the env var's `key` and `value` are used in place of `name` and `arg`.
643643
With the help of this guide and the
644644
[Tapis v3 docs](https://tapis.readthedocs.io/en/latest/technical/apps.html),
645645
hopefully the migration will not be too difficult.
646+
647+
# Tapis v3 `curl` Commands
648+
649+
The following shell environment variables, aliases, and curl commands
650+
can be used to publish v3 app JSON (such as the JSON output above).
651+
652+
## Set TAPIS_ACCESS_TOKEN and TAPIS_AUTH_HEADER env vars
653+
654+
Assuming the env vars `CYVERSE_USER` and `CYVERSE_PASSWORD` are set:
655+
656+
export TAPIS_ACCESS_TOKEN=$(curl -H "Content-Type: application/json" -s -d "{\"username\": \"$CYVERSE_USER\", \"password\": \"$CYVERSE_PASSWORD\", \"grant_type\": \"password\" }" https://cyverse.tapis.io/v3/oauth2/tokens | jq -r '.result.access_token')
657+
658+
---
659+
660+
export TAPIS_AUTH_HEADER="X-Tapis-Token: $(echo $TAPIS_ACCESS_TOKEN | jq -r .access_token)"
661+
662+
## Set a curl alias that references the $TAPIS_AUTH_HEADER
663+
664+
alias curl-tapis='curl -H "Content-Type: application/json" -H "$TAPIS_AUTH_HEADER"'
665+
666+
## List Systems
667+
668+
curl-tapis -s "https://cyverse.tapis.io/v3/systems?listType=ALL"
669+
670+
## Apps
671+
672+
### Create an App
673+
674+
curl-tapis -s -d @app-wc.json https://cyverse.tapis.io/v3/apps
675+
676+
### Get App Details
677+
678+
curl-tapis -s "https://cyverse.tapis.io/v3/apps/cyverse-word-count-psarando?select=id,jobAttributes.execSystemId,version,updated,tenant,description,isPublic,owner,enabled"
679+
680+
### Update an App
681+
682+
curl-tapis -s -X PUT -d @app-wc.json "https://cyverse.tapis.io/v3/apps/cyverse-word-count-psarando/0.1"
683+
684+
---
685+
686+
curl-tapis -s -X PATCH -d '{"jobAttributes": {"execSystemId": "cyverse-qacondor1-qa-test3"}}' "https://cyverse.tapis.io/v3/apps/cyverse-hello-world-psarando/0.1"
687+
688+
---
689+
690+
curl-tapis -s -X PATCH -d '{"jobAttributes": {"archiveSystemId": "cyverse-irods-qa"}}' "https://cyverse.tapis.io/v3/apps/cyverse-hello-world-psarando/0.1"
691+
692+
---
693+
694+
curl-tapis -s -X PATCH -d '{"tags": ["test-tag", "testing"]}' "https://cyverse.tapis.io/v3/apps/cyverse-hello-world-psarando/0.1"
695+
696+
### Make App Public
697+
698+
curl-tapis -s -X POST "https://cyverse.tapis.io/v3/apps/share_public/cyverse-hello-world-psarando"
699+
700+
---
701+
702+
curl-tapis -s -X POST "https://cyverse.tapis.io/v3/apps/unshare_public/cyverse-hello-world-psarando"
703+
704+
## Jobs
705+
706+
### List Jobs
707+
708+
curl-tapis -s "https://cyverse.tapis.io/v3/jobs/list?limit=2&orderBy=lastUpdated(desc),name(asc)&computeTotal=true" | jq .
709+
710+
### Submit a Job
711+
712+
curl-tapis -s -d @job.json https://cyverse.tapis.io/v3/jobs/submit | jq .
713+
714+
### Get Job Status
715+
716+
curl-tapis -s "https://cyverse.tapis.io/v3/jobs/5f660fd9-0718-4935-92ad-a67497d45013-007/status" | jq .
717+
718+
### List Job History
719+
720+
curl-tapis -s "https://cyverse.tapis.io/v3/jobs/5f660fd9-0718-4935-92ad-a67497d45013-007/history" | jq .
721+
722+
### List Job Outputs
723+
724+
curl-tapis -s "https://cyverse.tapis.io/v3/jobs/5f660fd9-0718-4935-92ad-a67497d45013-007/output/list/" | jq .
725+
726+
## List Folder Contents
727+
728+
curl-tapis -s "https://cyverse.tapis.io/v3/files/ops/cyverse-irods-qa/home/psarando/analyses/Tapis_QA_Job" | jq .

0 commit comments

Comments
 (0)