Skip to content
This repository has been archived by the owner on Nov 29, 2022. It is now read-only.

Deployment guide

John Tigue edited this page May 16, 2015 · 5 revisions

SEANetMap: Deployment guide

Introduction

Of the four documents in this set, this is the least well developed.

To do

Continuous Integration

  • At this time there is none.
  • Travis is the way to go with open source projects as they provide a quality service for free (while surreptitiously training an army of sales people, as evidenced by this text).
  • Suace Labs and Travis work together

"Sauce Labs provides a Selenium cloud with access to more than 170 different device/OS/browser combinations. If you have browser tests that use Selenium, using Sauce Labs to run the tests is very easy. First, you need to sign up for their service (it's free for open source projects)."

Deploy targets

Developer's dev machine

Core NodeJS machinery has to work out of the box. This includes:

  • "Out of box means after `nmp install`

NPM

  • NOT FIRST: but we should have publish to the NPM network so that a developer can just

`nmp install seanetmap

  • As, is a developer can do a "git clone-less" install via

`npm install codeforseattle/seanetmap –save` Which under the hood will go fetch and install that which is at https://github.com/codeforseattle/seanetmap.git i.e. it's pretty much the same thing, but we will want to publish to npm eventually

AWS

DigitalOcean

Code for Seattle seems to have some resources available for deploying to Droplets on DigitalOcean. This will need to be a tested deploy target.

OpenStack

Continuous Deployment

  • Travis will deploy the server to AWS deploy to S3
  • Live data will be in Amazon

nginx

https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-ubuntu-14-04

Deploying on Amazon Web Services

Initially the deploy target will be AWS. http://broadbandtogether.com

Eventually, it may well be that the City of Seattle will deploy the code on some infrastucture of their own. Perhaps that is simply their AWS account. This is actually a good thing as one of the goals is to have liberally licensed code that can be easily deploy in multiple contexts. So, let us call this beta testing.

Deploy destination independent info

Various issues need to be addressed whereever the code is deployed.