Skip to content

neontribe/seap_esa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SEAP ESA Assessment

Setting up

  1. run npm install
  2. Build by running grunt generate
  3. This will create a build folder. Point your browser at this to test
  4. Run grunt watch to trigger generate whenever you change files in src/
  5. git clone seap_core into your development directory
  6. create a symlink between seap_core folder and the seap_core folder in the SEAP_PIP node_modules folder
  7. create a symlink between src/css/style.css and seap_core/src/style.css

What everything is

  • The master template is at src/assessment.handlebars. This is for building the single index.html assessment page in build
  • The data context for this template is at assessment-data.json. The questions property is an array and is used to construct all the questions "slide" <div>s in index.html.
  • helpers is where we define template helpers for the above. Eg. sluggify.js turns strings into alphanumeric slugs. Used like {{sluggify string}}
  • css contains the master CSS file, style.css This is stored in the seap_core repository which is a dependency of this project. During development symlinks can be used to test style development. When deploying the css will need to be pushed to the seap_core repository in order to be upto date.*
  • The applications scripts are in js/scripts.js. If you run grunt generate-production the concatenated scripts will be uglified

Deploy procedure

Staging

  • We are using Travis (.travis.yml) and grunt to build test (Gruntfile.js) and deploy (deploy.sh)
  • On EVERY push, pull request or merge Travis uses Grunt test task to run all _test.coffee and _test.js files in /tests
  • If the tests pass, Travis commits the new build to gh-pages branch (our staging server) http://neontribe.github.io/seap_esa

Live

  • When release is tagged and pushed
    git tag -a v0.0.0-beta -m "description of release updates"
    git push origin --tags
  • Use Travis to carry out procedure as for Staging
  • If tests pass, and build is successful, manually push the new build to the live site - overwriting whatever is there.
  • Add release.txt to site root with tag name and datetime