npm / npme-installer

npm Enterprise installer
https://www.npmjs.com/enterprise
Other
35 stars 21 forks source link

Installation process on RHEL7: almost working... getting sh: /etc/npme/node_modules/.bin/ndm: Permission denied #63

Closed marcellodesales closed 9 years ago

marcellodesales commented 9 years ago

I got the installer to work on RHEL7... However, there's a couple of things I needed to do...

  1. Created the npme directory manually at /etc/npme
  2. The installation process worked, but I noticed a failure in

sh: /etc/npme/node_modules/.bin/ndm: Permission denied

  1. The who process is below... What else do I need to setup in this machine... I'm cloning this repo and doing "npm install" instead of "npm install npme"...
  2. The final problem is that it could not install those... What should I check?
generating service wrappers:
ENOENT, no such file or directory '/etc/init/npm-auth-ws.conf'
  generated /etc/init/npm-auth-ws.conf
  log path: /etc/npme/logs/npm-auth-ws.log
ENOENT, no such file or directory '/etc/init/policy-follower.conf'
  generated /etc/init/policy-follower.conf
  log path: /etc/npme/logs/policy-follower.log
ENOENT, no such file or directory '/etc/init/validate-and-store.conf'
  generated /etc/init/validate-and-store.conf
  log path: /etc/npme/logs/validate-and-store.log
ENOENT, no such file or directory '/etc/init/registry-frontdoor.conf'
  generated /etc/init/registry-frontdoor.conf
  log path: /etc/npme/logs/registry-frontdoor.log
  package-whitelist does not have start script.
  generated /etc/init/package-whitelist.conf
  log path: /etc/npme/logs/package-whitelist.log
[npme@pppdc9prd8jb tmp]$ cd npme-installer/
[npme@pppdc9prd8jb npme-installer]$ ls -la
total 28
drwx------.  6 npme npme 4096 Jun 19 23:10 .
drwxrwxrwt. 34 root root 4096 Jun 19 23:10 ..
drwx------.  2 npme npme   20 Jun 19 23:10 bin
drwx------.  8 npme npme 4096 Jun 19 23:10 .git
-rw-------.  1 npme npme   23 Jun 19 23:10 .gitignore
drwx------.  2 npme npme   86 Jun 19 23:10 lib
-rw-------.  1 npme npme  906 Jun 19 23:10 package.json
-rw-------.  1 npme npme  787 Jun 19 23:10 README.md
drwx------.  2 npme npme   87 Jun 19 23:10 test
-rw-------.  1 npme npme   88 Jun 19 23:10 .travis.yml
[npme@pppdc9prd8jb npme-installer]$ npm install --save ndm
ndm@3.11.0 node_modules/ndm
├── xml-escape@1.0.0
├── node-uuid@1.4.3
├── async@0.9.2
├── string@1.9.1
├── temp@0.8.3 (os-tmpdir@1.0.1, rimraf@2.2.8)
├── rc@0.4.0 (strip-json-comments@0.1.3, deep-extend@0.2.11, ini@1.1.0, minimist@0.0.10)
├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.3, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0)
├── mkdirp@0.5.1 (minimist@0.0.8)
├── ejs@1.0.0
├── rimraf@2.4.0 (glob@4.5.3)
├── yargs@3.11.0 (decamelize@1.0.0, camelcase@1.1.0, window-size@0.1.1, cliui@2.1.0)
├── lodash@2.4.2
├── inquirer@0.5.1 (mute-stream@0.0.4, through@2.3.7, async@0.8.0, chalk@0.4.0, readline2@0.1.1, cli-color@0.3.3)
└── npmconf@1.1.9 (uid-number@0.0.5, ini@1.3.4, inherits@2.0.1, once@1.3.2, osenv@0.1.2, semver@2.3.2, config-chain@1.1.9, nopt@3.0.2)

[npme@pppdc9prd8jb npme-installer]$ sudo chown npme /etc/npme
[npme@pppdc9prd8jb npme-installer]$ chmod 777 /etc/npme
[npme@pppdc9prd8jb npme-installer]$ npm install
\
> npme@2.0.2 postinstall /tmp/npme-installer
> node ./bin/npme.js install

[?] this will install npmE on this server (you should only run this on a dedicated machine), continue? Yes
[?] enter your billing email: marcellodesale
[?] enter your license key: ****************
? have you installed ansible on this computer? Yes
? have you installed CouchDB on this computer? Yes
? have you installed Redis on this computer? Yes
? have you installed nginx on this computer? Yes
Installing OS dependencies with Ansible:

