Changes between Version 3 and Version 4 of Documentatie/Ontwikkelaar/Procedures/Release


Ignore:
Timestamp:
09/28/11 12:13:22 (15 years ago)
Author:
adriaan
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Documentatie/Ontwikkelaar/Procedures/Release

    v3 v4  
    5151Je zit in een werkkopie van de tak 'development'. Doe nu de volgende stappen:  
    5252 
    53  * Ga op de TRAC-website onder "Timeline" naar de vorige release, en loop zorgvuldig de changesets na die sindsdien zijn ingevoerd, draai eventueel een DIFF. Dit gebeurt elke week maar moet vlak voor een release nog een keer worden herhaald, zodat op het moment dat de release note uitkomt, alle wijzigingen zijn overgenomen. Wat men daarna inlevert, moet men zelf weten (versiebeheer waarschuwt dan ook). Zie ook [#Wijzigingenovernemen kopje wijzigingen overnemen] voor technische details. 
    54  * Controleer of alle wijzigingen in de loop van de vorige release zijn overgenomen: development/bin/adaptatie-diff v1.XXX development (vergelijk laatste versie met development). Loop de diff door op vergeten change sets. Als er regelmatig met svn merge is gewerkt is dit wellicht overbodig. 
    55  * Draai de unit tests en fix zonodig, 
    56  {{{python unittests.py --enable-all}}} 
    57  * Loop het [TestProtocol test protocol] door. 
    58  * Werk '''VERSIES.txt''' bij door de releasedatum aan de laatste versie toe te voegen en de omschrijving af te maken. Daardoor verschijnt het in de beschikbare versies lijst van de ACs. 
    59  * Draai {{{bin/clean}}} en commit eventuele bestanden die nog geen eol-style LF hadden. 
    60  * Draai nog 1x de unit tests,  {{{python unittests.py --enable-all}}} 
    61  * Draai {{{bin/release 1.XXX}}} om development te kopiëren naar de nieuwe release in SVN. 
    62  * Maak de adaptatiemap in de nieuwe release schrijfbaar voor centra door 3 regels te kopiëren in de TRAC configuratie. Zie daarvoor de TRAC configuratie wiki elders. 
    63  * Check de nieuwe versie uit en controleer nogmaals dat het -- nu als eigen release -- nog steeds start. Loop nogmaals 
     53 - '''Merge''' - wijzigingen coordineren zodat development acht de laatste wijzigingen bevat. 
     54   * Ga op de TRAC-website onder "Timeline" naar de vorige release, en loop zorgvuldig de changesets na die sindsdien zijn ingevoerd, draai eventueel een DIFF. Dit gebeurt elke week maar moet vlak voor een release nog een keer worden herhaald, zodat op het moment dat de release note uitkomt, alle wijzigingen zijn overgenomen. Wat men daarna inlevert, moet men zelf weten (versiebeheer waarschuwt dan ook). Zie ook [#Wijzigingenovernemen kopje wijzigingen overnemen] voor technische details. 
     55   * Controleer of alle wijzigingen in de loop van de vorige release zijn overgenomen: development/bin/adaptatie-diff v1.XXX development (vergelijk laatste versie met development). Loop de diff door op vergeten change sets. Als er regelmatig met svn merge is gewerkt is dit wellicht overbodig. 
     56 - '''Test''' - technische en functionele tests van huidige development versie. 
     57   {{{ 
     58   python unittests.py --enable-all 
     59   }}} 
     60   * Draai de '''unit tests''' en fix zonodig, {{{python unittests.py --enable-all}}} . De unit tests vormen een automatische test die al ruime tijd voor alle releases wordt gedraaid. Deze test simuleert voor elk van de adaptaties een login en "drukt" vervolgens achtereenvolgens alle knoppen van het startscherm in. De unit test maakt gebruik van lege, standalone sqlite3-databases.  
     61   * Draai de '''systeemtest'''. De systeemtest vormt een automatische back-to-back test voor de academische huizen. Deze voeren we bij elke release uit. In overleg met academische huizen wordt het testrapport overlegd, maar meestal blijft dit intern. '''TODO:''' ''hoe'' draai je de systeemtest? 
     62   * Loop het [TestProtocol test protocol] door. Dit is een (gebruikers-)functionele test van OpenAC. 
     63 - '''Opschonen''' - de source code helemaal netjes maken voor release. 
     64   {{{ 
     65   sh bin/clean 
     66   python unittests.py --enable-all 
     67   svn commit 
     68   }}} 
     69   * Werk '''VERSIES.txt''' bij door de releasedatum aan de laatste versie toe te voegen en de omschrijving af te maken. Daardoor verschijnt het in de beschikbare versies lijst van de ACs. 
     70   * Draai {{{bin/clean}}} en commit eventuele bestanden die nog geen eol-style LF hadden. 
     71   * Draai nog 1x de unit tests,  {{{python unittests.py --enable-all}}} 
     72   * Doe nog eens reindent om de code style recht te trekken, {{{python bin/reindent.py `find . -name *.py`}}} 
     73 - '''Branch''' - in SVN de branch maken 
     74   * Draai {{{bin/release 1.XXX}}} om development te kopiëren naar de nieuwe release in SVN. 
     75   * Maak de adaptatiemap in de nieuwe release schrijfbaar voor centra door 3 regels te kopiëren in de TRAC configuratie. Zie daarvoor de TRAC configuratie wiki elders. 
     76 - '''Test nogmaals''' - of het na de branch nog doet. 
     77   * Check de nieuwe versie uit en controleer nogmaals dat het -- nu als eigen release -- nog steeds start. Loop nogmaals 
    6478   cluchtig het test protocol door. 
    65  * Start een eerdere versie op, ga naar versiebeheer en controleer dat (1) de nieuwe release in de versies lijst staat en (2) opschakelen naar de nieuwe release kan. 
    66  * Stuur een release-bericht naar openac@fenac.nl. Denk daarbij goed na welke migraties er allemaal gebeuren bij deze nieuwe versie.  
     79   * Start een eerdere versie op, ga naar versiebeheer en controleer dat (1) de nieuwe release in de versies lijst staat en (2) opschakelen naar de nieuwe release kan. 
     80 - '''Announce''' - maak de nieuwe versie bekend 
     81   * Maak een nieuwe starterkit. 
     82   * Stuur een release-bericht naar openac@fenac.nl. Denk daarbij goed na welke migraties er allemaal gebeuren bij deze nieuwe versie.  
    6783 
    6884=== Maken van een nieuwe starter kit ===