Annotation API is a backend service to store and retrieve annotations.
git clone https://github.com/hmcts/em-annotation-app.git
cd em-annotation-app/
brew install jq./gradlew clean
./gradlew build
Requires docker desktop running.
You need to be logged in to Azure and have access to the ACR registry to pull the necessary containers for the application to run.
If you are not logged in, you can do so by running az login in your terminal.
Followed by az acr login --name hmctsprod to log in to the ACR registry.
./gradlew bootWithCCD
and in another terminal window you can run functional tests
./gradlew functional
docker stop $(docker ps -a -q)
docker rm $(docker ps -a -f status=exited -q)
Port 5000 is already in use on Monterey macs:
Disable AirPlay receiver
Authentication issues causing containers to not start:
docker logout hmctsprod.azurecr.io
To view our REST API go to http://{HOST}/swagger-ui/index.html On local machine with server up and running, link to swagger is as below
http://localhost:8080/swagger-ui/index.html if running on AAT, replace localhost with ingressHost data inside values.yaml class in the necessary component, making sure port number is also removed.
A list of our endpoints can be found here
You can run contract or pact tests as follows:
./gradlew clean
./gradlew contract
You can then publish your pact tests locally by first running the pact docker-compose:
docker-compose -f docker-pactbroker-compose.yml up
and then using it to publish your tests:
./gradlew pactPublish
It uses:
- Java11
- Spring boot
- Junit, Mockito and SpringBootTest and Powermockito
- Gradle
- lombok project - Lombok project
- lombok plugin - Lombok IDEA plugin
This project is licensed under the MIT License - see the LICENSE file for details