This is the process that should be followed (along with satisfying the Laser Eye Checklist) when pushing updates to the Storytelling Tool. The purpose is to ensure minimal disruption to the version(s) in use by the general public or any particular groups. A similar process is laid out in the Contribution Guidelines of the repository, but this provides a bit more detail on some of the points.

  1. Open an issue on the project's Jira list to summarize/capture the work about to be done
  2. Make a fork of the repository
  3. Make all code changes on that fork
  4. Test the work on the developer's local machine, both Browser and Node tests and on as many different browsers as is practical
  5. Open a Pull Request against the master branch of the upstream fork
  6. Review the work and make updates as required (at least one other person must review)
  7. Merge the Pull Request into the master branch of the upstream fork (the reviewer will usually do this)
  8. Test the Staging site (https://staging-stories.floeproject.org) once it has finished rebuilding
    1. Run the browser tests
    2. Run through the Storytelling Tool Manual Testing Grid
    3. If any issues are encountered, document them as appropriate (new Jira, amend original Jira, etc.)
  9. Back up the production site's database and files using the CI job
  10. Create a Pull Request or merge the development branch into the production branch
  11. Test the production site (https://stories.floeproject.org/)
    1. Run the browser tests http://stories.floeproject.org/tests/
    2. Run through the Storytelling Tool Manual Testing Grid

Note: there are various versions of the tool running from one of a number of branches. For details on which branches are deployed to which URLs, please see the Branches Documentation.