Project to build components for an OGC Web Processing Service providing NetCDF aggregation services on AWS
Lambda function that handles OGC WPS requests
- GetCapabilites - describes services provided
- DescribeProcess - describes supported aggregation processes
- Execute - submits an aggregation request to AWS Batch
Docker image that performs the actual aggregation. Its whats run on the EC2 instance.
Lambda function that handles job status requests.
doc
supporting documentation filesrequest-handler
a maven sub-module to build the lambda deployment package for the request handleraggregation-worker
a maven sub-module to build the docker image for the aggregation worker.job-status-service
a maven sub-module to build the lambda deployment package for the job status serviceintegration-tests
a maven project that can be used to integration test a deployed AWS/WPS instance at a location specified by the WPS_ENDPOINT environment variablerequests
contains a demo request that can be submitted to a deployed AWS/WPS instancewps-cloudformation-template.yaml
a cloud formation template for creating AWS components of the AWS/WPS instance
Only OGC WPS features required to support the Portal/MARVL have been implemented. The following mandatory features from the spec are not supported:
- loading inputs from web accessible resources
- synchronous processing
- encoding outputs in response
- raw data output
Requirements:
- maven 3
- java 8
- docker
$ mvn clean package
Set the WPS_ENDPOINT environment variable to the service url for then use mvn verify in the integration-tests directory to run the tests. For example for the service url 'https://wps-testing.dev.aodn.org.au/wps' the following will run integration tests against that endpoint.
$ cd integration-tests
$ WPS_ENDPOINT='https://wps-testing.dev.aodn.org.au/wps' mvn verify
A sample request and a script to submit it can be found in the requets directory. The submit script should be modified to submit the request the to the required service url.
TBC