Skip to content
This repository has been archived by the owner on Jan 30, 2024. It is now read-only.

Decommissioned: GOV.UK's Capistrano-based application deployment code. Replaced by alphagov/govuk-helm-charts.

License

Notifications You must be signed in to change notification settings

alphagov/govuk-app-deployment

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GOV.UK application deployment scripts

Capistrano deployment scripts for applications running on GOV.UK.

Adding a new app

Create a new directory for your app based on one of the other apps e.g.

# Capfile

load "deploy"

$:.unshift(File.expand_path("../../lib", __FILE__))
load_paths << File.expand_path("../../recipes", __FILE__)

load "config/deploy"
# config/deploy.rb

set :application, "myapp"
set :capfile_dir, File.expand_path("../", File.dirname(__FILE__))
set :server_class, "myserverclass"
set :repository, "[email protected]/alphagov/myapp.git"

load "defaults"
load "ruby"
load "deploy/assets"

set :copy_exclude, [
  ".git/*",
]

How deployments work

The main jenkins.sh script is run by Jenkins to deploy each app.

Environment variables available to deploy scripts

There are a number of environment variables set in Jenkins that can be used in deploy scripts:

  • DEPLOY_TO - the environment being deployed to
  • DEPLOY_TASK - the deploy task selected in the Jenkins interface ("deploy", "deploy:setup", etc)
  • TAG - the tag/branch entered in the Jenkins interface ("release", "release_1234", "build-1234", etc)
  • HOSTFILTER - optional, comma-separated list of hosts to deploy to. We use this when deploying apps onto new machine instances. If a machine doesn't match one of the app's server_class then it is ignored. This is a Capistrano 2 feature.
  • ORGANISATION - The vCloud organisation being deployed to
  • CI_DEPLOY_JENKINS_API_KEY - API key used to fetch build artefacts from ci.dev.publishing.service.gov.uk.

Licence

MIT License

About

Decommissioned: GOV.UK's Capistrano-based application deployment code. Replaced by alphagov/govuk-helm-charts.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks