UNPKG

atomic-reactor-cli

Version:

A CLI for creating Atomic Reactor Awesomeness

55 lines (45 loc) 1.31 kB
const op = require('object-path'); module.exports = ({ params, props }) => { const { config } = props; if (!config) { return Promise.reject({ msg: 'props.config is a required parameter' }); } const app = op.get( params, 'app', op.get(config, 'registry.app', 'Actinium'), ); const serverURL = op.get( params, 'server', op.get(config, 'registry.server'), ); if (!serverURL) { return Promise.reject({ msg: 'params.server is a required parameter', }); } const sessionToken = op.get( params, 'sessionToken', op.get(config, 'registry.sessionToken'), ); Actinium.initialize(app); Actinium.serverURL = serverURL; if (sessionToken) { return Actinium.Cloud.run('session-validate', {}, { sessionToken }).then( () => sessionToken, ); } else { let { password, username } = params; if (!password || !username) { return Promise.reject({ msg: 'params.username and params.password are required parameters', }); } return Actinium.User.logIn(username, password).then(user => user.getSessionToken(), ); } };