mirror of https://github.com/lukechilds/node.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
26 lines
753 B
26 lines
753 B
var log = require('npmlog')
|
|
var request = require('request')
|
|
|
|
function getLatestNodejsVersion (url, cb) {
|
|
var tracker = log.newItem('getLatestNodejsVersion', 1)
|
|
tracker.info('getLatestNodejsVersion', 'Getting Node.js release information')
|
|
var version = ''
|
|
url = url || 'https://nodejs.org/dist/index.json'
|
|
request(url, function (e, res, index) {
|
|
tracker.finish()
|
|
if (e) return cb(e)
|
|
if (res.statusCode !== 200) {
|
|
return cb(new Error('Status not 200, ' + res.statusCode))
|
|
}
|
|
try {
|
|
JSON.parse(index).forEach(function (item) {
|
|
if (item.lts && item.version > version) version = item.version
|
|
})
|
|
cb(null, version)
|
|
} catch (e) {
|
|
cb(e)
|
|
}
|
|
})
|
|
}
|
|
|
|
module.exports = getLatestNodejsVersion
|
|
|