Connecting the local government with Drupal through AWS hosting
Local Gov Drupal
It is a distribution being built by local authorities, for local authorities. It’s designed to assist UK councils in publishing public-facing websites more quickly, cheaply, and effectively. These mutual benefits are generated by pooling respective expertise and resources.
The idea is that LocalGovDrupal will enable a lot of the standard local authority functionality that’s needed, right out of the box.
It has the following endorsements:
- Ministry of Housing Communities and Local Government Local Digital Fund
- Brighton and Hove City Council
- Croydon Council
- Agile Collective
Croydon Council teamed up with several other councils to exchange Drupal code.
Luckily, there are now more funds to pursue this mission. As such, this new funding enabled Croydon to expand and bring new features. It gave them the opportunity to fine-tune how councils approach the project and how collaboration can be facilitated. Another goal is to see how LocalGov Drupal can be managed in the long run.
Then Cumbria took over
This is where Cumbria stepped in. The project was conceived in Brighton & Hove and realised when Croydon followed Brighton's code. Croydon was in charge of the Discovery and Alpha stages, with support from other councils. It was felt that it was time for a shift with MHCLG and Croydon, and so the responsibility was transferred to Cumbria County Council.
Cumbria joined in at the end of Discovery. Since they're more traditional than Croydon or Brighton, it was a strong fit for LocalGov Drupal.
They needed somewhere to host their part in this development, and Code Enigma was only too happy to help.
What Code Enigma did
As with any local government body, budget is often a constraint. As Cumbria had not delved into LocalGov Drupal before, there was an understandable reluctance to commit a large sum of money ahead of a test round of development.
Following the hosting being awarded to Code Enigma, from April to July 2021, our sysadmin, Matthieu, worked on this.
We created a DevOps Workflow based on our open-source Fabric scripts and executed by a Jenkins CI server. Briefly, Jenkins is used to continually deploy and test software projects, making it much easier for our developers to integrate improvements to the project and for users to get a fresh build. It also enables us to deliver applications on a continuous basis by integrating with a variety of testing and implementation technologies.
We use Jenkins to automate the software deployment process and speed up the process for our clients. We also use it to allow the Cumbria to carry out certain “arms-length” commands on the server without needing remote access. Perhaps most usefully, we also allow for feature branching, so Cumbria’s developers can test an idea and show the product team before pushing it to staging.
Agility and automation are two important factors. Through continuous growth, integration, testing, monitoring and feedback, delivery, and deployment, each stage of the DevOps lifecycle works on narrowing the gap between development and operations and driving production.
Shared space on an existing Code Enigma server for a limited period and three hosted Jenkins “jobs” to run the orchestration.
We’re yet to see what happens, as Cumbria are busy working on their code. Though we’re of course hopeful. Cumbria needs to test LocalGovDrupal and see if it's fit for purpose. As AWS Public Sector partners, if Cumbria goes beyond alpha with this Drupal distribution we hope to be able, working closely with AWS, to assist them with setting up their own AWS account and clusters for Enterprise-grade Drupal hosting on their own terms.
Our director, Greg, has also been working on reducing the barrier to entry for those wanting to try using an AWS distribution as a hosting base. So, maybe the AWS Marketplace is a potential channel for councils to try LocalGovDrupal?