diff --git a/download/src/index.js b/download/src/index.js index 9e719b8..a82bc1e 100644 --- a/download/src/index.js +++ b/download/src/index.js @@ -14,35 +14,31 @@ const targetWin32 = path.join(__dirname, 'now.exe') const target = process.platform === 'win32' ? targetWin32 : now const partial = target + '.partial' +const packagePath = path.join(__dirname, '..', '..', 'package.json') +const packageJSON = require(packagePath) + const platformToName = { darwin: 'now-macos', linux: 'now-linux', win32: 'now-win.exe' } -const getLatest = async () => { - const res = await fetch('https://now-cli-latest.zeit.sh') - - if (res.status !== 200) { - throw new Error(res.statusText) - } - - return res.json() -} - async function main() { info('Retrieving the latest CLI version...') - const latest = await getLatest() + const downloadURL = `https://api.github.com/repos/zeit/now-cli/releases/tags/${packageJSON.version}` + const responseLatest = await fetch(downloadURL) + const latest = await responseLatest.json() + const name = platformToName[process.platform] - const asset = latest.assets.filter(a => a.name === name)[0] + const asset = latest.assets.find(a => a.name === name) info('For the sources, check out: https://github.com/zeit/now-cli') // Print an empty line console.log('') - enableProgress('Downloading now CLI ' + latest.tag) + enableProgress('Downloading now CLI ' + packageJSON.version) showProgress(0) const { url } = asset