Files
dbgate/packages/api/src/utility/downloader.js
2020-11-29 19:47:56 +01:00

26 lines
605 B
JavaScript

const axios = require('axios');
const fs = require('fs');
function saveStreamToFile(pipedStream, fileName) {
return new Promise((resolve, reject) => {
const fileStream = fs.createWriteStream(fileName);
fileStream.on('close', () => resolve());
pipedStream.pipe(fileStream);
});
}
async function downloadFile(url, file) {
console.log(`Downloading ${url} into ${file}`);
const tarballResp = await axios.default({
method: 'get',
url,
responseType: 'stream',
});
await saveStreamToFile(tarballResp.data, file);
}
module.exports = {
saveStreamToFile,
downloadFile,
};