Custom apps and applets are useful for when you have a custom analysis script or pipeline that you plan to run repeatedly.
If you are just getting started with your custom script here is a quick way to submit a custom script to analyze UKB data.
Documentation on how to build an applet can be found here.
For general tips on troubleshooting, see guide.
Issue | Example error message | What to do |
---|---|---|
Could not find input
Could not find index of <file name>
Make sure that your input file is specified in the section in the dxapp.json
file, under inputSpec
Also make sure that you add these lines to the echo
and dx download
sections in the code.sh
Timeout exceeded
job timeout 48.000h has been exceeded
If the analysis/process needs a larger number of cores or requires a longer processing time then there are a couple of options:
At the time of execution, you can extend the timeout policy or specify the instance type (see example for extending the timeout for the REGENIE app):
dx run app-regenie --instance-type mem2_ssd1_x2 --extra-args '{
"timeoutPolicyByExecutable": {
"app-MAIN_REGENIE_APP_ID": {
"*": { "hours": 12 }
},
"app-STEP1_APP_ID": {
"*": {"hours": 200}
},
"app-STEP2_APP_ID": {
"*": {"hours": 200 }}}}'
When building the applet, you can set the timeout policy and instance type in the dxapp.json file when you build the applet:
"timeoutPolicy": {
"main": {
"hours": 72 },
…
"systemRequirements": {"*": {"instanceType": "mem2_ssd1_x2"}}
More about dxapp.json parameters can be found here.