PLAY [npme] ******************************************************************* 

GATHERING FACTS *************************************************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | create npme group] ***************************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | create npme user] ****************************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | create npme directories] *********************************** 
changed: [127.0.0.1] => (item=/etc/npme/logs)

TASK: [bcoe.npme | create npme directories] *********************************** 
changed: [127.0.0.1] => (item=/etc/npme)
changed: [127.0.0.1] => (item=/etc/npme/bin)
changed: [127.0.0.1] => (item=/etc/npme/node_modules)

TASK: [bcoe.npme | install couch-app bin] ************************************* 
changed: [127.0.0.1]

TASK: [bcoe.npme | install bootstrap config] ********************************** 
changed: [127.0.0.1] => (item=package.json)
changed: [127.0.0.1] => (item=service.json)

TASK: [bcoe.npme | build-essentials] ****************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install dependencies] ************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | download couchdb tarball] ********************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | unarchive] ************************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | build] ***************************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create couchdb user] *************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | Change the ownership of the couchdb directories] *********** 
skipping: [127.0.0.1] => (item=/usr/local/etc/couchdb)
skipping: [127.0.0.1] => (item=/usr/local/var/lib/couchdb)
skipping: [127.0.0.1] => (item=/usr/local/var/log/couchdb)
skipping: [127.0.0.1] => (item=/usr/local/var/run/couchdb)

TASK: [bcoe.npme | install init.d script] ************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | make couchdb run at boot] ********************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | remove couchdb tarball] ************************************ 
skipping: [127.0.0.1]

TASK: [bcoe.npme | add 8080 to iptables] ************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | save iptables] ********************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | restart redis] ********************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install npm@npme-beta] ************************************* 
changed: [127.0.0.1]

TASK: [bcoe.npme | install ndm] *********************************************** 
changed: [127.0.0.1]

TASK: [bcoe.npme | install python-pycurl] ************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | build-essentials] ****************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | add repository for modern redis] *************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install redis] ********************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install apt packages] ************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create db directory] *************************************** 
changed: [127.0.0.1]

TASK: [bcoe.npme | include_vars centos65.yml] ********************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | include_vars unknown.yml] ********************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | copy nginx configuration] ********************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | copy couchdb configuration] ******************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create npme directories] *********************************** 
skipping: [127.0.0.1] => (item=/etc/npme)
skipping: [127.0.0.1] => (item=/etc/npme/bin)
skipping: [127.0.0.1] => (item=/etc/npme/node_modules)

TASK: [bcoe.npme | chown db directory] **************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | more restrictive permissions] ****************************** 
skipping: [127.0.0.1] => (item=package.json)
skipping: [127.0.0.1] => (item=service.json)

PLAY RECAP ******************************************************************** 
127.0.0.1                  : ok=13   changed=7    unreachable=0    failed=0   

install complete!
sh: /etc/npme/node_modules/.bin/ndm: Permission denied
Configuring npmeE services:

PLAY [npme] ******************************************************************* 

GATHERING FACTS *************************************************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | create npme group] ***************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create npme user] ****************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create npme directories] *********************************** 
skipping: [127.0.0.1] => (item=/etc/npme/logs)

TASK: [bcoe.npme | create npme directories] *********************************** 
skipping: [127.0.0.1] => (item=/etc/npme)
skipping: [127.0.0.1] => (item=/etc/npme/bin)
skipping: [127.0.0.1] => (item=/etc/npme/node_modules)

TASK: [bcoe.npme | install couch-app bin] ************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install bootstrap config] ********************************** 
skipping: [127.0.0.1] => (item=package.json)
skipping: [127.0.0.1] => (item=service.json)

TASK: [bcoe.npme | build-essentials] ****************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install dependencies] ************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | download couchdb tarball] ********************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | unarchive] ************************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | build] ***************************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create couchdb user] *************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | Change the ownership of the couchdb directories] *********** 
skipping: [127.0.0.1] => (item=/usr/local/etc/couchdb)
skipping: [127.0.0.1] => (item=/usr/local/var/lib/couchdb)
skipping: [127.0.0.1] => (item=/usr/local/var/log/couchdb)
skipping: [127.0.0.1] => (item=/usr/local/var/run/couchdb)

