Skip to main content

Get started with the applications

GovWifi applications are written in Ruby using either Rails and Sinatra web frameworks. Our infrastructure is written in Terraform.

To get started you’ll need Ruby installed on your system. We recommend using a Ruby version manager like rbenv which will allow you to install the correct version of Ruby for GovWifi projects.

We also recommend using the Terraform version manager tfenv to ensure we work with the same Terraform version.

Building a development / test environment

Each GovWifi application Github repository contains a README detailing how to build a development environment for running tests and making local changes.

Most of the projects use a combination of Make, Docker and docker-compose to create the necessary containers and seed data for a local development environment.

Bug and feature workflow

Please read the GDS Git styleguide which details how your code commits should be structured.

Once you’re happy with your changes locally, submit a pull request. Raising a pull request in GitHub automatically notifies the #govwifi-monitoring Slack channel.

We follow the GDS Way for pull request best practices.

Pull request titles should be pithy and under Github’s 72 character limit. If the PR is a work in progress add WIP to the title so GitHub won’t alert in the #govwifi-monitoring channel.

Complete the pull request template by adding information to the “What” and “Why” sections:

### What
Describe the change

### Why
Describe why the change was necessary

If applicable, link to a Trello card or screen shots.

Pull requests are linted and tests are run on Concourse CI, the resulting status is shown on the PR.

Merging and deploying changes

Once approved and merged your PR is automatically built and deployed to our staging environment where you can perform further acceptance testing and smoke testing. After that deploying to production is a manual step in Concourse CI.

This page was last reviewed on 13 July 2021. It needs to be reviewed again on 13 October 2021 by the page owner #govwifi .
This page was set to be reviewed before 13 October 2021 by the page owner #govwifi. This might mean the content is out of date.