diff options
author | Christopher Baines <mail@cbaines.net> | 2018-02-05 23:05:48 +0000 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2018-03-29 07:28:09 +0100 |
commit | 2d7bc302ad6d15461a10a67bd5e7e83e3dda279b (patch) | |
tree | 2a613e747fcc08645e11284a8c899e031434739c /README.org | |
parent | 064d6ee52c4f056c4f1d07c4aa0031baa87da552 (diff) | |
download | govuk-mini-environment-admin-2d7bc302ad6d15461a10a67bd5e7e83e3dda279b.tar govuk-mini-environment-admin-2d7bc302ad6d15461a10a67bd5e7e83e3dda279b.tar.gz |
Add a README, and make some guix tweaks
Diffstat (limited to 'README.org')
-rw-r--r-- | README.org | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/README.org b/README.org new file mode 100644 index 0000000..6b27836 --- /dev/null +++ b/README.org @@ -0,0 +1,49 @@ +The GOV.UK Mini Environment Admin application can manage mini GOV.UK +environments, deployed mostly on a single machine or system style +container. + +A GOV.UK environment is a connected collection of the various +services. A complete environment would include all the publishing and +admin applications, as well as all the other services. When creating a +mini environment, you can choose to omit some services if they are +unnecessary or undesired. + +It is possible to create mini environments on the local machine +(through using libvirt), or create them on rented infrastructure (from +Amazon Web Services (AWS)). + +* User Documentation + + + +* Developer Documentation + +The GOV.UK Mini Environment Admin is a Ruby on Rails web application +for managing mini environments. Terraform is used for the low level +management of the environments, and this is connected to the web +application through the use of the Que qweuing library, and terraform +Ruby library. + +** Components + +*** Web appliciation + +The web application is responsible for: + + - User authenticating via the GDS:SSO Ruby library, which uses the + GOV.UK Signon service. + - Providing a easy to deploy mini environments through the Terraform + configuration. + - Storing the Terraform state, which Terraform fetches and updates + using a Rest API. + +All the persistent state is stored in a PostgreSQL database. + +*** Queue workers + +The queuing system uses the Ruby Que library, which stores the state +in the PostgreSQL databae. The queues are where Terraform is run. + +*** Terraform configuration + +The Terraform configuration is split up by provider (libvirt or AWS). |