TASK: [bcoe.npme | install init.d script] ************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | make couchdb run at boot] ********************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | remove couchdb tarball] ************************************ 
skipping: [127.0.0.1]

TASK: [bcoe.npme | add 8080 to iptables] ************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | save iptables] ********************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | restart redis] ********************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install npm@npme-beta] ************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install ndm] *********************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install python-pycurl] ************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | build-essentials] ****************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | add repository for modern redis] *************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install redis] ********************************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | install apt packages] ************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | create db directory] *************************************** 
skipping: [127.0.0.1]

TASK: [bcoe.npme | include_vars centos65.yml] ********************************* 
skipping: [127.0.0.1]

TASK: [bcoe.npme | include_vars unknown.yml] ********************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | copy nginx configuration] ********************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | copy couchdb configuration] ******************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | create npme directories] *********************************** 
changed: [127.0.0.1] => (item=/etc/npme)
ok: [127.0.0.1] => (item=/etc/npme/bin)
ok: [127.0.0.1] => (item=/etc/npme/node_modules)

TASK: [bcoe.npme | chown db directory] **************************************** 
ok: [127.0.0.1]

TASK: [bcoe.npme | more restrictive permissions] ****************************** 
changed: [127.0.0.1] => (item=package.json)
changed: [127.0.0.1] => (item=service.json)

PLAY RECAP ******************************************************************** 
127.0.0.1                  : ok=11   changed=2    unreachable=0    failed=0   

configuration complete!
npm WARN package.json @npm/npm-enterprise-services@2.0.0 No README data
npm WARN package.json @npm/npm-enterprise-services@2.0.0 No license field.

> xxhash@0.2.2 install /etc/npme/node_modules/@npm/registry-frontdoor/node_modules/light-cycle/node_modules/xxhash
> node-gyp rebuild

make: Entering directory `/etc/npme/node_modules/@npm/registry-frontdoor/node_modules/light-cycle/node_modules/xxhash/build'
  CXX(target) Release/obj.target/hash/src/hash.o
  CC(target) Release/obj.target/hash/deps/xxhash/xxhash.o
  SOLINK_MODULE(target) Release/obj.target/hash.node
  COPY Release/hash.node
make: Leaving directory `/etc/npme/node_modules/@npm/registry-frontdoor/node_modules/light-cycle/node_modules/xxhash/build'

> ursa@0.8.5 install /etc/npme/node_modules/@npm/registry-frontdoor/node_modules/ursa
> node-gyp rebuild

make: Entering directory `/etc/npme/node_modules/@npm/registry-frontdoor/node_modules/ursa/build'
  CXX(target) Release/obj.target/ursaNative/src/ursaNative.o
  CXX(target) Release/obj.target/ursaNative/src/asprintf.o
  SOLINK_MODULE(target) Release/obj.target/ursaNative.node
  COPY Release/ursaNative.node
make: Leaving directory `/etc/npme/node_modules/@npm/registry-frontdoor/node_modules/ursa/build'

> dtrace-provider@0.3.2 install /etc/npme/node_modules/@npm/npm-auth-ws/node_modules/restify/node_modules/dtrace-provider
> node scripts/install.js

> dtrace-provider@0.3.2 install /etc/npme/node_modules/@npm/registry-frontdoor/node_modules/restify/node_modules/dtrace-provider
> node scripts/install.js

npm WARN deprecated showdown@0.3.1: IMPORTANT hotfix

> dtrace-provider@0.3.2 install /etc/npme/node_modules/@npm/validate-and-store/node_modules/restify/node_modules/dtrace-provider
> node scripts/install.js

> dtrace-provider@0.5.0 install /etc/npme/node_modules/@npm/npm-auth-ws/node_modules/restify/node_modules/bunyan/node_modules/dtrace-provider
> node scripts/install.js

> dtrace-provider@0.5.0 install /etc/npme/node_modules/@npm/registry-frontdoor/node_modules/restify/node_modules/bunyan/node_modules/dtrace-provider
> node scripts/install.js

|
> dtrace-provider@0.2.8 install /etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/watershed/node_modules/dtrace-provider
> node-gyp rebuild

make: Entering directory `/etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/watershed/node_modules/dtrace-provider/build'
  TOUCH Release/obj.target/DTraceProviderStub.stamp
make: Leaving directory `/etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/watershed/node_modules/dtrace-provider/build'

> dtrace-provider@0.5.0 install /etc/npme/node_modules/@npm/validate-and-store/node_modules/restify/node_modules/bunyan/node_modules/dtrace-provider
> node scripts/install.js

