THIS PAGE IS OUTDATED AND NEEDS TO BE REWRITTEN
Read DevelopmentWorkflow for our current approach.
Old intro:
The BW development environment allows an efficient, collaborative and fast work flow for creating, testing, fixing and releasing of code. It will help to make new features as soon as possible available to our members while keeping the main site as free of bugs as possible.
Work flow
The basic work flow is as follows: Trunk/ test.bewelcome.org ==> Alpha/ alpha.bewelcome.org ==> www.bewelcome.org
- development:
- check out recent code from trunk
- create a ticket or assign an existing one to yourself
- develop on your local machine
- optional stuff:
- create and use a temporary branch for bigger changes
- optional stuff:
- commit / merge to trunk at any time you feel like
- if you would like to get feedback set the follow up in trac to code review or test on test
- once stable or bug fixed, set the follow up to move to alpha and add the corresponding revision# as a comment
- alpha merge:
- The revision is checked by a alpha developer according to the Alpha Merging Guidelines
- If they fail the follow up is set to test on test again and the developer informed
- If everything is fine the revision is merged to alpha. If the database can not updated automatically a database manager will take care of this manually upon request. (Alpha Merging Guidelines)
- The ticket status is set to alpha
- alpha testing:
- The changes and all potential cross effects are tested on alpha according to the Alpha Merging Guidelines.
- If approved the ticket is closed and follow up is set to release
- release:
- A alpha developer releases the approved changeset or full alpha branch version to the production site by a script assisted system:
- he commits / merges the code from alpha to production
- * a hook script copies the code from production to the directory running www.bewelcome.org. and moves the previous code to old.bewelcome.org
- in case of problems with the new version, the release is reverted
- A alpha developer releases the approved changeset or full alpha branch version to the production site by a script assisted system:
- emergency bugfix
- In case a emergency bugfix is needed on production the normal release chain can be bypassed
- the fix is committed to production by an alpha developer
- a hook script copies the code from production to the directory running www.bewelcome.org.
- the fix is introduced into trunk and passes the normal release chain to make sure it is present in all future releases as well.
- In case a emergency bugfix is needed on production the normal release chain can be bypassed
- all steps are visible to the public through the svn-commit mailing list and ticket system.
- Everybody can intervene at any time if he recognizes something potentially harmful going on.
Trunk
purpose:
To have the latest code online for "anyone" to test.
A programmer can quickly put something together and just put it in SVN and it will be visible for anyone to see.
Then other people can test it, discuss about it, etc.
Also if something is new and exciting it can be shown and demoed there before putting it in alpha and on the real site.
- svn: https://www.bevolunteer.org/svn/hcvol/trunk
- web: test.bewelcome.org (user/password: request from developers)
- database: test database - no real member data
- access: read/write access for developers
Alpha
purpose:
New features will be thoroughly tested on this site before the will be released for general use.
- svn: https://www.bevolunteer.org/svn/hcvol/branches/alpha
- web: alpha.bewelcome.org (user/password: request from developers)
- database: the real one with all member data
- access: read access for programmers, write access for alpha developers.
Production / www.bewelcome.org
- svn: https://www.bevolunteer.org/svn/hcvol/branches/prodcution
- web: www.bewelcome.org
- database: the real one with all member data
- access: read access for programmers, write access for alpha developers
Playground
purpose:
place for layout drafts and other stuff you would like to share with others
- svn: https://www.bevolunteer.org/svn/playground/
- web: test.bewelcome.org/playground If you want to restrict access to something you can do this with an appropriate .htaccess file.
- database: none
- access: read/write access for developers and designers
Develstuff
purpose:
repository for other material, currently programming related (test db) and Java importer? and rox-wamp package
- svn: https://www.bevolunteer.org/svn/develstuff/trunk/
- web: not accessible
- access: read/write access for programmers
Notes
- Shouldn't this be about Eclipse or so?
- Tip: Firebug is an excellent web development add-on for Firefox.


