This page provides instructions on how to develop and test prl-cos-api in a local development
environment using cftlib. AAT is used to provide some of the dependent services. As a consequence, the local environment
will only work when the AAT environment is available.
See this page for details of AAT availability.
An .aat-env file is needed to provide the environment variables required to point services at AAT.
As these include Azure secrets, it is not stored in Git.
If the file is not already present then it is downloaded automatically when the local development environment is started.
There is currently no support for
- Work Allocation
- Hearings
- Java 21.
- The prl-ccd-definitions repository must be cloned in the same parent directory as
prl-cos-api. - The
prl-ccd-definitionssetup tasks must have been run:yarn installandyarn reset-ccd-submodule. - You must be connected to the VPN.
- Docker must be running.
- jq must be installed.
The first time cftlib is run it needs to download Docker images from the Azure Registry. You must therefore login to Azure as follows:
az acr login --name hmctsprod --subscription DCD-CNP-Prod
az acr login --name hmctsprivate --subscription DCD-CNP-Prod./gradlew bootWithCCDThis will start prl-cos-api along with CCD common components and Docker containers for
ExUI, PostgreSQL, Elasticsearch and Logstash.
| Application | URL |
|---|---|
| Manage Cases | http://localhost:3000 |
| Manage Organisation | http://localhost:3001 |
| Elasticsearch | http://localhost:9200/prlapps_cases-000001/_search |
| PostgreSQL | localhost:6432 |
The prl-ccd-definitions are imported automatically on cftlib startup.
If you need to re-import the definitions without restarting cftlib, you can do so by running:
./bin/cftlib/import-ccd-definitions.shYou will need the following environment variables set:
- PRL_COS_CLIENT_SECRET_AAT
- CCD_IMPORT_USERNAME_AAT
- CCD_IMPORT_PASSWORD_AAT
You will need the environment variables set as above.
./bin/cftlib/reindex-elasticsearch.sh