/
> dtrace-provider@0.2.8 install /etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/restify/node_modules/dtrace-provider
> node-gyp rebuild

make: Entering directory `/etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/restify/node_modules/dtrace-provider/build'
  TOUCH Release/obj.target/DTraceProviderStub.stamp
make: Leaving directory `/etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/restify/node_modules/dtrace-provider/build'

> dtrace-provider@0.2.8 install /etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/bunyan/node_modules/dtrace-provider
> node-gyp rebuild

make: Entering directory `/etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/bunyan/node_modules/dtrace-provider/build'
  TOUCH Release/obj.target/DTraceProviderStub.stamp
make: Leaving directory `/etc/npme/node_modules/@npm/validate-and-store/node_modules/multi-fs/node_modules/manta-client/node_modules/manta/node_modules/bunyan/node_modules/dtrace-provider/build'
npm WARN prefer global npm@2.11.3 should be installed with -g
@npm/npm-auth-ws@2.0.2 node_modules/@npm/npm-auth-ws
├── redis-url@0.3.1
├── try-require@1.0.0
├── basic-auth-parser@0.0.2
├── @npm/npm-urls@1.2.0
├── replify@1.2.0
├── @npm/restify-monitor@0.1.4 (common-log-string@0.2.1)
├── yargs@1.3.3
├── redis@0.10.3
├── bluebird@1.2.4
├── lodash@2.4.2
├── @npm/npme-auth-github@1.2.1 (github-url-from-git@1.4.0, redis@0.12.1, bluebird@2.9.30, github@0.2.2)
├── request@2.58.0 (caseless@0.10.0, aws-sign2@0.5.0, forever-agent@0.6.1, stringstream@0.0.4, tunnel-agent@0.4.0, oauth-sign@0.8.0, isstream@0.1.2, extend@2.0.1, json-stringify-safe@5.0.1, node-uuid@1.4.3, combined-stream@1.0.5, qs@3.1.0, mime-types@2.0.14, http-signature@0.11.0, bl@0.9.4, tough-cookie@2.0.0, form-data@1.0.0-rc1, har-validator@1.7.1, hawk@2.3.1)
├── restify@2.8.5 (assert-plus@0.1.5, escape-regexp-component@1.0.2, tunnel-agent@0.4.0, deep-equal@0.2.2, keep-alive-agent@0.0.1, negotiator@0.4.9, lru-cache@2.6.4, mime@1.3.4, formidable@1.0.17, qs@1.2.2, node-uuid@1.4.3, once@1.3.2, backoff@2.4.1, semver@2.3.2, spdy@1.32.0, verror@1.6.0, http-signature@0.10.1, csv@0.4.5, dtrace-provider@0.3.2, bunyan@1.4.0)
└── @npm/enterprise-configurator@0.1.22 (chalk@0.5.1, bole@2.0.0, string@1.9.1, bistre@1.0.1, numbat-emitter@1.1.2)

@npm/registry-frontdoor@2.1.0 node_modules/@npm/registry-frontdoor
├── redis-url@0.3.1
├── @npm/npm-urls@1.0.1
├── replify@1.2.0
├── common-log-string@0.1.4 (prettydate@0.0.1)
├── redis@0.12.1
├── npm-humans@2.6.0 (gravatar@1.1.1)
├── semver@4.3.6
├── rss@1.1.1 (xml@1.0.0, mime-types@2.1.1)
├── light-cycle@1.2.0 (skiplist@1.0.0, xxhash@0.2.2)
├── ursa@0.8.5 (bindings@1.2.1, nan@1.8.4)
├── JSONStream@0.10.0 (through@2.3.7, jsonparse@0.0.5)
├── joi@4.0.0 (topo@1.0.2, hoek@2.14.0)
├── nock@0.33.0 (propagate@0.2.2, debug@0.8.1, lodash@2.4.1)
├── request@2.53.0 (caseless@0.9.0, aws-sign2@0.5.0, forever-agent@0.5.2, stringstream@0.0.4, oauth-sign@0.6.0, tunnel-agent@0.4.0, isstream@0.1.2, json-stringify-safe@5.0.1, node-uuid@1.4.3, qs@2.3.3, combined-stream@0.0.7, form-data@0.2.0, mime-types@2.0.14, http-signature@0.10.1, bl@0.9.4, tough-cookie@2.0.0, hawk@2.3.1)
├── @npm/validate-and-store@1.0.3 (stream-buffers@0.2.6, semver@2.3.2, mv@2.1.0, mkdirp@0.5.1, rimraf@2.4.0, bluebird@2.9.30, lodash@2.4.2)
├── restify@2.8.5 (assert-plus@0.1.5, escape-regexp-component@1.0.2, tunnel-agent@0.4.0, deep-equal@0.2.2, keep-alive-agent@0.0.1, negotiator@0.4.9, lru-cache@2.6.4, mime@1.3.4, once@1.3.2, formidable@1.0.17, qs@1.2.2, node-uuid@1.4.3, backoff@2.4.1, semver@2.3.2, verror@1.6.0, spdy@1.32.0, http-signature@0.10.1, csv@0.4.5, dtrace-provider@0.3.2, bunyan@1.4.0)
├── moment@2.8.4
├── lodash@3.1.0
└── @npm/enterprise-configurator@0.1.22 (bole@2.0.0, chalk@0.5.1, string@1.9.1, yargs@1.3.3, bistre@1.0.1, lodash@2.4.2, numbat-emitter@1.1.2)

