diff --git a/docs/documentation_routes.js b/docs/documentation_routes.js index 46daff61df..f885bc996a 100644 --- a/docs/documentation_routes.js +++ b/docs/documentation_routes.js @@ -7,9 +7,6 @@ const express = require('express') const marked = require('marked') const router = express.Router() -// Local dependencies -const utils = require('../lib/utils.js') - // Page routes // Docs index @@ -34,10 +31,14 @@ router.get('/install/:page', function (req, res) { res.render('install_template', { document: html }) }) -// Redirect to the zip of the latest release of the Prototype Kit on GitHub +// Redirect to download the current release zip from GitHub, based on the +// version number from package.json router.get('/download', function (req, res) { - var url = utils.getLatestRelease() - res.redirect(url) + const version = require('../package.json').version + + res.redirect( + `https://github.com/alphagov/govuk-prototype-kit/archive/v${version}.zip` + ) }) // Examples - examples post here diff --git a/lib/utils.js b/lib/utils.js index 676d806e1e..4dd99009c2 100644 --- a/lib/utils.js +++ b/lib/utils.js @@ -7,14 +7,10 @@ const marked = require('marked') const path = require('path') const portScanner = require('portscanner') const inquirer = require('inquirer') -const request = require('sync-request') // Local dependencies const config = require('../app/config.js') -// Variables -var releaseUrl = null - // Require core and custom filters, merges to one object // and then add the methods to Nunjucks environment exports.addNunjucksFilters = function (env) { @@ -131,38 +127,6 @@ exports.forceHttps = function (req, res, next) { next() } -// Synchronously get the URL for the latest release on GitHub and cache it -exports.getLatestRelease = function () { - if (releaseUrl !== null) { - // Release URL already exists - console.log('Release url cached:', releaseUrl) - return releaseUrl - } else { - // Release URL doesn't exist - try { - console.log('Getting latest release from GitHub') - - var res = request( - 'GET', - 'https://api.github.com/repos/alphagov/govuk-prototype-kit/releases/latest', - { - headers: { 'user-agent': 'node.js' } - } - ) - var data = JSON.parse(res.getBody('utf8')) - - // Cache releaseUrl before we return it - releaseUrl = `https://github.com/alphagov/govuk-prototype-kit/archive/${data.name}.zip` - - console.log('Release URL is', releaseUrl) - return releaseUrl - } catch (err) { - console.log("Couldn't retrieve release URL") - return 'https://github.com/alphagov/govuk-prototype-kit/releases/latest' - } - } -} - // Try to match a request to a template, for example a request for /test // would look for /app/views/test.html // and /app/views/test/index.html diff --git a/package.json b/package.json index 06b0456210..021260ebd7 100644 --- a/package.json +++ b/package.json @@ -42,7 +42,6 @@ "nunjucks": "^3.2.1", "portscanner": "^2.1.1", "require-dir": "^1.0.0", - "sync-request": "^6.0.0", "universal-analytics": "^0.4.16", "uuid": "^7.0.3" },