diff --git a/bin.js b/bin.js index e5260cc..53f8570 100755 --- a/bin.js +++ b/bin.js @@ -54,25 +54,28 @@ if (opts.force) { process.exit(1) } -const startDownload = function (downloadUrl) { - download(downloadUrl, opts, function (err) { - if (err) { - log.warn('install', err.message) - return process.exit(1) - } - log.info('install', 'Successfully installed prebuilt binary!') - }) -} +download(util.getDownloadUrl(opts), opts, function (err) { + if (err) { + if (opts.token) { + log.info('install', 'public download failed, retrying using token') + asset(opts, function (err, assetId) { + if (err) { + log.warn('install', err.message) + return process.exit(1) + } -if (opts.token) { - asset(opts, function (err, assetId) { - if (err) { + download(util.getAssetUrl(opts, assetId), opts, function (err) { + if (err) { + log.warn('install', err.message) + return process.exit(1) + } + log.info('install', 'Successfully installed prebuilt binary!') + }) + }) + } else { log.warn('install', err.message) return process.exit(1) } - - startDownload(util.getAssetUrl(opts, assetId)) - }) -} else { - startDownload(util.getDownloadUrl(opts)) -} + } + log.info('install', 'Successfully installed prebuilt binary!') +})