@npm/policy-follower@0.0.13 node_modules/@npm/policy-follower
├── path@0.4.10
├── extend@1.3.0
├── crypto@0.0.3
├── async@0.9.2
├── touch@0.0.3 (nopt@1.0.10)
├── yargs@1.3.3
├── optimist@0.6.1 (wordwrap@0.0.3, minimist@0.0.10)
├── code@1.3.0 (hoek@2.14.0)
├── npm-normalize@0.2.6 (semver@1.1.4)
├── follow@0.11.4 (debug@0.7.4, browser-request@0.3.3)
├── rimraf@2.4.0 (glob@4.5.3)
├── bluebird@2.9.30
├── lodash@2.4.2
├── request@2.58.0 (caseless@0.10.0, aws-sign2@0.5.0, forever-agent@0.6.1, stringstream@0.0.4, tunnel-agent@0.4.0, oauth-sign@0.8.0, isstream@0.1.2, extend@2.0.1, json-stringify-safe@5.0.1, combined-stream@1.0.5, node-uuid@1.4.3, qs@3.1.0, mime-types@2.0.14, http-signature@0.11.0, bl@0.9.4, har-validator@1.7.1, tough-cookie@2.0.0, form-data@1.0.0-rc1, hawk@2.3.1)
└── @npm/enterprise-configurator@0.1.22 (bole@2.0.0, chalk@0.5.1, string@1.9.1, bistre@1.0.1, numbat-emitter@1.1.2)

@npm/package-whitelist@0.0.4 node_modules/@npm/package-whitelist
├── chalk@0.5.1 (ansi-styles@1.1.0, escape-string-regexp@1.0.3, supports-color@0.2.0, has-ansi@0.1.0, strip-ansi@0.3.0)
├── yargs@1.3.3
├── registry-url@2.1.0 (rc@0.5.5)
├── lodash@2.4.2
├── npm-remote-ls@1.2.1 (char-spinner@1.0.1, treeify@1.0.1, async@0.9.2, semver@4.3.6, request@2.58.0)
└── inquirer@0.5.1 (mute-stream@0.0.4, through@2.3.7, chalk@0.4.0, async@0.8.0, readline2@0.1.1, cli-color@0.3.3)

