Files
firebase-tools/bin/firebase

53 lines
1.2 KiB
JavaScript
Executable File

#!/usr/bin/env node
'use strict';
var updateNotifier = require('update-notifier');
var pkg = require('../package.json');
var client = require('..');
var FirebaseError = require('../lib/error');
var errorOut = require('../lib/errorOut');
var winston = require('winston');
var logger = require('../lib/logger');
var fs = require('fs');
var path = require('path');
var logFilename = path.join(process.cwd(), '/firebase-debug.log');
process.on('exit', function(code) {
code = process.exitCode || code;
if (code < 2 && fs.existsSync(logFilename)) {
fs.unlinkSync(logFilename);
}
});
require('exit-code');
logger.add(winston.transports.Console, {
level: process.env.DEBUG ? 'debug' : 'info',
showLevel: true,
colorize: true
}).add(winston.transports.File, {
level: 'debug',
filename: logFilename,
json: false
});
updateNotifier({pkg: pkg}).notify();
try {
client.cli.parse(process.argv);
} catch (e) {
var err = e;
if (err.name !== 'FirebaseError') {
err = new FirebaseError('An unexpected error has occurred. Please contact support', {
status: 500,
original: err,
exit: 2
});
}
errorOut(client, err);
}
if (!process.argv.slice(2).length) {
client.cli.help();
}