Skip to content

Commit

Permalink
refactor(database): replace prmpt with inquirer
Browse files Browse the repository at this point in the history
* * *

This commit was sponsored by The Hoodie Firm.
You can hire The Hoodie Firm:

http://go.hood.ie/thehoodiefirm
  • Loading branch information
boennemann committed Aug 15, 2015
1 parent 2fd80b4 commit 95c4666
Show file tree
Hide file tree
Showing 2 changed files with 32 additions and 35 deletions.
65 changes: 31 additions & 34 deletions lib/database/utils.js
@@ -1,13 +1,25 @@
var fs = require('fs')
var path = require('path')

var _ = require('lodash')
var async = require('async')
var crypto = require('crypto')
var prmpt = require('prompt')
var inquirer = require('inquirer')
var request = require('request')

var log = require('../log')

var passwordPrompt = {
type: 'password',
name: 'password',
validate: function (input) {
return !!input.trim()
},
filter: function (input) {
return input.trim()
}
}

exports.isAdminParty = function (env_config, callback) {
log.silly('database', 'Checking for admin party mode')
request.get(
Expand Down Expand Up @@ -39,24 +51,18 @@ exports.saveAdminUser = function (env_config, couch_user, couch_pwd, user, callb
exports.promptAdminUser = function (callback) {
if (process.env.CI) {
// hardcode username as admin for now
var result = {}
result.name = 'admin'
result.password = 'travis-ci'
return callback(null, result)
return callback(null, {
name: 'admin',
password: 'travis-ci'
})
}

prmpt.get({
properties: {
password: {
description: 'Please set an admin password ',
required: true,
hidden: true
}
}
}, function (err, result) {
inquirer.prompt(_.assign(passwordPrompt, {
message: 'Please set and admin password'
}), function (answer) {
// hardcode username as admin for now
result.name = 'admin'
return callback(err, result)
answer.name = 'admin'
return callback(null, answer)
})
}

Expand Down Expand Up @@ -109,24 +115,15 @@ exports.updateCouchCredentials = function (env_config, callback) {
}

exports.promptCouchCredentials = function (callback) {
console.log('Please enter your database _admin credentials:')
prmpt.get({
properties: {
name: {
description: 'Username',
required: true
},
password: {
description: 'Password',
required: true,
hidden: true
}
}
}, function (err, result) {
if (err) {
return callback(err)
}
return callback(null, result.name, result.password)
inquirer.prompt([{
name: 'username',
message: 'Please enter your database _admin username',
validate: passwordPrompt.validate,
filter: passwordPrompt.filter
}, _.assign(passwordPrompt, {
message: 'Please enter your database _admin password'
})], function (answers) {
return callback(null, answers.password, answers.password)
})
}

Expand Down
2 changes: 1 addition & 1 deletion package.json
Expand Up @@ -13,6 +13,7 @@
"h2o2": "^4.0.1",
"hapi": "^9.0.1",
"inert": "^3.0.1",
"inquirer": "^0.9.0",
"lodash": "^3.10.0",
"mkdirp": "^0.5.0",
"moment": "^2.10.6",
Expand All @@ -21,7 +22,6 @@
"npmlog": "^1.2.1",
"optimist": "^0.6.1",
"ports": "^1.1.0",
"prompt": "^0.2.9",
"request": "^2.60.0",
"semver": "^5.0.1",
"spawn-pouchdb-server": "^3.0.0",
Expand Down

0 comments on commit 95c4666

Please sign in to comment.