Friday 14th July, 2017
Hello! I’ve been working from home for most of this week. We had some family staying to help with our new arrival for the first few weeks of his life, but now they’ve gone home we’ve been on our own. It’s been great to spend time together but it’s taken until yesterday until I’ve felt that I’ve settled into a working routine.
Working remotely has also reminded me how much I enjoy the company of my colleagues - a few minutes spent with James at TOG East Side on Wednesday afternoon made Thursday a whole lot more productive, for example. I’ve been experimenting with keeping much more granular lists of the work I need to do when programming. When I am able to concentrate for long spells I can usually keep it in my head, but writing it all down seems to make it much easier to cope with interruptions1.
Our work to migrate assets on GOV.UK to a cloud-based storage system continues. There are currently two systems that manage uploaded assets (images, PDF documents etc.) for GOV.UK. The Asset Manager API provides a service that a variety of publishing applications integrate with, while the large publishing application Whitehall has its own asset management functionality. Both systems use the Carrierwave library to store files on disk - with storage managed using an NFS mount.
This week we’ve been working on adding support for Amazon’s S3 file storage to the Asset Manager API. As a first step we will upload the assets to S3 in parallel with the existing storage. This means we can work out any issues with integration without affecting the existing service. The configuration of AWS services used by GOV.UK is managed using Terraform so we’ve been getting to grips with how that works so we can add the S3 buckets and permissions that the Asset Manager API will need. Along the way we’ve been tidying up and updating the Asset Manager code, including making sure the code follows the GOV.UK linting rules.
For the Whitehall application we have two options. Either we migrate the storage for this application from NFS to S3 directly, and then look to remove the duplication between this application and the Asset Manager API. Or, we convert Whitehall to use the Asset Manager API first even if that requires us adding some features to the API that Whitehall needs. We’ve been spiking the latter approach to get a feel for how much work it will be.
As we mentioned last week, we’ve also been helping the Smart Answers team to make some changes to how the “start” pages are rendered. Chris finished up the work on this and with the help of the team got it merged.