nasa / openmct

A web based mission control framework.
https://nasa.github.io/openmct/
Other
12.01k stars 1.24k forks source link

[documentation] Building and Running Open MCT Locally #1174

Closed goelrohan6 closed 8 years ago

goelrohan6 commented 8 years ago
goelrohan6 commented 8 years ago

Can someone review the issue and tell me if a pull request is to be made ?

larkin commented 8 years ago

@goelrohan6 npm install should trigger bower install and gulp install when run locally, as defined in our pre-publish step. If this is not occurring for you can you tell us what version of node and npm you are using? Posting any console logs you have would also help.

goelrohan6 commented 8 years ago

@larkin i am using v3.6.0 for npm and v5.6.0 for node.

It shows 404 for some bower modules and for some css files, which is resolved after bower install and gulp build .

So do suggest a change in the readme ?

larkin commented 8 years ago

@goelrohan6 I am using node v4.4.4 (LTS) and npm v3.10.5. Works fine for me on a fresh clone.

npm install triggers the prepublish script which calls bower install and gulp install. gulp build is not necessary to call unless you want to validate files.

Here's my console output from a fresh install. I opened the application in chrome and did not see any 404 messages in the network tab. Can you tell me which files are 404ing?

 in Code/
› git clone git@github.com:nasa/openmct.git test-openmct-build
Cloning into 'test-openmct-build'... done

 in Code/  
› cd test-openmct-build 

 in test-openmct-build/ on master 
› npm install
[snipped lots of depreciation & prefer global warnings]

> fsevents@1.0.14 install /Users/plricha1/Code/test-openmct-build/node_modules/fsevents
> node-sass@3.9.3 install /Users/plricha1/Code/test-openmct-build/node_modules/node-sass
> phantomjs-prebuilt@2.1.12 install /Users/plricha1/Code/test-openmct-
> node-sass@3.9.3 postinstall /Users/plricha1/Code/test-openmct-build/node_modules/node-sass
> openmct@0.11.3-SNAPSHOT prepublish /Users/plricha1/Code/test-openmct-build
> node ./node_modules/bower/bin/bower install && node ./node_modules/gulp/bin/gulp.js install

bower cached        https://github.com/jsmreese/moment-duration-format.git#1.3.0
bower validate      1.3.0 against https://github.com/jsmreese/moment-duration-format.git#^1.3.0
bower cached        https://github.com/components/es6-promise.git#3.2.2
bower validate      3.2.2 against https://github.com/components/es6-promise.git#^3.0.2
bower cached        https://github.com/angular/bower-angular.git#1.4.4
bower validate      1.4.4 against https://github.com/angular/bower-angular.git#1.4.4
bower cached        https://github.com/requirejs/text.git#2.0.15
bower validate      2.0.15 against https://github.com/requirejs/text.git#^2.0.14
bower cached        https://github.com/jrburke/requirejs-bower.git#2.1.22
bower validate      2.1.22 against https://github.com/jrburke/requirejs-bower.git#~2.1.22
bower cached        https://github.com/knrz/CSV.js.git#3.6.4
bower validate      3.6.4 against https://github.com/knrz/CSV.js.git#^3.6.4
bower cached        https://github.com/moment/moment.git#2.14.1
bower validate      2.14.1 against https://github.com/moment/moment.git#^2.11.1
bower cached        https://github.com/carlos-algms/FileSaver.js.git#0.0.2
bower validate      0.0.2 against https://github.com/carlos-algms/FileSaver.js.git#^0.0.2
bower cached        https://github.com/components/zepto.git#1.1.6
bower validate      1.1.6 against https://github.com/components/zepto.git#^1.1.6
bower cached        https://github.com/broofa/node-uuid.git#1.4.7
bower validate      1.4.7 against https://github.com/broofa/node-uuid.git#^1.4.7
bower cached        https://github.com/angular/bower-angular-route.git#1.4.4
bower validate      1.4.4 against https://github.com/angular/bower-angular-route.git#1.4.4
bower cached        https://github.com/sindresorhus/screenfull.js.git#3.0.2
bower validate      3.0.2 against https://github.com/sindresorhus/screenfull.js.git#^3.0.0
bower install       moment-duration-format#1.3.0
bower install       requirejs#2.1.22
bower install       es6-promise#3.2.2
bower install       text#2.0.15
bower install       angular#1.4.4
bower install       FileSaver.js#0.0.2
bower install       zepto#1.1.6
bower install       comma-separated-values#3.6.4
bower install       moment#2.14.1
bower install       node-uuid#1.4.7
bower install       screenfull#3.0.2
bower install       angular-route#1.4.4

