https://github.com/govuk-one-login/authentication-api
https://github.com/govuk-one-login/authentication-api
authentication digital-identity
Last synced: 7 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/govuk-one-login/authentication-api
- Owner: govuk-one-login
- Created: 2021-05-25T12:23:59.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2026-01-12T18:16:10.000Z (13 days ago)
- Last Synced: 2026-01-12T18:40:16.725Z (13 days ago)
- Topics: authentication, digital-identity
- Language: Java
- Homepage:
- Size: 41.1 MB
- Stars: 16
- Watchers: 43
- Forks: 10
- Open Issues: 67
-
Metadata Files:
- Readme: README.md
- Audit: audit-events/build.gradle
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# di-authentication-api
This repo contains the backend code and infrastructure for the Authentication and Orchestration components for [GOV.UK One Login](https://sign-in.service.gov.uk/).
## Documentation:
High level sequence diagrams outlining different journeys can be found in [Diagrams](./docs/diagrams).
### Orchestration Documentation:
Documentation for the Orchestration component can be found in the [Orchestration README](./docs/orchestration/README.md).
## Running the tests
### Unit:
To run the unit test in this repo, run the following command:
```shell script
./gradlew --parallel test jacocoTestReport -x integration-tests:test -x account-management-integration-tests:test -x delivery-receipts-integration-tests:test
```
### Integration:
To run the integration tests in this repo, you can run the following command
```shell script
./gradlew integration-tests:test
```
If the tests aren't running in `account-management-integration-tests` refer to the [Local Running README](./local-running/README.md) and make sure
you have the correct repositories up to date.
## Alarm Management
The `alarm-management.sh` script provides utilities for managing CloudWatch alarms and SNS subscriptions. It allows you to test alarm functionality, manage SNS topic subscriptions, and verify alarm configurations across different environments. The script supports operations like triggering test alarms, subscribing/unsubscribing from SNS topics, and validating alarm states.
```shell
./scripts/test/alarm-management.sh
```
## Pre-commit hook
The repo has config set up for a custom pre-commit hook in `.pre-commit-config.yaml`.
Pre-commit checks include applying formatting, so after the script has run you may see files updated with formatting changes.
To implement the pre-commit hook, you will need to install pre-commit:
```shell script
brew install pre-commit
```
and then set up the hook by running
```shell script
pre-commit install
```
## Formatting:
This repo uses Spotless for its formatting. You run this by running the following command:
```shell
./gradlew spotlessApply
```