@npm/validate-and-store@2.0.0 node_modules/@npm/validate-and-store
├── @npm/npm-urls@1.2.0
├── deep-equal@0.2.2
├── stream-buffers@0.2.6
├── replify@1.2.0
├── stream-collector@1.0.1 (once@1.3.2)
├── mv@2.1.0 (ncp@2.0.0)
├── @npm/restify-monitor@0.1.4 (common-log-string@0.2.1)
├── semver@4.3.6
├── mkdirp@0.5.1 (minimist@0.0.8)
├── rimraf@2.4.0 (glob@4.5.3)
├── bluebird@2.9.30
├── lodash@2.4.2
├── request@2.58.0 (caseless@0.10.0, aws-sign2@0.5.0, forever-agent@0.6.1, stringstream@0.0.4, tunnel-agent@0.4.0, oauth-sign@0.8.0, isstream@0.1.2, extend@2.0.1, json-stringify-safe@5.0.1, node-uuid@1.4.3, combined-stream@1.0.5, qs@3.1.0, mime-types@2.0.14, http-signature@0.11.0, bl@0.9.4, har-validator@1.7.1, tough-cookie@2.0.0, form-data@1.0.0-rc1, hawk@2.3.1)
├── restify@2.8.5 (assert-plus@0.1.5, escape-regexp-component@1.0.2, tunnel-agent@0.4.0, keep-alive-agent@0.0.1, negotiator@0.4.9, lru-cache@2.6.4, mime@1.3.4, once@1.3.2, formidable@1.0.17, qs@1.2.2, node-uuid@1.4.3, backoff@2.4.1, semver@2.3.2, spdy@1.32.0, verror@1.6.0, http-signature@0.10.1, csv@0.4.5, dtrace-provider@0.3.2, bunyan@1.4.0)
├── @npm/enterprise-configurator@0.1.22 (bole@2.0.0, chalk@0.5.1, string@1.9.1, yargs@1.3.3, bistre@1.0.1, numbat-emitter@1.1.2)
└── multi-fs@0.5.3 (once@1.3.2, tmp@0.0.26, ssh2@0.3.6, manta-client@1.0.5)

npm-registry-couchapp@2.6.11 node_modules/npm-registry-couchapp
├── semver@4.3.6
├── json@9.0.3
└── couchapp@0.11.0 (watch@0.8.0, url@0.10.3, coffee-script@1.9.3, connect@3.4.0, request@2.58.0, nano@6.1.3, http-proxy@0.8.7)
.............................{"error":"file_exists","reason":"The database could not be created, the file already exists."}

> npm-registry-couchapp@2.6.11 start /etc/npme/node_modules/npm-registry-couchapp
> bash ./push.sh

/etc/npme/node_modules/npm-registry-couchapp/node_modules/.bin/couchapp
Preparing.
Serializing.
PUT http://admin:******@localhost:5984/registry/_design/scratch
Finished push. 2-13fc2930c0c345db9fdafa6236cf98f0
Preparing.
Serializing.
PUT http://admin:******@localhost:5984/_users/_design/scratch
Finished push. 2-2dee2803a307cc727971a82c3166beab

Pushed to scratch ddoc. To make it real, use a COPY request.
Something like this:

curl -u "$username:$password" \
  $couch/registry/_design/scratch \
  -X COPY \
  -H destination:'_design/app?rev=$rev'

But, before you do that, make sure to fetch the views and give
them time to load, so that real users don't feel the pain of
view generation latency.

You can do it like this using npm:

    npm run load
    # Go get lunch and come back.
    # Go take the dog for a walk, and play some frisbee in the park.
    # If you don't have a dog, go get a puppy, provide it with love
    # and appropriate discipline until it gets older, train it to play
    # frisbee in the park, and then take it to the park and play frisbee.
    # Wait some more.  It's probably almost done now.
    # Make it live:
    npm run copy

> npm-registry-couchapp@2.6.11 load /etc/npme/node_modules/npm-registry-couchapp
> bash ./load-views.sh

LOADING: norevs
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:15 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: mixedcase
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:15 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: conflicts
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:15 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: oddhost
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:16 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: updated
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:16 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: listAll
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:16 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: allVersions
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:16 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: modified
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:16 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: modifiedPackage
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:16 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: noShasum
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: byEngine
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: countVersions
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: byKeyword
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: byField
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: needBuild
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: scripts
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:17 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: nodeWafInstall
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:18 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: orphanAttachments
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:18 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: noAttachment
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:18 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: starredByUser
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:18 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: starredByPackage
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:18 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: byUser
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "EYTETQNKOG3NK4F62H1DXD4HC"
Date: Fri, 19 Jun 2015 23:16:18 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: browseAuthorsRecent
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:19 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: npmTop
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:19 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: browseAuthors
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:19 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: browseUpdated
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:19 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: browseAll
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:19 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: analytics
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:19 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: dependedUpon
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:20 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: dependentVersions
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:20 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: browseStarUser
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:20 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: browseStarPackage
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:20 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

LOADING: fieldsInUse
HTTP/1.1 200 OK
Server: CouchDB/1.6.1 (Erlang OTP/R16B03-1)
ETag: "7XGA2YEFCURUB5NYGP8R9NEA0"
Date: Fri, 19 Jun 2015 23:16:20 GMT
Content-Type: text/plain; charset=utf-8
Content-Length: 0
Cache-Control: must-revalidate

