UNPKG

node_terminus

Version:

Pantheon Terminus cli wrapper and extensions

72 lines (64 loc) 1.57 kB
//let Pantheon = require('./nt/libs/pantheon/index') //let p = new Pantheon() //let c = p.addCmd('site','','some description','org') const _ = require('lodash') const NodeTerminus = require('./app') let nt = new NodeTerminus(); // let loginAndRun = async () => { // return nt.terminus.cmd.auth_login.run() // .then(()=>{ // return nt.terminus.cmd.auth_whoami.run('') // .then(data => { // return data // }) // }) // .then(data => { // this.whoami = data.trim() // console.log(`Logged in as: ${this.whoami}`) // }) // } async function querySiteIds() { return nt.terminus.cmd.site_list.run('--format=json') } let getResults = getSiteIds async function getSiteIds() { return querySiteIds() .then(data => { let sites = _.map(JSON.parse(data),d=>{ return d }) return sites }) } async function addSiteEnv(site_name,site_id) { return nt.terminus.cmd.env_list.run('--format=json',`${site_id}`) } getSiteIds() .then(sites =>{ return _.each(sites,s =>{ let getEnvs = async (site_id) =>{ return nt.terminus.cmd.env_list.run('--format=json',`${site_id}`) .then((envs) =>{ return envs }) } return getEnvs(s.id) .then(envs => { let results = { name: s.name, envs: envs } return results }) }) }) .then(results => { let siteResults = _.map(results,r =>{ let s = { site: r.name, envs: r } return s }); return siteResults; })