Oauth2 Client App w/ Hapi, React, Flux, and Sprinlty-Data
Prerequisites
- Create an OAuth Client through the Sprintly admin with the credentials
in
config/default.js
- node >= 0.10 and npm
- Sprint.ly API running on https://local.sprint.ly:9000/
$ make
To use and develop Sprintly Kanban locally, you'll need an Oauth CLIENT_ID
and CLIENT_SECRET
. Currently our public registration for new OAuth apps is
closed, but we are accepting requests for new OAuth Client application by
emailing support@sprint.ly.
$ node server
server started on port 3600
visit http://local.sprint.ly:3600/
$ make watch
Run lint and tests and coverage report with Karma:
$ npm test
$ npm run test-lint -- --fix
$ make test-server
$ npm run watchify-test
Tests require this comment at the top for linting.
/* eslint-env mocha, node */
This project uses npm shrinkwrap
to keep dependecies from automatically
upgrading without out explicit permission.
Any time you install or upgrade an npm package, please run make shrinkwrap
.
For further reading, please refer to the shrinkwrap documentation: npm help shrinkwrap
.
Troubleshoot: Error: Extraneous Modules?:
- Delete
node modules
dir locally $ npm install
$ make shrinkwrap
Kanban is built to be deployed on Heroku with a minimum amount of fuss. Because Heroku is the deploy target, all assets for production need to be compiled and checked in. To avoid this, we use Wercker to build and cache production assets and then push them to Heroku when we need to deploy.
Deploys to staging should be managed with the "Deploy" button in Wercker or with the Wercker CLI tool. You can deploy to staging from any branch.
Production deploys can also be managed with Wercker in the same fashion as staging.
There's a new feature in Heroku called pipelines that can also be used to manage deploys. Using the Heroku toolbelt you can promote a build from staging to production. The benefit is that you don't have to wait for the deploy step since Heroku transfers the environment directly.
heroku pipeline:promote