actions-hugo/get-latest-version.js
2019-09-16 03:43:48 +09:00

24 lines
728 B
JavaScript

function getLatestVersion() {
return new Promise((resolve, reject) => {
// if (typeof milliseconds !== "number") {
// throw new Error("milleseconds not a number");
// }
const xhr = new XMLHttpRequest();
const url = "https://api.github.com/repos/gohugoio/hugo/releases/latest";
xhr.open("GET", url);
xhr.send();
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
const result = JSON.parse(xhr.responseText);
const latestURL = result["assets"][0].browser_download_url;
const latestVersion = latestURL.match(/(\d+).(\d+).(\d+)/g)[0];
resolve(latestVersion);
}
};
});
}
module.exports = getLatestVersion;