ARLAS-tagger
ARLAS-tagger provides a REST API for tagging data collections available in Elasticsearch and referenced by ARLAS-server
Prerequisites :
Building
ARLAS-tagger is a Dropwizard project. You need JDK 17 and Maven 3 to be installed.
Running
You need a Java Runtime (JRE) 17, a Kafka node and an ElasticSearch server running.
ARLAS-tagger is compliant with the following versions:
| ElasticSearch Version |
|---|
| >= 8.13.13 |
Note : data collections tagged by ARLAS-tagger should be referenced in Elasticsearch by ARLAS-server
Build
JAR
In order to download the project dependencies and build it :
mvn clean package
Docker
docker build --tag=gisaia/arlas-tagger:latest --tag=arlas-tagger:latest .
Run
JAR
To run the project :
java -jar target/arlas-tagger-x.x.jar server conf/configuration.yaml
Then, go to http://localhost:9998/arlas_tagger/swagger for testing the API.
Docker
docker run -d -e KAFKA_BROKERS=my-host-1:9092 -e ARLAS_ELASTIC_NODES=my-host-2:9200 -e ARLAS_ELASTIC_CLUSTER=elasticsearch gisaia/arlas-tagger:latest
Running the tests
Integration tests
with docker containers
./scripts/tests-integration.sh
Make sure to have docker installed and running on your system and you might need to install some dependencies :
sudo apt-get install xmlstarlet
Have a look to the kafka image documentation if you are in trouble with kafka container.
with running kafka, elasticsearch and ARLAS-tagger
export ARLAS_TAGGER_HOST="localhost"; export ARLAS_TAGGER_PORT="9998"; export ARLAS_TAGGER_PREFIX="/arlas/";
export ARLAS_ELASTIC_NODES="localhost:9200"; export KAFKA_BROKERS="localhost:9092";
mvn clean install -DskipTests=false
Built with :
- Dropwizard - The web framework used.
- Maven - Dependency Management.
- Kafka - A distributed streaming platform.
Contributing :
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
Versioning :
We use SemVer for versioning : x.y.z.
x: Incremented as soon as an incompatible change is made toARLAS-tagger API.y: Incremented as soon as a new feature is implemented.z: Incremented as soon as tagger receives a fix or an enhancement.
For the versions available, see the releases on this repository.
ARLAS-tagger is compliant with ARLAS-server releases that have the same major and minor versions.
Authors :
- Gisaïa - Initial work - Gisaïa
See also the list of contributors who participated in this project.
License :
This project is licensed under the Apache License, Version 2.0 - see the LICENSE.txt file for details.
Acknowledgments :
This project has been initiated and is maintained by Gisaïa