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


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

--

Legend:

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

    v2 v3  
    3636 
    3737 
    38 === Planning van een OpenAC release === 
     38== Planning van een OpenAC release == 
     39 
     40[[NoteBox(note, OpenAC werkt niet meer met een time-based release, maar met een feature-based release. Zie de [/Releases releases] pagina voor informatie over welke features geselecteerd zijn voor welke release. De procedure met twee pilot-AC's blijft behouden.)]] 
    3941 
    4042 * De releasedatum is de datum dat de acceptatieversie wordt aangemaakt door de development-branch te kopiëren naar een release-branch.  De releasedata vallen in principe op 31-3, 30-6, 25-9 en 15-12 (4x per jaar). 
     
    4547 * week na releasedatum: test bij 2 pilot-AC's, changes overnemen, bericht productieversie live 
    4648 
    47 === Testen en maken van een OpenAC release === 
     49== Testen en maken van een OpenAC release == 
    4850 
    4951Je zit in een werkkopie van de tak 'development'. Doe nu de volgende stappen:  
    5052 
    51  * 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).  
    52  * 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.  
    53  * Draai de unit tests en fix zonodig  
    54  * Loop het [TestScript test script] door  
    55  * Merge door AC's gemaakte fixes op de vorige release in de development-tak  
    56  * Test de wijzigingen zonodig  
    57  * '''svn commit''' om de wijzigingen uit de merge in te leveren  
    58  * Werk '''VERSIES.txt''' bij door de releasedatum aan de laatste versie toe te voegen en de omschrijving af te maken  
    59  * Draai '''bin/clean''' en commit eventuele bestanden die nog geen eol-style LF hadden  
    60  * Draai nog 1x de unit tests  
    61  * '''svn commit'''  
    62  * Draai '''bin/release 1.XXX''' om development te kopiëren naar de nieuwe release in SVN  
    63  * Maak de adaptatiemap in de nieuwe release schrijfbaar voor centra door 3 regels te kopiëren in /usr/local/apache1/svn/etc/permissions  
     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 
     64   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. 
    6466 * Stuur een release-bericht naar openac@fenac.nl. Denk daarbij goed na welke migraties er allemaal gebeuren bij deze nieuwe versie.  
    6567 
    66  === Maken van een nieuwe starter kit === 
     68=== Maken van een nieuwe starter kit === 
     69 
     70[[NoteBox(warning, De OpenAC starter kit wordt nu met NSIS gemaakt. Deze documentatie is niet meer actueel.)]] 
     71 
    6772De starter kit is in essentie een self-extracting ZIP van een release branch van OpenAC. Dit zijn de stappen die je moet doorlopen om een starter kit te maken.  
    6873 
     
    8287 * Pas de links aan op de wiki-homepage en in de installatiehandleiding, zodat deze wijzen naar de meest recente starter kit.  
    8388 
    84 == Online documentatie genereren == 
    85  
    86 === Infrastructuur en werking === 
    87  
    88 De benodigdheden voor het genereren van de online documentatie staan op de server in directory '''/usr/local/apache1/openac-documentatie'''. Deze directory bevat de volgende onderdelen: 
    89 ||development-working-copy||een lokaal uitgecheckte versie van OpenAC|| 
    90 ||genereer||een symbolische link naar het script waarmee de documentatie gegenereerd kan worden|| 
    91 ||html||de html-output na het genereren van de documentatie|| 
    92  
    93 Het script gebruikt de volgende onderdelen uit de sandbox map van de OpenAC repository: 
    94 ||Doxyfile||het configuratiebestand van Doxygen|| 
    95 ||doxypy.py||een doxygen filter voor het verwerken van Python-bestanden|| 
    96 ||documentatie/custom||custom headers, footers, stylesheets e.d. die gebruikt worden door Doxygen tijdens het genereren van de documentatie|| 
    97  
    98 Het script begint met het bijwerken van de lokaal uitgecheckte versie van OpenAC met svn update. Vervolgens wordt de documentatie gegenereerd met Doxygen. Daarna wordt de documentatie naar de uiteindelijke locaties gekopieerd, te weten: 
    99 ||/usr/local/apache1/openac-site/documentatie/html||de documentatie|| 
    100 ||/usr/local/apache1/openac-site/documentatie/custom||stylesheets e.d.|| 
    101  
    102 === Genereren documentatie === 
    103  
    104 De online documentatie kan worden gegenereerd met het commando '''genereer''', op de volgende manier: 
    105  
    106 {{{ 
    107 cd /usr/local/apache1/openac-documentatie 
    108 ./genereer 
    109 }}} 
    110  
    111 '''genereer''' is een symbolische link naar het script ''/usr/local/apache-1/openac-documentatie/svn_checkout/bin/documentatie'' en verandert dus automatisch als ''bin/documentatie'' wordt gewijzigd en gecommit. Na de wijziging is het natuurlijk wel noodzakelijk om een svn update te doen in de map svn_checkout. 
    112  
    113 === Afhankelijkheden === 
    114  
    115 Voor het genereren van de online documentatie moeten de volgende twee pakketten op de server zijn geinstalleerd: 
    116  * Graphviz, voor het dynamisch genereren van diagrammen door Doxygen; 
    117  * Doxygen, en wel de door ons zelf gewijzigde versie. 
    118  
    119 Beide pakketten staan in '''/usr/local/inst''', inclusief een ''myconfig.sh'' voor de lokale instellingen.