Provides sign in / sign out and attribute storage functionality to
other GOV.UK applications.
In production, this app currently uses the Digital Identity
authentication service.
In development, this app uses a stub OIDC provider which signs you in
as the first user in the database.
This app does not serve any user-facing pages. To see the app working, you
must run an app which uses it, such as frontend.
After starting Frontend, you should be able to access the account
dashboard.
Technical documentation
This is a Ruby on Rails app, and should follow our Rails app
conventions.
Use GOV.UK Docker to run any of the following commands.
Testing
This repository follows the standards for testing described in the
GOV.UK RFC on continuous deployment:
- code coverage in excess of 95%
- API contract tests (“pact tests”) between the Account API and its
consumers
The default rake
task runs all the tests and records code coverage:
bundle exec rake
Changing the Pact tests
If you make changes to the API, you must update the Pact tests.
A Pact test has two parts:
-
The consumer test (defined in gds-api-adapters), which:
- specifies the state it expects the provider to be in
- gives a request to make
- and a response to match against
-
The provider configuration (defined in this repo), which
defines all of the provider states referenced by the consumer
tests.
See the GOV.UK Developer Docs for how to update a Pact test.
Further documentation
Licence
MIT License