buildframework/helium/doc/src/manual/stage_releasing.rst.inc.ftl
author wbernard
Tue, 27 Apr 2010 08:33:08 +0300
changeset 587 85df38eb4012
child 588 c7c26511138f
permissions -rw-r--r--
helium_9.0-a7879c935424
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
587
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     1
<#--
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     2
============================================================================ 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     3
Name        : stage_releasing.rst.inc.ftl
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     4
Part of     : Helium 
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     5
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     6
Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     7
All rights reserved.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     8
This component and the accompanying materials are made available
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
     9
under the terms of the License "Eclipse Public License v1.0"
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    10
which accompanies this distribution, and is available
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    11
at the URL "http://www.eclipse.org/legal/epl-v10.html".
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    12
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    13
Initial Contributors:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    14
Nokia Corporation - initial contribution.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    15
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    16
Contributors:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    17
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    18
Description:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    19
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    20
============================================================================
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    21
-->
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    22
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    23
.. index::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    24
  single: Stage - Releasing
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    25
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    26
Stage: Releasing
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    27
================
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    28
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    29
A published build can be made into a release by running the command::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    30
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    31
    hlm release
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    32
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    33
from the root of the directory on the network where the build is located. This will create a matching release directory and copy the appropriate files there. The selected files are defined in ``release.ant.xml``.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    34
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    35
.. index::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    36
  single: Stage - Delta Releasing
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    37
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    38
Stage: Delta releasing
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    39
======================
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    40
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    41
Introduction:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    42
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    43
A delta release is a zip file with only the changed and new files between two build areas. A XML file is also generated that contains the list of files removed between the two build areas. This XML file is read by SymDEC and deletes these files.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    44
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    45
Prequisities for automated use:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    46
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    47
- Publish is run after this stage
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    48
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    49
Each build should run the :hlm-t:`delta-zip` target which creates a delta from a previous build to the current one. (This target looks at previous builds in the publish dir for the md5 file and chooses the most recent one).
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    50
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    51
Optionally: A previous build's MD5 can be passed as an argument, this might be the last bi-weekly release or used when builds are not published (the last build would have run the :hlm-t:`delta-zip` target)::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    52
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    53
  hlm delta-zip -Dold.md5.file=e:\wk01_build\output\build_area\delta_zip\0.0742.3.X.15.md5 -Dold.md5.file.present=y
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    54
  
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    55
Exclude directories from the zip::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    56
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    57
  <property name="delta.exclude.commasep" value="epoc32_save.zip,output/**/*,delta_zips/**/*,temp/**/*"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    58
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    59
Output::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    60
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    61
  Z:\output\build_area\delta_zip
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    62
   + delta_zip.zip
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    63
   + specialInstructions.xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    64
   + release_metadata.xml
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    65
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    66
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    67
.. index::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    68
  single: Stage - Release Notes
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    69
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    70
Stage: Release notes
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    71
====================
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    72
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    73
Introduction:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    74
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    75
This generates a release note by modifying a template (that you can edit yourself) with values from the build and Synergy.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    76
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    77
Usage::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    78
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    79
  hlm release-notes -Dbuild.number=1
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    80
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    81
Define in the build configuration the path to the release notes configuration::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    82
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    83
  e.g. <property name="relnotes.config.dir" value="${r'$'}{helium.dir}/../config/${r'$'}{product.family}_config/${r'$'}{build.name}/relnotes"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    84
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    85
The contents of "config_template" in ``helium/extensions/nokia/config/relnotes`` should be copied to the appropriate directory, e.g. ``config/config/relnotes``.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    86
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    87
Contents of template:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    88
 * ``logo.png`` : the logo of your product
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    89
 * ``template.rtf`` : the document that is modified to form the output
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    90
 * ``relnotes_properties.ant.xml`` : the names of the tokens in template.rtf that will be replaced
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    91
                  Many of the values are commented out as they change rapidly and will need to be added to the output RTF file manually.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    92
 * ``relnotes.properties`` : the values of the tokens
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    93
                         New values can be added e.g. token1=1.0 and referenced in relnotes.xml by ${r'$'}{token1}
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    94
                         If you want a link to a file start with .\\filename or .\\folder\\filename or \\\\share1\\file
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    95
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    96
Project names can be looked up from the BOM and are set into properties, see ``config_template/relnotes/relnotes_properties.ant.xml`` for example.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    97
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    98
If you want to add a new value to the output that is dynamic then you should:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    99
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   100
1) Open your ``template.rtf`` in Word and add some text that is unique eg. NewValueHere
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   101
2) Open your ``template.rtf`` in a plain text editor such as UltraEdit and search for your value. You may find it is split over two lines or contains RTF markup language mixed into the value e.g. New\\pardValueHere
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   102
   If this is the case reformat so you get the value all on one line and remove extra markup.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   103
3) Check your template still works in Word.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   104
4) Add a new property to ``relnotes.properties`` or use existing properties from Helium or your build config files.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   105
5) Add a new replace statement to ``relnotes_properties.ant.xml`` that references the property in step 4.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   106
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   107
Output::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   108
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   109
  Z:\output\relnotes