This documentation is out of date, for now use https://github.com/xenon-middleware/xenon-adaptors-cloud as an example.
To add an adaptor the following steps must be performed:
- source code
- dependencies (optional)
- unit tests
- integration tests
- Docker based server for adaptor to test against in integration tests
- registration in Xenon engine
- registration in build system
For a new file adaptor use webdav
as an example.
For a new job adaptor use slurm
as an example.
Adding an adaptor can be completed by adding/changing files in the following locations:
- Source code in
src/main/java/nl/esciencecenter/xenon/adaptors/<adaptor name>
. - Specify dependencies of adaptor in
build.gradle
. - Unit tests in
src/test/java/nl/esciencecenter/xenon/adaptors/<adaptor name>
. - Register adaptor in
src/main/java/nl/esciencecenter/xenon/engine/XenonEngine.java:loadAdaptors()
- Integration tests
- Create a Dockerfile in
src/integrationTest/docker/xenon-<adaptor-name>
for a server of the adaptor to test against - Register the Docker image in
src/integrationTest/docker/docker-compose.yml
andgradle/docker.gradle
- Add the Docker container credentials/location/configuration to
src/integrationTest/docker/xenon.test.properties.docker
- Create an integration test in
src/integrationTest/java/esciencecenter/xenon/adaptors/<adaptor name>/