Skip to content

Instantly share code, notes, and snippets.

@ernestofreyreg
Last active November 23, 2020 16:27
Show Gist options
  • Save ernestofreyreg/1cc8094b2f91cc83dc2369de2373a949 to your computer and use it in GitHub Desktop.
Save ernestofreyreg/1cc8094b2f91cc83dc2369de2373a949 to your computer and use it in GitHub Desktop.
import pm2 from 'pm2'
import devKong from 'dev-kong'
const pm2Connect = () =>
new Promise((resolve, reject) => {
pm2.connect(err => {
if (err) {
return reject(err)
}
return resolve(undefined)
})
})
const pm2List = () =>
new Promise((resolve, reject) => {
pm2.list((err, list) => {
if (err) {
return reject(err)
}
resolve(list)
})
})
const pm2StopAndDelete = (name: string) =>
new Promise((resolve, reject) => {
pm2.stop(name, err => {
if (err) {
return reject(err)
}
pm2.delete(name, err => {
if (err) {
return reject(err)
}
resolve(undefined)
})
})
})
devKong
.stopKongServer({ silent: true })
.then(pm2Connect)
.then(pm2List)
.then((list: any[]) =>
Promise.all(
list.map(item => {
console.log(`- ${item.name}`)
return pm2StopAndDelete(item.name)
})
)
)
.then(() => {
pm2.disconnect()
console.log('All stopped')
})
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment