Skip to content
This repository has been archived by the owner on Jul 19, 2022. It is now read-only.

A FAIR Digital Object Ecosystem Testbed. It resulted in the development of the FAIR DO Lab (see website link).

License

Notifications You must be signed in to change notification settings

kit-data-manager/testbed4inf

Repository files navigation

FAIR Digital Object Ecosystem Testbed

Test Build

A testbed for a generic FAIR DO infrastructure.

The testbed resulted in the development of the FAIR DO Lab. All further development will take place there, with the new goal of developing a production-ready software stack.

Current functionalities:

  • Create, Update and Retrieve PIDs
  • Search within PID records
  • Notification of PID activities for other services
  • Includes an instance of our collection registry to create and manage collections

Related Publications:

Goals

This testbed is meant to be used as ...

  • a Foundation for experimenting with FAIR use cases (indexing, profiles, records, ...). The idea is to find situations where specification is missing and explore problems as early as possible.
  • a Playground for understanding how a FAIR ecosystem will work.
  • (in the not so near future) as a configurable (but pre-configured) basis for FAIR DO ecosystems.

Getting Started

IMPORTANT: Before you start, make sure your docker environment has at least 4GB of memory (RAM) available. This is especially required if it runs in a virtual machine (which is the case e.g. if you use OSX). You can do this the easiest using Docker Desktop in the preference menu under "Resources". The testbed consists of several services, and in sum the default of 2GB RAM will not be enough.

# install docker first.
git clone $THIS_REPOSITORY_URL
cd testbed4inf
docker compose up  # start all services of the testbed

Wait until the containers are started. After that, you may expore the possibilities of the testbed using the following URLs:

Customization

Detailed usage documentation beyond the short "getting started" introduction.

The testbed consists of several services, managed with docker-compose. Some of them do not yet have an image on docker hub and need to be built on the machine. This will happen automatically when starting them.

Use docker compose up to start all services or docker compose up fairris pit-service to only start a selection, analogous to the build steps.

Update services

git pull
docker compose down  # shut down all services and delete its containers
docker compose pull  # pull new image versions
docker compose up    # starts all services

Repository structure

  • The documentation folder contains advanced documentation about the testbed and some workflows within it for some better understanding of the architecture.
  • Service-specific files are in folders named after the service. The configurations inside the folders are used either at build time or container creation time. So if you want to change the configuration, you need to make sure to execute the corresponding action afterwards, in order to use the new configurations.
  • docker-compose.yml contains all services and how they are wired together.
    • It is recommended to use override files to make custom modifications. It will make pulling new versions of the repository easier for you.
    • Use the compose file as a documentation of exposed ports etc.
  • java-release-run.sh will be copied into the images of java-based services to run them properly (helper script).

About

A FAIR Digital Object Ecosystem Testbed. It resulted in the development of the FAIR DO Lab (see website link).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published