################################## Openbravo ERP release process ##################################* Problems- We don't release on a predictable manner (clock). Users dislike this.- Developers don't know into which MP go their commits.- The Support Team vs Engineering team interaction makes the release delay to comply with SLAs (immediate issues the day before the freeze).- The QA and RM teams have difficulties to organize themselves effectively.- Do we want our work to be miserable? No!- Do we want to work without stress? Yes!- Do we want to change the current situation? Yes!* What do we all want?- Release 2.50 MPs with a predictable frequency (clock). Make users happy.- Allow developers to control what commits go into which MP (guarantee).- Allow the Support team and developers work affectively to comply with the SLAs.- Allow QA and RM organize more effectively.- Set of policies to make this possible.* Commit life cycle - integration process- Developer -> CI, pi to main -> Release QA -> Publish- Integration process (int): . Acceptance criteria to promote commits to main. . Not individually, but "up to". . Tests we run.- Release QA: . Freeze main, stop integration's promotion. . Manual work. . Possible transplants. . Publish.* Hudson is here to help you: how to use it effectively- email notifications: filter the personal ones!- Exercises: 1) Take a broken build. . See what the involved commits are. . See the historic of that build. 2) Integration process. . See in what step it is.- How to pass the Hudson tests: . 30 min of testing before pushing makes a difference. Better to push 1-2 times a day than 6 times a day. . Run install.source, database consistency and junit tests. This prevents 75% of failures. Seriously. . Don't run away after pushing. Responsibility -> Ability to respond!!* Release Timeline- General timeline.- From commit (bug, new feature) to end user.- How to make your commits be in the MP you want.- How to make your bug reports be in the MP you want.- Using Hudson effectively.