No description, website, or topics provided.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
alpha
data Expose timestamp for getAllCatalogs API. Otherwise user can't identify Mar 6, 2018
debianstatic bump version to 2.60.7 Jul 6, 2018
extra remove the swaggerdoc step in TravisCI, because it was removed. Aug 17, 2017
lib Fix can't delete graph by instanceId issue Mar 21, 2018
skupack.d
spec
static Merge pull request #818 from PengTian0/feature/ubuntu16 Nov 29, 2017
swagger_config Remove deprecated serializer and common api presenter May 22, 2017
.bintray-deb.json
.bintray-doc.json Publish api docs to bintray Oct 12, 2016
.dockerignore Dockerfile refactor removes extra node_modules May 18, 2016
.gitignore Changed .gitignore to upload .gitkeep Aug 4, 2017
.hound.yml update hound ci config Aug 30, 2016
.jshintrc updating jshintrc file to remove deprecated options May 25, 2017
.travis.yml
Dockerfile Fix NPM 5 build dependency issue Apr 11, 2018
Gruntfile.js Adds web ui install script Jan 8, 2016
HWIMO-BUILD adding concourse ci testing Aug 23, 2017
HWIMO-DOC Create build script for task annotation generation Jul 11, 2016
HWIMO-TEST Accommodate mongodb and mongod in HWIMO Sep 21, 2017
LICENSE Update LICENSE Sep 28, 2017
README.md creating script to make client libs Apr 7, 2017
app.js Replace the profiles and templates api implementations with grpc call… Sep 29, 2017
build-package.bash
index.js Remove deprecated serializer and common api presenter May 22, 2017
install-swagger-ui.sh Update install-swagger-ui.sh Nov 21, 2017
install-task-doc.sh show link after npm run taskdoc Jan 20, 2017
install-web-ui.sh remove build code Jun 27, 2018
migrate.js updating copyright Sep 21, 2015
npm-shrinkwrap.json bump version to 2.60.7 Jul 6, 2018
package.json
version bump version to 2.60.7 Jul 6, 2018

README.md

on-http Build Status Code Climate Coverage Status

on-http is the HTTP server for RackHD

Copyright 2015-2016, EMC, Inc.

Installation

rm -rf node_modules
npm install
npm run apidoc
npm run taskdoc

Running

Note: requires MongoDB and RabbitMQ to be running to start correctly.

sudo node index.js

API References

The readthedocs shows API usage for 2.0 by default. Using api/current/ will use the 2.0 API by default. Functional differences between the 1.1 API and the 2.0 API are listed in readthedocs, however, the 1.1 API is officially deprecated.

Config

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.

Debugging/Profiling

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.

CI/Testing

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

Client Libraries

Instructions for how to generate client libraries (python, java, go) can be seen on the readthedocs

Building

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 in extra/ 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/.