UNPKG

fin

Version:

Developer CLI for Fin. Fin is the easiest way to launch your own SaaS.

46 lines (37 loc) 1.2 kB
'use strict' const clipboard = require('clipboardy') const handleError = require('../handle-error') const parseProject = require('../parse-project') const spinner = require('../spinner') const zipProject = require('../zip-project') module.exports = (program, client) => { program .command('deploy [path]') .description('Creates a new deployment') .option('-f, --force', 'Force the creation of a new deployment', false) .action(async (arg, opts) => { if (arg) program.config = arg program.requireAuthentication() try { const project = await parseProject(program) if (program.debug) { console.log(JSON.stringify(project, null, 2)) } const zipBuffer = await zipProject(program, project) const result = await spinner( client.createDeployment({ ...project, force: opts.force, data: zipBuffer.toString('base64') }), 'Creating deployment' ) if (program.clipboard) { clipboard.writeSync(result.url) } console.log(JSON.stringify(result, null, 2)) } catch (err) { handleError(err) } }) }