o2r microservice for RData file inspection
1.6K
Inspection of binary files for the o2r Web API.
Implements the endpoint /api/v1/inspection using plumber.
Configuration is done via environment variables.
They must be set before loading the package (i.e. library("inspecter")).
From R:
Sys.setenv(DEBUGME = "inspecter")
library("inspecter")
inspecter::start()
With Docker:
docker build --tag inspecter .
docker run --rm -it -p 8091:8091 inspecter
INSPECTER_PORT
The port to run the service at, defaults to 8091INSPECTER_HOST
The host to listen to, defaults to 0.0.0.0INSPECTER_BASEPATH
The data directory, defaults to /tmp/o2r/compendium (i.e. inspecter only reads files from compendia, not from jobs)See http://o2r.info/o2r-web-api/compendium/files/#file-inspection-rdata
<ip>:8091/status shows the microservice status.
For security reasons, inputs (namely file and objects) are processed to contain only characters allowed for filenames or R objects respectively.
Sys.setenv("DEBUGME" = "inspecter", "INSPECTER_BASEPATH" = file.path(getwd(), "tests/testthat/data"))
library("inspecter")
inspecter::start()
For developing tests, it is useful to run the service from the terminal and have the R session for writing the tests:
DEBUGME=inspecter INSPECTER_BASEPATH=$(pwd)/tests/testthat/data R -q -e 'library("inspecter"); inspecter::start()'
plumber integrates a swagger UI, you can open it at http://127.0.0.1:8091/__swagger__/.
devtools::test()
We must start the service independently of the tests, so the tests include building the inspecter Docker image and starting/removing of a Docker container. It's recommended to build the image manually once to create a build cache.
The test relies on it's own Dockerfile at tests/testthat/Dockerfile, which reduces rebuild time to improve local development experience.
When the test fails with "too many failures", the Docker container inspecter_test must be removed manually before re-running the tests.
o2r muncher is licensed under Apache License, Version 2.0, see file LICENSE.
Copyright (C) 2017 - o2r project.
Content type
Image
Digest
Size
279 MB
Last updated
almost 9 years ago
docker pull o2rproject/o2r-inspecter