> npm-registry-couchapp@2.6.11 copy /etc/npme/node_modules/npm-registry-couchapp
> bash ./copy.sh

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  112k  100  112k    0     0   718k      0 --:--:-- --:--:-- --:--:--  723k
{"ok":true,"id":"_design/app","rev":"2-08bab19c772e8dd1e6f622029fb1b6ca"}
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 10364  100 10364    0     0  67540      0 --:--:-- --:--:-- --:--:-- 67738
{"ok":true,"id":"_design/_auth","rev":"4-c1a77ccc006657cb1111e8c4c89c23ed"}
generating service wrappers:
ENOENT, no such file or directory '/etc/init/npm-auth-ws.conf'
  generated /etc/init/npm-auth-ws.conf
  log path: /etc/npme/logs/npm-auth-ws.log
ENOENT, no such file or directory '/etc/init/policy-follower.conf'
  generated /etc/init/policy-follower.conf
  log path: /etc/npme/logs/policy-follower.log
ENOENT, no such file or directory '/etc/init/validate-and-store.conf'
  generated /etc/init/validate-and-store.conf
  log path: /etc/npme/logs/validate-and-store.log
ENOENT, no such file or directory '/etc/init/registry-frontdoor.conf'
  generated /etc/init/registry-frontdoor.conf
  log path: /etc/npme/logs/registry-frontdoor.log
  package-whitelist does not have start script.
  generated /etc/init/package-whitelist.conf
  log path: /etc/npme/logs/package-whitelist.log

to start a all services run: 'ndm start'
or manually start the service using 'launchctl', 'initctl', or 'upstart'

success!
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥                  ♥♥♥♥                  ♥♥♥♥                           ♥♥♥♥♥
♥♥♥♥                  ♥♥♥♥                  ♥♥♥♥                           ♥♥♥♥♥
♥♥♥♥                  ♥♥♥♥                  ♥♥♥♥                           ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥                  ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥                  ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥         ♥♥♥♥     ♥♥♥♥                  ♥♥♥♥         ♥♥♥♥♥    ♥♥♥♥♥    ♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥         ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥         ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥         ♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥

run `npme start` to boot npmeE.
run `npme add-package <package-name>` to add packages to your whitelist.
logs are stored in /etc/npme/logs
setup complete. npm loves you!
npmE is now up and running!
getos@2.4.0 node_modules/getos

async@0.9.2 node_modules/async

chalk@0.5.1 node_modules/chalk
├── ansi-styles@1.1.0
├── escape-string-regexp@1.0.3
├── supports-color@0.2.0
├── has-ansi@0.1.0 (ansi-regex@0.2.1)
└── strip-ansi@0.3.0 (ansi-regex@0.2.1)

yargs@1.3.3 node_modules/yargs

npme-trusty@2.0.0 node_modules/npme-trusty
└── bluebird@2.9.30

npme-centos65@2.0.0 node_modules/npme-centos65
└── bluebird@2.9.30

npme-ansible@2.0.9 node_modules/npme-ansible
├── mkdirp@0.5.1 (minimist@0.0.8)
└── bluebird@2.9.30

lodash@2.4.2 node_modules/lodash

nock@0.46.1 node_modules/nock
├── propagate@0.3.1
├── debug@1.0.4 (ms@0.6.2)
└── lodash@2.4.1

request@2.58.0 node_modules/request
├── caseless@0.10.0
├── aws-sign2@0.5.0
├── forever-agent@0.6.1
├── stringstream@0.0.4
├── tunnel-agent@0.4.0
├── oauth-sign@0.8.0
├── isstream@0.1.2
├── extend@2.0.1
├── json-stringify-safe@5.0.1
├── node-uuid@1.4.3
├── combined-stream@1.0.5 (delayed-stream@1.0.0)
├── qs@3.1.0
├── mime-types@2.0.14 (mime-db@1.12.0)
├── http-signature@0.11.0 (assert-plus@0.1.5, asn1@0.1.11, ctype@0.5.3)
├── tough-cookie@2.0.0
├── form-data@1.0.0-rc1 (mime-types@2.1.1, async@1.2.1)
├── hawk@2.3.1 (cryptiles@2.0.4, sntp@1.0.9, boom@2.8.0, hoek@2.14.0)
├── har-validator@1.7.1 (commander@2.8.1, chalk@1.0.0, is-my-json-valid@2.12.0, bluebird@2.9.30)
└── bl@0.9.4 (readable-stream@1.0.33)

