on-http
is the HTTP server for RackHD
Copyright 2015-2016, EMC, Inc.
rm -rf node_modules
npm install
npm run apidoc
npm run taskdoc
Note: requires MongoDB and RabbitMQ to be running to start correctly.
sudo node index.js
- https://127.0.0.1/ui -- RackHD Web UI
- https://127.0.0.1/docs -- RackHD Docs
- https://127.0.0.1/taskdoc -- RackHD Task Annotation
- https://rackhd.readthedocs.io/en/latest/rackhd/index.html
- https://bintray.com/rackhd/docs/apidoc#files
The readthedocs shows API usage for 1.1 by default. Unless otherwise specified
you can use /api/2.0/
in place of /api/1.1/
to leverage the 2.0 API. Any functional
differences will be listed below the 1.1 API examples.
The fileService
requires a "fileService" key which holds keys mapping backend
strings to their individual config values; it requires at least "defaultBackend"
to be among the backend keys. More strings may be added and mapped to
injector strings in the fileSevice.injectorMap
attribute.
To run in debug mode to debug routes and middleware:
sudo DEBUG=express:* node --debug index.js
If you're using Node v4 or greater you can use node-inspector
to debug and profile from a GUI.
npm install node-inspector -g
node-inspector --preload=false &
sudo DEBUG=express:* node --debug-brk index.js
Note: do not use the node-debug
command it doesn't work as well.
To run tests from a developer console:
npm test
To run tests and get coverage for CI:
# verify hint/style
./node_modules/.bin/jshint -c .jshintrc --reporter=checkstyle lib index.js > checkstyle-result.xml || true
./node_modules/.bin/istanbul cover -x "**/spec/**" _mocha -- $(find spec -name '*-spec.js') -R xunit-file --require spec/helper.js
./node_modules/.bin/istanbul report cobertura
# if you want HTML reports locally
./node_modules/.bin/istanbul report html
Unversioned packages are built automatically from travis-ci and uploaded to bintray.com. Using this repository is detailed in the docs.
Build scripts are placed in the extra/
directory.
.travis.yml
will call the appropriate scripts inextra/
to build an unversioned package.extra/make-sysdeps.sh
can be used to install system level packages in a Ubuntu system.extra/make-cicd.sh
will perform all the necessary build steps to generate a version package.
If you want to build your own versioned packages, you can use the Vagrantfile provided in extra/
. Simply perform vagrant up
and it will run all the necessary steps.
The resulting .deb packages will end up in deb/
.