moment-duration-format#1.3.0 bower_components/moment-duration-format

requirejs#2.1.22 bower_components/requirejs

es6-promise#3.2.2 bower_components/es6-promise

text#2.0.15 bower_components/text

angular#1.4.4 bower_components/angular

FileSaver.js#0.0.2 bower_components/FileSaver.js

zepto#1.1.6 bower_components/zepto

comma-separated-values#3.6.4 bower_components/comma-separated-values

moment#2.14.1 bower_components/moment

node-uuid#1.4.7 bower_components/node-uuid

screenfull#3.0.2 bower_components/screenfull

angular-route#1.4.4 bower_components/angular-route
└── angular#1.4.4
[15:05:00] Using gulpfile ~/Code/test-openmct-build/gulpfile.js
[15:05:00] Starting 'stylesheets'...
[15:05:00] Starting 'scripts'...
[15:05:00] Optimizing main.js
[15:05:30] Finished 'scripts' after 30 s
[15:05:32] Finished 'stylesheets' after 31 s
[15:05:32] Starting 'static'...
[15:05:34] Finished 'static' after 1.79 s
[15:05:34] Starting 'install'...
[15:05:34] Finished 'install' after 28 μs
openmct@0.11.3-SNAPSHOT /Users/plricha1/Code/test-openmct-build
[snipped dependency tree]

 in test-openmct-build/ on master 
› node app.js 
Open MCT application running at localhost:8080
[tested and verified no 404s]
^C

 in test-openmct-build/ on master 
› node -v
v4.4.4

 in test-openmct-build/ on master 
› npm -v
3.10.5

 in test-openmct-build/ on master 
› 
goelrohan6 commented 8 years ago

@larkin After npm install i get some 404's, here is a screenshot of it :- scrn1

After this, I did bower install and still get some 404's, here's a screenshot of it :- scrn2

I did gulp install after this after which all the 404's went off .

Do we need a pull request in readme for the issue now ?

ghost commented 8 years ago

I think this is related to https://github.com/nasa/openmct/issues/1151 (most likely a duplicate).

larkin commented 8 years ago

@goelrohan6 Can you post a console log of the output of npm install? That should be triggering both of the commands automatically. If it's not doing that, then there is an error and that log will tell us.

@BogdanAlexandru sidenote, there is no reason to install as root. It's a bad security practice and not something we endorse.

goelrohan6 commented 8 years ago

@larkin, Here is the console log of my npm install

loadDep:xtend -> network  - |#########################################------------------------------------------------------------------------------------------------|
npm WARN deprecated tough-cookie@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
npm WARN deprecated minimatch@3.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated minimatch@2.0.10: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated lodash@1.0.2: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN deprecated minimatch@0.2.14: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
npm WARN deprecated graceful-fs@1.2.3: graceful-fs v3.0.0 and before will fail on node releases >= v7.0. Please update to graceful-fs@^4.0.0 as soon as possible. Use 'npm ls graceful-fs' to find it in the tree.
npm WARN deprecated lodash@2.2.1: lodash@<3.0.0 is no longer maintained. Upgrade to lodash@^4.0.0.
npm WARN prefer global coffee-script@1.10.0 should be installed with -g
npm WARN prefer global jsonlint@1.6.2 should be installed with -g
npm WARN prefer global node-gyp@3.4.0 should be installed with -g

> phantomjs-prebuilt@2.1.11 install /home/rohan/Documents/nasa/test/openmct/node_modules/phantomjs-prebuilt
> node install.js