lab@4.7.0 node_modules/lab
├── diff@1.4.0
├── items@1.1.0
├── bossy@1.0.3
├── hoek@2.14.0
├── source-map-support@0.2.10 (source-map@0.1.32)
├── chai@1.10.0 (assertion-error@1.0.0, deep-eql@0.1.3)
├── esprima@1.2.5
├── handlebars@1.3.0 (optimist@0.3.7, uglify-js@2.3.6)
└── eslint@0.8.2 (object-assign@1.0.0, strip-json-comments@1.0.2, xml-escape@1.0.0, user-home@1.1.1, estraverse@1.5.1, text-table@0.2.0, debug@2.2.0, escope@1.0.3, mkdirp@0.5.1, minimatch@1.0.0, doctrine@0.5.2, optionator@0.4.0, js-yaml@3.2.7)

inquirer@0.6.0 node_modules/inquirer
├── mute-stream@0.0.4
├── through@2.3.7
├── readline2@0.1.1 (strip-ansi@2.0.1)
├── cli-color@0.3.3 (d@0.1.1, timers-ext@0.1.0, memoizee@0.3.8, es5-ext@0.10.7)
└── rx@2.5.3

npme-unknown@2.0.0 node_modules/npme-unknown
├── bluebird@2.9.30
└── inquirer@0.7.3 (figures@1.3.5, ansi-regex@1.1.1, mute-stream@0.0.4, through@2.3.7, readline2@0.1.1, cli-color@0.3.3, rx@2.5.3)
[npme@pppdc9prd8jb npme-installer]$ npme start
bash: npme: command not found
marcellodesales commented 9 years ago

Here's an updated step-by-step for setting up RHEL 7... One single step might be broken, https://gist.github.com/marcellodesales/6a771a412a9e4aef6476... I get the following output while accessing "localhost:8080"... Which step might have not worked properly? It opens the couchdb main output instead of the registry data...

{
  couchdb: "Welcome",
  uuid: "32416f1f651444817a5fd6eaa081763d",
  version: "1.6.1",
  vendor: {
    version: "1.6.1",
    name: "The Apache Software Foundation"
  }
}

I can see the registry database in CouchDB...

[root@pppdc9prd8tl mdesales]# curl localhost:5984/_all_dbs/
["_replicator","_users","registry","test"]

thanks Marcello

bcoe commented 9 years ago

Hey @marcellodesales don't know where things currently stand for you, but we've just released a new version of the installer ... It's my hopes that this will work better on RHEL-7:

sudo npm install npme -g --unsafe

Added bonus, there's now a nice UI to manage everything:

screen shot 2015-08-31 at 2 20 18 pm
marcellodesales commented 9 years ago

Hi @bcoe

Thanks for the update!!! We are finally getting the RHEL 7 servers in our environment in 2 weeks and I will be helping the team get it installed... I will verify this new installer this afternoon!!!

The UI looks great!!! Is there a new installation instruction? I can reproduce the steps and provide feedback!!!

Thanks Marcello

bcoe commented 9 years ago

These are the new instructions that we send out:

https://gist.github.com/bcoe/5d3efe3e4a518789a7bb

I think the only additional caveat is that you now also need to make sure that replicated.com can be accessed through your firewall, this is the company that hosts our images.

marcellodesales commented 9 years ago

@bcoe Which HTTP client do you use? Would the HTTP_PROXY or HTTPS_PROXY environment variable be honored by the admin?

bcoe commented 9 years ago

@marcellodesales the admin console should have proxy support. Let me know if your into any issues and I can reach out to the developers who have been helping us build out the installer tomorrow.

bcoe commented 9 years ago

@marcellodesales this documentation should help:

http://docs.replicated.com/docs/installing-replicated#section-installing-behind-a-proxy

With regards to getting npm on-site working with a proxy, there is a configuration flag -- but we might need to work with you once things are up and running to add it to the configuration UI.

marcellodesales commented 9 years ago

@bcoe Could not look at it last night... I hope I can take a look at it today to give you feedback... What would be the configuration flag? Let me know so I can try it out...

bcoe commented 9 years ago

@marcellodesales there is a proxy setting now we can configure in service.json, once we ensure this works for you, we can make it so it's a field inside the management console.

Let me know when you're at this point and perhaps we can Google Hangout?

bcoe commented 9 years ago

@marcellodesales let's create new tickets for any issues you run into going forward, since this one is pretty ancient at this point :+1: