Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Shorten the guix builder user name | Christopher Baines | 2018-07-04 |
| | | | | | This makes it easier to see in tools like htop, top and ps, as they truncate the user name. | ||
* | Use info for command output logging | Christopher Baines | 2018-07-04 |
| | | | | | As this is useful to see, and not currently appearing in the log file when running in the Rails production environment. | ||
* | Disable the Refresh button if there is no state to refresh | Christopher Baines | 2018-07-04 |
| | |||
* | Add a simple title back to the index page | Christopher Baines | 2018-07-04 |
| | | | | To fix the styling. | ||
* | Use database locking to prevent concurrent Terraform jobs | Christopher Baines | 2018-07-04 |
| | | | | | | | | | | | | Currently, the Terraform code uses chdir in the Ruby process to change to the right working directory. This affects all threads in the process, and thus means that all Terraform jobs conflict with each other. It would be good to fix this somehow, e.g. not changing directory, and just specifying the directory in which to run Terraform when starting it, but for now, use the advisory locks to force the jobs to run sequentially. | ||
* | Remove the titles from the mini environment index page | Christopher Baines | 2018-07-04 |
| | | | | | Ownership isn't implemented yet, so just remove the titles that suggest it is. | ||
* | Pass the terraform credentials to the remote state configuration | Christopher Baines | 2018-07-04 |
| | | | | | This fixes the mini environment Terraform working, now that the backend is protected by basic authentication. | ||
* | Use finish in the govuk-guix related Que jobs | Christopher Baines | 2018-07-04 |
| | | | | So that the entries are kept in the jobs table. | ||
* | Specify titles for the govuk-guix related jobs | Christopher Baines | 2018-07-04 |
| | |||
* | Support looking for available services on remote hosts | Christopher Baines | 2018-07-04 |
| | |||
* | Don't try to use guix copy if Guix isn't available | Christopher Baines | 2018-07-04 |
| | | | | If this is the case, it should only be used on the remote host anyway. | ||
* | Use bash from Guix when fetching revisions remotely | Christopher Baines | 2018-07-04 |
| | |||
* | Change the backend instance to a t2.xlargerelease_10 | Christopher Baines | 2018-07-03 |
| | | | | The builds can be quite expensive, so the extra resource is useful. | ||
* | Increase the resources for AWS mini environments | Christopher Baines | 2018-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_DIRECTORY | Christopher Baines | 2018-07-03 |
| | | | | On the AWS build machine. | ||
* | Copy the root profile when provisioning | Christopher Baines | 2018-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 provisioning | Christopher Baines | 2018-07-03 |
| | | | | This ensures that it's owned by the ubuntu user. | ||
* | Change the spot_type of the spot requests to one-time | Christopher Baines | 2018-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_9 | Christopher Baines | 2018-07-03 |
| | | | | | Other parts of the code handle not having Guix locally, so add support here also. | ||
* | Fix the Terraform HTTP backend in productionrelease_8 | Christopher Baines | 2018-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_7 | Christopher Baines | 2018-07-03 |
| | | | | Rather than hardcoding localhost. | ||
* | Add lib to the eager_load_pathsrelease_6 | Christopher Baines | 2018-07-03 |
| | | | | | To make accessing classes and modules in lib work in the production environment. | ||
* | Use Plek to find Signonrelease_5 | Christopher Baines | 2018-07-02 |
| | |||
* | Move the gds-sso requirerelease_4 | Christopher Baines | 2018-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_3 | Christopher Baines | 2018-07-01 |
| | |||
* | Use the remote host struct in read_json_file | Christopher Baines | 2018-07-01 |
| | |||
* | Actually include the data snapshot when building | Christopher Baines | 2018-07-01 |
| | |||
* | Change the default services for data snapshots | Christopher Baines | 2018-07-01 |
| | | | | | Just exclude release and signon, rather than only including content-tagger and contacts-admin. | ||
* | Fix the CreateDataSnapshotJob | Christopher Baines | 2018-07-01 |
| | | | | To better handle remote hosts. | ||
* | Fix the FetchRevisionJob to better handle remote hosts | Christopher Baines | 2018-07-01 |
| | |||
* | Specify the mini_environment_up output for the AWS backendrelease_2 | Christopher Baines | 2018-06-28 |
| | |||
* | Ensure the log directory exists in the AWS backend | Christopher Baines | 2018-06-28 |
| | |||
* | Specify the disk size for the AWS build machine | Christopher Baines | 2018-06-28 |
| | |||
* | Increase the number of build users in AWS | Christopher Baines | 2018-06-28 |
| | |||
* | Make the git gem optional | Christopher Baines | 2018-06-28 |
| | | | | | As it's not required or useful currently if Guix isn't available locally. | ||
* | Use basic authentication with the Terraform http backendrelease_1 | Christopher Baines | 2018-06-24 |
| | | | | This prevents any unauthorised access to the Terraform state. | ||
* | Add a couple of buttons to speed up service selection | Christopher Baines | 2018-06-24 |
| | |||
* | Neaten up SSH handling | Christopher Baines | 2018-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 outputs | Christopher Baines | 2018-06-24 |
| | | | | Which seem to be a possibility if the job is forcefully stopped. | ||
* | Add locking around all Terraform actions | Christopher Baines | 2018-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 Terraform | Christopher Baines | 2018-06-24 |
| | |||
* | Switch to using the public AWS domain of the build machine | Christopher Baines | 2018-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 checking | Christopher Baines | 2018-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 backend | Christopher Baines | 2018-06-23 |
| | | | | Which means just destroying the build machine. | ||
* | Use a custom branch of ruby_terraform | Christopher Baines | 2018-06-23 |
| | | | | Which supports the -target option to the destroy command. | ||
* | Support the refresh action on the terraform aws backend | Christopher Baines | 2018-06-23 |
| | |||
* | Use an animated progress bar in the jobs partial | Christopher Baines | 2018-06-23 |
| | |||
* | Redesign the mini environment show page | Christopher Baines | 2018-06-23 |
| | | | | With similar changes to the backend pages. | ||
* | Improve the jobs partial | Christopher Baines | 2018-06-23 |
| | | | | | Use titles to provide additional information, add support for expired jobs and clean up the text. | ||
* | Specify titles for TerraformLibvirtJob jobs | Christopher Baines | 2018-06-23 |
| |