PhantomJS not found on PATH
Downloading https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2
Saving to /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2
Receiving...
  [========================================] 100%
Received 22866K total.
Extracting tar contents (via spawned process)
Removing /home/rohan/Documents/nasa/test/openmct/node_modules/phantomjs-prebuilt/lib/phantom
Copying extracted folder /tmp/phantomjs/phantomjs-2.1.1-linux-x86_64.tar.bz2-extract-1473917890659/phantomjs-2.1.1-linux-x86_64 -> /home/rohan/Documents/nasa/test/openmct/node_modules/phantomjs-prebuilt/lib/phantom
Writing location.js file
Done. Phantomjs binary available at /home/rohan/Documents/nasa/test/openmct/node_modules/phantomjs-prebuilt/lib/phantom/bin/phantomjs

> node-sass@3.10.0 install /home/rohan/Documents/nasa/test/openmct/node_modules/node-sass
> node scripts/install.js

Start downloading binary at https://github.com/sass/node-sass/releases/download/v3.10.0/linux-x64-47_binding.node
Binary downloaded and installed at /home/rohan/Documents/nasa/test/openmct/node_modules/node-sass/vendor/linux-x64-47/binding.node

> node-sass@3.10.0 postinstall /home/rohan/Documents/nasa/test/openmct/node_modules/node-sass
> node scripts/build.js

"/home/rohan/Documents/nasa/test/openmct/node_modules/node-sass/vendor/linux-x64-47/binding.node" exists. 
 testing binary.
Binary is fine; exiting.

> openmct@0.11.3-SNAPSHOT prepublish /home/rohan/Documents/nasa/test/openmct
> node ./node_modules/bower/bin/bower install && node ./node_modules/gulp/bin/gulp.js install

/home/rohan/Documents/nasa/test/openmct/node_modules/bower/lib/node_modules/configstore/index.js:54
                throw err;
                ^

Error: EACCES: permission denied, open '/home/rohan/.config/configstore/bower-github.json'
You don't have access to this file.

    at Error (native)
    at Object.fs.openSync (fs.js:584:18)
    at Object.fs.readFileSync (fs.js:431:33)
    at Object.create.all.get (/home/rohan/Documents/nasa/test/openmct/node_modules/bower/lib/node_modules/configstore/index.js:35:26)
    at Object.Configstore (/home/rohan/Documents/nasa/test/openmct/node_modules/bower/lib/node_modules/configstore/index.js:28:44)
    at readCachedConfig (/home/rohan/Documents/nasa/test/openmct/node_modules/bower/lib/config.js:19:23)
    at defaultConfig (/home/rohan/Documents/nasa/test/openmct/node_modules/bower/lib/config.js:11:12)
    at Object.<anonymous> (/home/rohan/Documents/nasa/test/openmct/node_modules/bower/lib/index.js:16:32)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)

npm WARN optional Skipping failed optional dependency /chokidar/fsevents:
npm WARN notsup Not compatible with your operating system or architecture: fsevents@1.0.14
npm ERR! Linux 3.16.0-38-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v5.6.0
npm ERR! npm  v3.6.0
npm ERR! code ELIFECYCLE
npm ERR! openmct@0.11.3-SNAPSHOT prepublish: `node ./node_modules/bower/bin/bower install && node ./node_modules/gulp/bin/gulp.js install`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the openmct@0.11.3-SNAPSHOT prepublish script 'node ./node_modules/bower/bin/bower install && node ./node_modules/gulp/bin/gulp.js install'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the openmct package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node ./node_modules/bower/bin/bower install && node ./node_modules/gulp/bin/gulp.js install
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs openmct
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls openmct
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/rohan/Documents/nasa/test/openmct/npm-debug.log
larkin commented 8 years ago

@goelrohan6

Error: EACCES: permission denied, open '/home/rohan/.config/configstore/bower-github.json' You don't have access to this file.

Check out https://github.com/bower/bower/issues/2260 for the solution-- looks like permissions on that folder aren't accurate. Let me know if that fix doesn't work.

larkin commented 8 years ago

Going to close this for now as it appears resolved, can re-open if the issue is still present at a later date.