Datacube Web Processing Service
- Free software: Apache Software License 2.0
Datacube WPS is based on PYWPS (https://github.com/geopython/pywps) version 4.2.4
Available processes are below:
- FCDrill
- WOfSDrill
To run the WPS on localhost modify pywps.cfg
to point url
and outputurl
to localhost
. workdir
and outputpath
should be left as tmp
and outputs
respectively for a local dev server and base_route
should be /
see example:
url=http://localhost:5000
workdir=tmp
outputurl=http://localhost:5000/outputs/
outputpath=outputs
base_route=/
Once configured a local server can be run by exporting the FLASK_APP
environment variable and running flask:
export FLASK_APP=wps.py
flask run
Assumes only a single instance of datacube-wps will be started. Multiple instances of datacube-wps will require a shared outputs folder between all instances.
- Define the service URL (e.g https://wps.services.dea.ga.gov.au)
- Modify
pywps.cfg
, in the example case:
url=https://wps.services.dea.ga.gov.au
outputurl=https://wps.services.dea.ga.gov.au/outputs/
- The wps can be started using gunicorn:
gunicorn -b 0.0.0.0:8000 wps:app
The processes which are available to users of the WPS are enumerated in the DEA_WPS_config.yaml
file.
The environment variable DATACUBE_WPS_NUM_WORKERS
sets the number of workers (defaults to 4).
- Generate a specific terria catalog for wps terria testing http://terria-catalog-tool.dev.dea.ga.gov.au/wps
- Enter the wps service url or leave default
- Click Create Catalog button
- verify the services listed in
json
format is correct - change file name if required or leave default
- Click download catalog button to get a copy of the generated catalog
- Go to http://terria-cube.terria.io/#clean, Add data
- Select tab my data
- Add local data and select the downloaded file
This part is flow-on from Workflow testing
- Open DevToolsUI and go to
network
tab - Under
Data Catalogue
add the wps service needed for testing - Complete the Terria form and click Run Analysis button
- The network will start to run
- Click on Name =
?service=WPS&request=Execute
and openHeaders
tab - The following are used for testing with API tool
xml
under Request PayloadRequest URL
under General
- Go to http://www.apirequest.io/
- URL =
request URL
from Collect payload point 6 - Request body =
xml
from Collect payload point 6