WorkFlow

A cron job spawns the bash shell.The bash shell performs the following:

  1. uses svn to download the source code
  2. generates the internationalization information on the fresh code.
  3. via maven compiles and packages Sakai demo
  4. renames test code so that it is no longer seen
  5. filters the source code to one package space removing all other code.
  6. Searches for package names per project. A project is divided as a series of packages that have bugs associated.
  7. generate a series a shell script that runs a series of Ant tasks that perform static code review. One unique property file is generated per project.
  8. Package namespace collisions are checked for and moved into a unique virtual project.
  9. the static code analysis is run via Ant at this point (takes ~ 2hrs)
  10. Findbugs is run (takes ~ 1 hr)
  11. information generated is converted into files that are readable by a Mysql database
  12. old database information apart from a fact table is removed
  13. new database information is imported
  14. a static website is generated
  15. additional summary web pages are generated.
  16. vote functionality and details are generated
  17. the fact table in the database is updated.
  18. generated data is archived
  19. the production website is deleted
  20. the newly generate website is copied

Game over (smile)