beekeeper-util
Version:
CLI utility for managing the beekeeper-service
47 lines (36 loc) • 1.24 kB
text/coffeescript
colors = require 'colors'
program = require 'commander'
packageJSON = require './package.json'
BeekeeperService = require './src/beekeeper-service'
program
.version packageJSON.version
.usage '[options] <project-name>'
.option '-t, --tag <tag>', 'Project version'
.option '-o, --owner <octoblu>', 'Project owner'
class Command
constructor: () ->
process.on 'uncaughtException',
= new BeekeeperService { }
parseOptions: =>
program.parse process.argv
repo = program.args[0] || .name
owner = program.owner ? .owner
tag = program.tag ? .version
new Error 'Missing repo' unless repo?
new Error 'Missing tag' unless tag?
return { repo, owner, tag }
run: =>
{repo, owner, tag} = ()
.delete { repo, owner, tag }, (error) =>
return error if error?
console.log colors.bold("[DELETED]"), "tag #{tag}"
()
dieHelp: (error) =>
console.error error.toString()
program.outputHelp()
process.exit 1
die: (error) =>
return process.exit(0) unless error?
console.error error.stack
process.exit 1
module.exports = Command