Table of contents

The GDS Way and its content is intended for internal use by the GDS community.

Use configuration management

Use configuration management to manage, automate and standardise your infrastructure. When using configuration management you store your infrastructure as code and put that code in a version control system such as Git.

Puppet

Use Puppet to configure servers and virtual machines. Puppet is widely used within GDS. It is suitable for most systems and scaleable from the simplest to more complex systems.

If your environment consists of a simple deployment artefact like an Amazon Machine Image (AMI), Puppet may not be necessary, but the process for building that artefact must still be codified and version controlled.

Terraform

Use Terraform to configure third party cloud infrastructure like Amazon Web Services (AWS) or Fastly.

Terraform supports a large number of providers, and you can configure it to support multiple environments with different parameters. See the govuk-aws repository as an example.

Further reading

Find out more about configuration management in the Service Manual.

This page was last reviewed on 4 June 2018. It needs to be reviewed again on 4 December 2018 by the page owner #gds-way .
This page was set to be reviewed before 4 December 2018 by the page owner #gds-way. This might mean the content is out of date.