Unified DevOps Platform¶
[Status : Established] [Team : Platforms Team]
The Unified DevOps Platform is our paved road for building, deploying and operating software. It is an approach to software development which will be used for all new project development or architecturally significant changes made within the DevOps Division.
What the platform gives you¶
The Platform isn't simply a collection of technologies that we make use of. It is a set of templates, tools and boilerplates that let us operate efficiently, providing sensible defaults as well as an ongoing upgrade path.
For example, the solution provided for web application development is the DevOps Boilerplate Web Application, which includes the latest version of Django, a frontend module using TypeScript and React, and CI / CD configuration for running the application locally using Docker Compose and building a deployable Docker image. Crucially, the Boilerplate Web Application is managed via Copier, which allows any improvements made to the Boilerplate to be applied to applications which have already been created using it.
See Platform components for the full picture of what the Platform covers, the technologies behind each area, and where each component lives.
See why the Platform works this way for how we choose technologies, how teams adopt the Platform, and what it gives the division.
Getting started¶
The guides for using the Platform live in the knowledge quadrant that suits them. These are the usual entry points.
| I want to... | Guide |
|---|---|
| Create a new application from the boilerplate | Bootstrapping a new application |
| Set up Google Cloud projects for a product | Bootstrap a product |
| Add our common CI jobs to a Python project | Add a common pipeline to Python |
| Deploy an application | App deployment |
| Use our container base images | Containers |
| Publish a Python package | Publish a Python package |
| Send email from an application | Register with User Notify |
Getting help¶
Line managers and tech leads across the division are actively supporting those with less knowledge of Platform technologies by enabling team members to work closely with those who have more familiarity with the Platform, as well as making time for specific personal development.
Cross-division support comes from our established DevSecOps Community of Practice events, the fortnightly Show and Tell sessions, and continuous improvement of this guidebook.