You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Added short option for --cromwell-url
* changed cromshell2 initiation from `cromshell-beta` to `cromshell`, minor edits to README.md
* Added test badges
* removed "Notify" command description for README.md
* rebased cromshell sh script using master branch, moved cromshell sh script to legacy_cromshell folder
* moved completions folder to legacy_cromshell folder
---------
Co-authored-by: bshifaw <[email protected]>
[](https://github.com/broadinstitute/cromshell/actions/workflows/integration_tests.yml/badge.svg)
13
+
[](https://github.com/broadinstitute/cromshell/actions/workflows/unit_tests.yml/badge.svg)
**`daemon-server`* server to run the notification daemon on
94
85
95
86
#### Display a list jobs submitted through cromshell
96
87
*`list [-c] [-u]`
97
-
*`-c`Color the output by completion status
98
-
*`-u`Check completion status of all unfinished jobs
88
+
*`-c` Color the output by completion status.
89
+
*`-u` Check completion status of all unfinished jobs.
99
90
100
91
#### Clean up local cached list
101
92
*[COMING SOON]`cleanup [-s STATUS]`
102
93
* Remove completed jobs from local list.
103
-
Will remove all jobs from the local list that are in a completed state,
94
+
This command removes all jobs from the local list that are in a completed state,
104
95
where a completed state is one of: `Succeeded`, `Failed`, `Aborted`
105
-
**`-s STATUS`*If provided, will only remove jobs with the given `STATUS` from the local list.
96
+
**`-s [STATUS]`* If provided, will only remove jobs with the given `[STATUS]` from the local list.
106
97
107
98
#### Update cromwell server
108
99
*`update-server`
@@ -127,9 +118,9 @@ functions as Cromshell 1 but has been rebuilt in python with many added benefits
127
118
You may omit the job ID of the last job submitted when running commands, or use negative numbers to reference previous jobs, e.g. "-1" will track the last job, "-2" will track the one before that, and so on.
128
119
* You can override the default cromwell server by setting the argument `--cromwell_url` to the appropriate URL.
129
120
* You can override the default cromshell configuration folder by setting the environmental variable `CROMSHELL_CONFIG` to the appropriate directory.
130
-
* Most commands takes multiple workflow-ids, which you *can specify both in relative and absolute ID value* (i.e. `./cromshell status -- -1 -2 -3 c2db2989-2e09-4f2c-8a7f-c3733ae5ba7b`).
131
-
* Assign aliases to workflow ids using the alias command (i.e. `./cromshell alias -- -1 myAliasName`).
132
-
*Once the Alias command is used to attach an alias to a workflow id, the alias name can be used instead of the id (i.e. `./cromshell status myAliasName`).
121
+
* Most commands takes multiple workflow-ids, which you *can specify both in relative and absolute ID value* (i.e. `cromshell status -- -1 -2 -3 c2db2989-2e09-4f2c-8a7f-c3733ae5ba7b`).
122
+
* Assign aliases to workflow ids using the alias command (i.e. `cromshell alias -- -1 myAliasName`).
123
+
Once the Alias command is used to attach an alias to a workflow id, the alias name can be used instead of the id (i.e. `cromshell status myAliasName`).
**`daemon-server`* server to run the notification daemon on
90
+
91
+
#### Display a list jobs submitted through cromshell
92
+
*`list`*`[-c]``[-u]`*
93
+
**`-c`* Color the output by completion status
94
+
**`-u`* Check completion status of all unfinished jobs
95
+
96
+
#### Clean up local cached list
97
+
*`cleanup`*`[-s STATUS]`*
98
+
* Remove completed jobs from local list.
99
+
Will remove all jobs from the local list that are in a completed state,
100
+
where a completed state is one of: `Succeeded`, `Failed`, `Aborted`
101
+
**`-s STATUS`* If provided, will only remove jobs with the given `STATUS` from the local list.
102
+
103
+
#### Update cromwell server
104
+
*`update-server`
105
+
* Change the cromwell server that new jobs will be submitted to.
106
+
107
+
#### Get cost of a workflow
108
+
Costs are only available for workflows that completed more than 8 hours ago on a `GCS` backend.
109
+
Requires the `~/.cromshell/gcp_bq_cost_table.config` configuration file to exist and contain the name of the BigQuery cost table for your organization.
110
+
Also ensure that the default project has been set using `bq init`.
111
+
*`cost [workflow-id] [[workflow-id]...]`
112
+
* Get the cost for a workflow.
113
+
*`cost-detailed [workflow-id] [[workflow-id]...]`
114
+
* Get the cost for a workflow at the task level.
115
+
116
+
117
+
### Features:
118
+
* Running `submit` will create a new folder in the `~/.cromshell/${CROMWELL_URL}/` directory named with the cromwell job id of the newly submitted job.
119
+
It will copy your wdl and json inputs into the folder for reproducibility.
120
+
* It keeps track of your most recently submitted jobs by storing their ids in `./cromshell/`
121
+
You may omit the job ID of the last job submitted when running commands, or use negative numbers to reference previous jobs, e.g. "-1" will track the last job, "-2" will track the one before that, and so on.
122
+
* You can override the default cromwell server by setting the environmental variable `CROMWELL_URL` to the appropriate URL.
123
+
* Most commands takes multiple workflow-ids, which you *can specify both in relative and absolute ID value* (i.e. `./cromwell status -1 -2 -3 c2db2989-2e09-4f2c-8a7f-c3733ae5ba7b`).
124
+
* You can supply additional headers to Cromshell REST calls by setting the environmental variable `CROMSHELL_HEADER`. This is useful if your Cromwell server is fronted by an auth server that authenticates access using bearer tokens before forwarding requests onto the Cromwell API. For example: `CROMSHELL_HEADER="Authorization: Bearer 3e2f34f2e..."`
125
+
126
+
### Code Conventions:
127
+
Please try to follow these conventions when editing cromshell.
128
+
* Use double brackets for tests ( `[[ ... ]]` instead of `[]`)
129
+
* Use `{}` when doing dereferencing variables (`${VALUE}`,`${1}` instead of `$VALUE`,`$1`)
130
+
* Define functions with the `function` keyword (`function doThing()` instead of `doThing()`)
0 commit comments