aboutsummaryrefslogtreecommitdiff
path: root/app/models
Commit message (Collapse)AuthorAge
* Replace the has_many terraform_states with a methodChristopher Baines2018-06-21
| | | | As the has_many didn't work, as the key is not what Rails expects.
* Add a terraform_states method to MiniEnvironmentChristopher Baines2018-06-21
|
* Extract out the mini_environment_state_id to a methodChristopher Baines2018-06-21
| | | | So that it can be used in other methods.
* Remove some redundant loggingChristopher Baines2018-06-21
|
* Add some methods to the TerraformState classChristopher Baines2018-06-21
|
* Split BackendMethods out of TerraformLibvirtChristopher Baines2018-06-21
| | | | This makes the TerraformLibvirt class shorter, and easier to read.
* Split MiniEnvironmentMethods out of TerraformLibvirtChristopher Baines2018-06-21
| | | | | Separate the mini environment related methods in to a module, to make both more readable.
* Update Que to 1.0.0 (beta 3)Christopher Baines2018-06-21
|
* Also share the /var/log directory with the hostChristopher Baines2018-06-04
|
* Share /var/cache and /var/lib with the hostChristopher Baines2018-06-03
| | | | | In the AWS backend. This means that they don't end up on a tmpfs and using up RAM.
* Add support for destroying Terraform AWS backendsChristopher Baines2018-06-03
|
* Extract the backend variables out in the AWS backendChristopher Baines2018-06-03
|
* Support data snapshots for the AWS backendChristopher Baines2018-06-03
|
* Change how the EFS File System is handledChristopher Baines2018-06-03
| | | | | | | | | | For the AWS backend. Bring it in to the Terraform configuration for the backend, where previously only the id was known. Also, alter the provisioning so that it can handle an empty EFS file system. This reduces the amount of manual setup required for AWS.
* Pass the data-snapshot to govuk-system in the build jobChristopher Baines2018-06-01
| | | | For the Terraform libvirt backend.
* Support selecting a data snapshot on the services pageChristopher Baines2018-06-01
|
* Add an optional DataSnapshot to the MiniEnvironment modelChristopher Baines2018-06-01
| | | | To store if a DataSnapshot is being used.
* Add a basic description method to GovukGuix::DataSnapshotChristopher Baines2018-06-01
| | | | This is for use when rendering these in a view.
* Add an optional association to backends for data snapshotsChristopher Baines2018-06-01
| | | | | | | I'm a bit unsure about this, but it feels like generating snapshots remotely is useful, but if that is supported, then a remote snapshot won't be available locally to use. Adding the option of making them backend specific is one way of working around this.
* Change the signature of Backends.find_by_type_and_idChristopher Baines2018-06-01
| | | | | | | It now takes two arguments, and when used by the MiniEnvironmentsController, the split is performed there. This makes it easier to reuse elsewhere in the codebase.
* Add the GovukGuix::Revision commit_hash to the DataSnapshot modelChristopher Baines2018-06-01
| | | | | This is to record the revision of govuk-guix used to create the snapshot.
* Add a new DataSnapshot model to store data snapshotsChristopher Baines2018-05-30
|
* Use basic authentication for mini environmentsChristopher Baines2018-05-30
| | | | | | To avoid the origin being too easy to access, which could potentially be misleading as a mini environment isn't the real GOV.UK website, although it might look similar.
* Use proper error pages for mini environmentsChristopher Baines2018-05-30
|
* Use the services specified when building mini environmentsChristopher Baines2018-05-30
|
* Enable editing the services when creating a mini environmentChristopher Baines2018-05-30
|
* Add a new model to track servicesChristopher Baines2018-05-30
| | | | | Associated with a mini environment. This can also be used to store customisations over the chosen revision of govuk-guix.
* Update the govuk_guix_revision model descriptionChristopher Baines2018-05-28
|
* Remove duplicated build optionChristopher Baines2018-05-28
|
* Improve the AWS backendChristopher Baines2018-05-03
| | | | | | This gets the AWS backend to the point where you can deploy the backend, and then a mini environment without any actions outside of the govuk-mini-environment-admin.
* Add extra fields to the Terraform AWS backendChristopher Baines2018-05-03
|
* Improve the support for LibvirtChristopher Baines2018-04-12
| | | | | | | | | Separate out the backend things, like the virtual network, from the mini environment. This makes it easier to have resources shared between mini environments. Also handle the deployment of this new backend related Terraform configuration.
* Add a QueJob modelChristopher Baines2018-04-12
|
* Change mini_environment_id to state_id on TerraformStateChristopher Baines2018-04-12
| | | | | To allow supporting tracking related TerraformStates for backends as well.
* Change mini_environment_id to model_id on FinishedTerraformJobChristopher Baines2018-04-12
| | | | In preparation of setting up backends through Terraform as well.
* Move the terraform utilities to lib/Christopher Baines2018-04-12
| | | | | | | | | Change the module to a class, which is used to represent a terraform working directory. Change the routing for the terraform http backends, to remove any connection with mini environments, and remove this concern from the new TerraformWorkingDirectory class also.
* Fix a couple of linting issuesChristopher Baines2018-04-12
|
* License under the AGPLv3+Christopher Baines2018-04-12
|
* Specify the ordering for revisionsChristopher Baines2018-04-03
| | | | And update the show page to use the default scope.
* Add an archived column to GovukGuix::RevisionChristopher Baines2018-04-03
|
* Provide the AWS access key and secret as variablesChristopher Baines2018-04-03
| | | | To terraform.
* Add mini_environments association to GovukGuix::RevisionChristopher Baines2018-04-03
|
* Add domains to backends, and rework build jobsChristopher Baines2018-04-03
| | | | | | | Add a domain to the libvirt and AWS Terraform backends. Along the way, improve the backend controllers and views, and rework the build jobs, simplifying them in to a single new class GovukGuix::BuildJob, which uses configuration from the respective backend.
* Add missing importsChristopher Baines2018-04-03
|
* Fix plugin_dir in Backends::TerraformChristopher Baines2018-04-03
|
* Add support for specifying Signon usersChristopher Baines2018-04-03
| | | | When creating mini environments.
* Add a new signon_users field to MiniEnvironmentChristopher Baines2018-04-03
| | | | | | | To store the data regarding the Signon users seeded in the database. Store this as JSON, rather than data in different tables to simplify the schema, as I don't expect it to change at all once the MiniEnvironment is created.
* Remove trailing whitespaceChristopher Baines2018-04-03
|
* Refactor the backendsChristopher Baines2018-04-03
| | | | Add a with_terraform helper, which simplifies both backends.
* Remove a redundant methodChristopher Baines2018-04-03
| | | | This is only used in the AWS backend.