aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Change the backend instance to a t2.xlargerelease_10Christopher Baines2018-07-03
| | | | The builds can be quite expensive, so the extra resource is useful.
* Increase the resources for AWS mini environmentsChristopher Baines2018-07-03
| | | | | From a t2.large to a t2.xlarge. Running every service requires close to 16GB of memory.
* Set GDS_GUIX_GOVUK_PUPPET_BACKUPS_DIRECTORYChristopher Baines2018-07-03
| | | | On the AWS build machine.
* Copy the root profile when provisioningChristopher Baines2018-07-03
| | | | | | Then switch to just installing guile. Also, always create the ~/.guix-profile symlink, as this isn't stored on EFS and thus needs creating everytime the machine is created.
* Make the ~/.config directory during provisioningChristopher Baines2018-07-03
| | | | This ensures that it's owned by the ubuntu user.
* Change the spot_type of the spot requests to one-timeChristopher Baines2018-07-03
| | | | | | The setup for these machines is dependant on the Terraform provisioners, so make the spot requests one time rather than persistent.
* Handle the Guix signing-key not existingrelease_9Christopher Baines2018-07-03
| | | | | Other parts of the code handle not having Guix locally, so add support here also.
* Fix the Terraform HTTP backend in productionrelease_8Christopher Baines2018-07-03
| | | | | Skip the authenticate_user! before action for the Terraform controller methods, and refactor the code to improve readability.
* Use Plek for finding the GOV.UK Mini Environment Adminrelease_7Christopher Baines2018-07-03
| | | | Rather than hardcoding localhost.
* Add lib to the eager_load_pathsrelease_6Christopher Baines2018-07-03
| | | | | To make accessing classes and modules in lib work in the production environment.
* Use Plek to find Signonrelease_5Christopher Baines2018-07-02
|
* Move the gds-sso requirerelease_4Christopher Baines2018-07-02
| | | | | There is a problem with starting the app in the Rails production environment, moving the require seems to fix the issue.
* Add a really basic que_jobs index pagerelease_3Christopher Baines2018-07-01
|
* Use the remote host struct in read_json_fileChristopher Baines2018-07-01
|
* Actually include the data snapshot when buildingChristopher Baines2018-07-01
|
* Change the default services for data snapshotsChristopher Baines2018-07-01
| | | | | Just exclude release and signon, rather than only including content-tagger and contacts-admin.
* Fix the CreateDataSnapshotJobChristopher Baines2018-07-01
| | | | To better handle remote hosts.
* Fix the FetchRevisionJob to better handle remote hostsChristopher Baines2018-07-01
|
* Specify the mini_environment_up output for the AWS backendrelease_2Christopher Baines2018-06-28
|
* Ensure the log directory exists in the AWS backendChristopher Baines2018-06-28
|
* Specify the disk size for the AWS build machineChristopher Baines2018-06-28
|
* Increase the number of build users in AWSChristopher Baines2018-06-28
|
* Make the git gem optionalChristopher Baines2018-06-28
| | | | | As it's not required or useful currently if Guix isn't available locally.
* Use basic authentication with the Terraform http backendrelease_1Christopher Baines2018-06-24
| | | | This prevents any unauthorised access to the Terraform state.
* Add a couple of buttons to speed up service selectionChristopher Baines2018-06-24
|
* Neaten up SSH handlingChristopher Baines2018-06-24
| | | | | Explicitly use the specified private key where possible. Also, use a struct for the user, address and private key.
* Guard against invalid build outputsChristopher Baines2018-06-24
| | | | Which seem to be a possibility if the job is forcefully stopped.
* Add locking around all Terraform actionsChristopher Baines2018-06-24
| | | | | To prevent them conflicting. Terraform itself has a locking mechanism, which isn't being used, but this should be sufficient.
* Refactor the backends to use a method for working with TerraformChristopher Baines2018-06-24
|
* Switch to using the public AWS domain of the build machineChristopher Baines2018-06-23
| | | | | | Rather than the configured domain, as the corresponding SSH key shouldn't change for the AWS domain (whereas it does for the configured domain, if the machine changes).
* Disable strict host key checkingChristopher Baines2018-06-23
| | | | | So that SSH can run without requiring manual intervention. This shouldn't pose a security risk, as the network should be trusted.
* Support 'Stopping' the AWS backendChristopher Baines2018-06-23
| | | | Which means just destroying the build machine.
* Use a custom branch of ruby_terraformChristopher Baines2018-06-23
| | | | Which supports the -target option to the destroy command.
* Support the refresh action on the terraform aws backendChristopher Baines2018-06-23
|
* Use an animated progress bar in the jobs partialChristopher Baines2018-06-23
|
* Redesign the mini environment show pageChristopher Baines2018-06-23
| | | | With similar changes to the backend pages.
* Improve the jobs partialChristopher Baines2018-06-23
| | | | | Use titles to provide additional information, add support for expired jobs and clean up the text.
* Specify titles for TerraformLibvirtJob jobsChristopher Baines2018-06-23
|
* Redesign the backend show page actions and status reportingChristopher Baines2018-06-23
| | | | | Use panels and list groups to better layout the actions and status.
* Style the "View all terraform states" link as a buttonChristopher Baines2018-06-23
|
* Add a history view for terraform statesChristopher Baines2018-06-23
| | | | And link to this from the mini environment page.
* Change the backend perform action controllerChristopher Baines2018-06-23
| | | | | Redirect to the show page, rather than rendering it, to keep the URL more consistent.
* Support refreshing the state of backendsChristopher Baines2018-06-23
|
* Add support for managing Terraform AWS backends from the show pageChristopher Baines2018-06-23
|
* Split out a couple of modules from the TerraformAws classChristopher Baines2018-06-23
|
* Support managing the libvirt backend from the show pageChristopher Baines2018-06-23
|
* Handle SSH keys via the databaseChristopher Baines2018-06-23
| | | | | This makes it more explicit, and works around Terraform being unpredictable when dealing with SSH agents.
* Add a Guix moduleChristopher Baines2018-06-23
| | | | Which contains an available_locally? function.
* Only copy the guix revision to the remote host if possibleChristopher Baines2018-06-23
|
* Add initial support for fetching govuk-guix revisions on remote hostsChristopher Baines2018-06-23
| | | | | This begins to remote the restriction of having to have Guix installed locally.