587
|
1 |
<#--
|
|
2 |
============================================================================
|
|
3 |
Name : stage_source_preparation.rst.inc.ftl
|
|
4 |
Part of : Helium
|
|
5 |
|
|
6 |
Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
|
|
7 |
All rights reserved.
|
|
8 |
This component and the accompanying materials are made available
|
|
9 |
under the terms of the License "Eclipse Public License v1.0"
|
|
10 |
which accompanies this distribution, and is available
|
|
11 |
at the URL "http://www.eclipse.org/legal/epl-v10.html".
|
|
12 |
|
|
13 |
Initial Contributors:
|
|
14 |
Nokia Corporation - initial contribution.
|
|
15 |
|
|
16 |
Contributors:
|
|
17 |
|
|
18 |
Description:
|
|
19 |
|
|
20 |
============================================================================
|
|
21 |
-->
|
|
22 |
|
|
23 |
.. index::
|
|
24 |
single: Stage - Source preparation
|
|
25 |
|
|
26 |
Stage: Source preparation
|
|
27 |
=========================
|
|
28 |
|
|
29 |
The build preparation consists in two parts:
|
|
30 |
|
|
31 |
* Getting delivery content (SCM, zips...),
|
|
32 |
* Preparing the build area.
|
|
33 |
|
|
34 |
To get SCM source you just have to run::
|
|
35 |
|
|
36 |
hlm prep-work-area
|
|
37 |
|
|
38 |
To create 'build of materials'::
|
|
39 |
|
|
40 |
hlm create-bom
|
|
41 |
|
|
42 |
Synergy
|
|
43 |
-------
|
|
44 |
|
|
45 |
In order for the synergy commands to be executed you must define the property ccm.enabled=true in one of the your config files or on the command line. e.g.
|
|
46 |
|
|
47 |
.. code-block:: xml
|
|
48 |
|
|
49 |
<property name="ccm.enabled" value="true" />
|
|
50 |
|
|
51 |
It is possible to automatically get content from Synergy using the Helium framework.
|
|
52 |
To handle that you have to configure the delivery.xml file from your family build configuration folder and reference by the property prep.delivery.file.
|
|
53 |
|
|
54 |
Example configurations like a minibuild can be found under the Helium source tree.
|
|
55 |
|
|
56 |
Example of configuration:
|
|
57 |
|
|
58 |
.. code-block:: xml
|
|
59 |
|
|
60 |
<build>
|
|
61 |
<config name="" abstract="true">
|
|
62 |
<set name="database" value="fa1f"/>
|
|
63 |
<set name="host" value="${r'$'}{ccm.engine.host}" />
|
|
64 |
<set name="dbpath" value="${r'$'}{ccm.database.path}" />
|
|
65 |
|
|
66 |
<set name="dir" value="Z:\some\location"/>
|
|
67 |
<set name="threads" value="4"/>
|
|
68 |
<set name="sync" value="true"/>
|
|
69 |
<set name="use.reconfigure.template" value="false"/>
|
|
70 |
<set name="release" value="${r'$'}{release.tag}" />
|
|
71 |
|
|
72 |
<config name="ppd_sw-PPD51.32_200810:project:sa1spp#1" type="checkout" >
|
|
73 |
<set name="folders" value="jk1f#1820" />
|
|
74 |
</config>
|
|
75 |
|
|
76 |
<config name="WLANSniffer2-2007_wk21:project:e002sa08#1" type="snapshot" />
|
|
77 |
|
|
78 |
<config name="NSeries08_Themes-1:project:fa1f#1" type="checkout" >
|
|
79 |
<set name="tasks" value="jk1f#1763" />
|
|
80 |
<set name="skip.ci" value="true"/>
|
|
81 |
</config>
|
|
82 |
|
|
83 |
<config name="NSeries08_Themes-1:project:fa1f5133#2" type="checkout" >
|
|
84 |
<set name="skip.ci" value="false"/>
|
|
85 |
<set name="ci.custom.query" value="(release='MinibuildDomain/next')"/>
|
|
86 |
</config>
|
|
87 |
|
|
88 |
<config name="S60-S60.32_200810:project:sa1spp#1" type="checkout" >
|
|
89 |
<set name="folders" value="jk1f#1983" />
|
|
90 |
</config>
|
|
91 |
|
|
92 |
<config name="ppd_sw-username:project:sa1spp#1" type="update"/>
|
|
93 |
|
|
94 |
<config name="cellmo" abstract="true">
|
|
95 |
<set name="dir" value="${r'$'}{ccm.base.dir}\cellmo" />
|
|
96 |
<set name="threads" value="1" />
|
|
97 |
|
|
98 |
<config name="cellmo_bins_rm235_PRODUCT-ncpp.ICPR71_08w24.2:project:tr1cmtsw#1" type="snapshot" />
|
|
99 |
<config name="cellmo_bins_rm236_PRODUCT_chn-ncpp.ICPR71_08w24.2:project:tr1cmtsw#1" type="snapshot" />
|
|
100 |
<config name="cellmo_bins_rm342_PRODUCT_lta-ncpp.ICPR71_08w24.2:project:tr1cmtsw#1" type="snapshot" />
|
|
101 |
</config>
|
|
102 |
|
|
103 |
</config>
|
|
104 |
<build>
|
|
105 |
|
|
106 |
|
|
107 |
Checkout: only need to define this when extra tasks are required on top of the listed project, otherwise use the snapshot type.
|
|
108 |
The following properties are required:
|
|
109 |
- release : synergy release to use.
|
|
110 |
- dir : the location of your target snapshot.
|
|
111 |
- database: the name of the synergy database you want to use.
|
|
112 |
The following properties are optional:
|
|
113 |
- thread : optional parameter, this define the number of process to run for parallel snapshots.
|
|
114 |
- purpose : Purpose to check out with.
|
|
115 |
- sync : Force a sync step after the work area update.
|
|
116 |
- version : the version to check out toward to.
|
|
117 |
- tasks : add additional tasks to the reconfigure properties.
|
|
118 |
- folders : add additional folders to the reconfigure properties.
|
|
119 |
- use.reconfigure.template: enable the usage of the reconfigure templates, this means the project will just be reconfigured, the reconfigure properties will not be modified.
|
|
120 |
- fix.missing.baselines: automatically detect new projects and check them out.
|
|
121 |
- replace.subprojects: boolean value to enable/disable project replacement during update (default: true).
|
|
122 |
- skip.ci: boolean value to include/exclude the project from CC modificationset checking.
|
|
123 |
- ci.custom.query: Extend the synergy query for CC modificationset checking eg.(release='MinibuildDomain/next').
|
|
124 |
- show.conflicts: boolean value to check for task conflicts.
|
|
125 |
- show.conflicts.objects: boolean value to check for object conflicts.
|
588
|
126 |
- releasable: boolean value which defines if the project should be considered by the release-work-area target.
|
|
127 |
- baseline.release: defines what release should be used while releasing the project and creating the baseline.
|
587
|
128 |
Snapshot: define type of the spec as snapshot and name as the baseline name.
|
|
129 |
The following properties are required:
|
|
130 |
- dir : the location of your target snapshot.
|
|
131 |
- database: the name of the synergy database you want to use.
|
|
132 |
The following properties are optional:
|
|
133 |
- thread : optional parameter, this define the number of process to run for parallel snapshots.
|
|
134 |
|
|
135 |
Update: define type of the spec as update and name as the project to update.
|
|
136 |
The following properties are required:
|
|
137 |
- database: the name of the synergy database you want to use.
|
|
138 |
|
|
139 |
Mercurial
|
|
140 |
---------
|
|
141 |
|
|
142 |
Add to ant configuration:
|
|
143 |
|
|
144 |
.. code-block:: xml
|
|
145 |
|
|
146 |
<target name="prep-work-area">
|
|
147 |
<hlm:scm scmUrl="scm:hg:C:/Build_C/master">
|
|
148 |
<hlm:checkout baseDir="${r'$'}{ccm.project.wa_path}/GraphicsDomain"/>
|
|
149 |
<hlm:changelog baseDir="${r'$'}{ccm.project.wa_path}/GraphicsDomain" xmlbom="${r'$'}{build.log.dir}/${r'$'}{build.id}_bom.xml" />
|
|
150 |
</hlm:scm>
|
|
151 |
</target>
|
|
152 |
|
|
153 |
For more information see API_
|
|
154 |
|
|
155 |
.. _API: ../helium-antlib/api/doclet/index.SCM.html
|