mirror of
https://github.com/pulsar-edit/pulsar.git
synced 2024-09-20 23:48:05 +03:00
49 lines
1.3 KiB
JavaScript
49 lines
1.3 KiB
JavaScript
'use strict';
|
|
|
|
const glob = require('glob');
|
|
const uploadToS3 = require('./lib/upload-to-s3');
|
|
|
|
const yargs = require('yargs');
|
|
const argv = yargs
|
|
.usage('Usage: $0 [options]')
|
|
.help('help')
|
|
.describe(
|
|
'crash-report-path',
|
|
'The local path of a directory containing crash reports to upload'
|
|
)
|
|
.describe(
|
|
's3-path',
|
|
'Indicates the S3 path in which the crash reports should be uploaded'
|
|
)
|
|
.wrap(yargs.terminalWidth()).argv;
|
|
|
|
async function uploadCrashReports() {
|
|
const crashesPath = argv.crashReportPath;
|
|
const crashes = glob.sync('/*.dmp', { root: crashesPath });
|
|
const bucketPath = argv.s3Path;
|
|
|
|
if (crashes && crashes.length > 0) {
|
|
console.log(
|
|
`Uploading ${
|
|
crashes.length
|
|
} private crash reports to S3 under '${bucketPath}'`
|
|
);
|
|
|
|
await uploadToS3(
|
|
process.env.ATOM_RELEASES_S3_KEY,
|
|
process.env.ATOM_RELEASES_S3_SECRET,
|
|
process.env.ATOM_RELEASES_S3_BUCKET,
|
|
bucketPath,
|
|
crashes,
|
|
'private'
|
|
);
|
|
}
|
|
}
|
|
|
|
// Wrap the call the async function and catch errors from its promise because
|
|
// Node.js doesn't yet allow use of await at the script scope
|
|
uploadCrashReports().catch(err => {
|
|
console.error('An error occurred while uploading crash reports:\n\n', err);
|
|
process.exit(1);
|
|
});
|