The 'DCM Preparation Module'-API provides functionality to prepare Information Packages (IPs) for transformation into Submission Information Packages (SIPs).
This repository contains the corresponding Flask app definition.
For the associated OpenAPI-document, please refer to the sibling package dcm-preparation-module-api
.
The contents of this repository are part of the Digital Curation Manager
.
Make sure to include the extra-index-url https://zivgitlab.uni-muenster.de/api/v4/projects/9020/packages/pypi/simple
in your pip-configuration to enable an automated install of all dependencies.
Using a virtual environment is recommended.
- Install with
pip install .
- Configure service environment to fit your needs (see here).
- Run app as
flask run --port=8080
- To manually use the API, either run command line tools like
curl
as, e.g.,or run a gui-application, like Swagger UI, based on the OpenAPI-document provided in the sibling packagecurl -X 'POST' \ 'http://localhost:8080/prepare' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "preparation": { "target": { "path": "jobs/abcde-12345-fghijk-67890" } } }'
dcm-preparation-module-api
.
Build an image using, for example,
docker build -t dcm/preparation-module:dev .
Then run with
docker run --rm --name=preparation-module -p 8080:80 dcm/preparation-module:dev
and test by making a GET-http://localhost:8080/identify request.
For additional information, refer to the documentation here.
Install additional dev-dependencies with
pip install -r dev-requirements.txt
Run unit-tests with
pytest -v -s
Service-specific environment variables are
PREPARED_IP_OUTPUT
[DEFAULT "pip/"] output directory for storing prepared IPs (relative toFS_MOUNT_POINT
)
Additionally this service provides environment options for
BaseConfig
,OrchestratedAppConfig
, andFSConfig
as listed here.
- Sven Haubold
- Orestis Kazasidis
- Stephan Lenartz
- Kayhan Ogan
- Michael Rahier
- Steffen Richters-Finger
- Malte Windrath
- Roman Kudinov