5.6 Advanced User Guide
5.6.1 Submitting Workflow from Command Line
This is how you can submit a workflow from the command line through the pecan web interface. This will use curl to submit all the requireed parameters to the web interface and trigger a run.
# the host where the model should run
# never use remote sites since you will need to pass your username/password and that WILL be stored
hostname=pecan.vm
# the site id where to run the model (NIWOT in this case)
siteid=772
# start date and end date, / need to be replaced with %2F or use - (NOT TESTED)
start=2004-01-01
end=2004-12-31
# if of model you want to run, rest of section parameters depend on the model selected (SIPNET 136)
modelid=5000000002
# PFT selected (we should just use a number here)
# NOTE: the square brackets are needed and will need be escaped with a \ if you call this from command line
pft[]=temperate.coniferous
# initial pool condition (-1 means nothing is selected)
input_poolinitcond=-1
# met data
input_met=99000000006
# variables to collect
variables=NPP,GPP
# ensemble size
runs=10
# use sensitivity analysis
sensitivity=-1,1
# redirect to the edit pecan.xml file
pecan_edit=on
# redirect to edit the model configuration files
model_edit=on
# use browndog
browndog=on
For example the following will run the above workflow. Using -v in curl will show verbose output (needed) and the grep will make sure it only shows the redirect. This will show the actual workflowid:
curl -s -v 'http://localhost:6480/pecan/04-runpecan.php?hostname=pecan.vm&siteid=772&start=2004-01-01&end=2004-12-31&modelid=5000000002&pft\[\]=temperate.coniferous&input_poolinitcond=-1&input_met=99000000006' 2>&1 | grep 'Location:'
< Location: 05-running.php?workflowid=99000000004
In this case you can use the browser to see progress, or use the following to see the status:
curl -s 'http://localhost:6480/pecan/dataset.php?workflowid=99000000004&type=file&name=STATUS'
TRAIT 2017-12-13 08:56:56 2017-12-13 08:56:57 DONE
META 2017-12-13 08:56:57 2017-12-13 08:57:13 DONE
CONFIG 2017-12-13 08:57:13 2017-12-13 08:57:14 DONE
MODEL 2017-12-13 08:57:14 2017-12-13 08:57:15 DONE
OUTPUT 2017-12-13 08:57:15 2017-12-13 08:57:15 DONE
ENSEMBLE 2017-12-13 08:57:15 2017-12-13 08:57:16 DONE
FINISHED 2017-12-13 08:57:16 2017-12-13 08:57:16 DONE
Or to show the output log:
curl -s 'http://localhost:6480/pecan/dataset.php?workflowid=99000000004&type=file&name=workflow.Rout'
R version 3.4.3 (2017-11-30) -- "Kite-Eating Tree"
Copyright (C) 2017 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
....