Skip to main content
Version: 2.x (upcoming)

Annotation service

These are the settings of the annotation service, read from app-<PROFILE>.env in its config folder (config-files/opencdmp/annotation/config/app-test.env in the Docker example).

Authentication & core settings​

Env VariableDescriptionRequiredDefault ValueExample
IDP_ISSUER_URIKeycloak realm URL, exactly as the issuer of its tokens (the same value as in the API service).Yes-https://opencdmp.example.org/auth/realms/OpenCDMP
SECURITY_AUDIENCEAudience that tokens must carry: the annotation client scope.Yes-annotation
CORS_ALLOWED_ORIGINOrigin of the webapp (scheme, host, and port) that may call the service. One origin.Yes-https://opencdmp.example.org

Database configuration​

Env VariableDescriptionRequiredDefault ValueExample
DB_CONNECTION_STRINGJDBC address of the opencdmp database, the database of the API service.Yes-jdbc:postgresql://opencdmp.postgres:5432/opencdmp
DB_USERDatabase user. It reads and writes the tables of the service, which the API service creates (see a user per service).Yes-opencdmp_services
DB_PASSWORDPassword of that user.Yes-<db-password>

RabbitMQ configuration​

Env VariableDescriptionRequiredDefault ValueExample
QUEUE_ENABLEDBoolean value to connect to RabbitMQ and consume the events of the API service.Notruetrue
QUEUE_APP_IDRabbitMQ application id of the service.Yes-opencdmp-annotation
QUEUE_NAMEQueue of the service.Yes-opencdmp_annotation_inbox_queue
QUEUE_EXCHANGEExchange, the same as QUEUE_EXCHANGE of the API service.Yes-opencdmp_queue
RABBIT_HOSTRabbitMQ host.Yes-opencdmp.rabbitmq
RABBIT_PORTRabbitMQ port.Yes-5672
RABBIT_USERRabbitMQ user.Yes-opencdmp
RABBIT_PASSPassword of that user.Yes-<rabbitmq-password>

Logging configuration​

Env VariableDescriptionRequiredDefault ValueExample
LOGGING_CONFIG_PATHLogback configuration file.Noclasspath:logging/logback.xmlfile:/config/logback.xml
LOGGING_DEFAULT_LOG_LEVELLevel of the framework loggers: ERROR, WARN, INFO, or DEBUG.NoWARNINFO
LOGGING_PATHFolder of the log files logging.log and auditing.log.No/logs/logs

Data Transfer integration​

The annotation service exposes transfer endpoints (/api/annotation/transfer/export, /api/annotation/transfer/import, and /api/annotation/transfer/purge) that the main API service calls from the Data Transfer page to move, copy, or purge the comments of transferred plans and assets. The API forwards the caller's bearer token and x-tenant header when it calls them. No configuration is needed on the annotation service side; on the main API service, set ANNOTATION_SERVICE_URL to the base URL of this service (see Data Transfer configuration). The annotation service must run the release matching the API service; older releases do not provide the transfer endpoints.


See also​