buildframework/helium/doc/src/manual/stage_startup.rst.inc.ftl
author wbernard
Tue, 27 Apr 2010 08:33:08 +0300
changeset 587 85df38eb4012
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_startup.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 - startup
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    25
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    26
Stage: Startup
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
.. index::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    30
  single: Remote builds
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    31
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    32
Remote builds
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    33
-------------
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: Remote build Commands
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    37
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    38
Remote build Commands
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
Remote builds are used when a number of build configurations need to be run on several machines from a single work area. For a remote machine to receive the commands, a build manager must login and start the antserver process by running ``c:\apps\antserver\run_ant_server.bat``.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    42
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    43
Two commands are supported::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    44
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    45
  hlm distribute-work-area
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    46
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    47
Tars up the work area, copies it to a network location defined by the :hlm-p:`work.area.temp.dir` property, and sends a command to the remote servers to untar the work area. On the remote servers the basedir is deleted before the work area is untarred. ::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    48
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    49
  hlm start-remote-builds
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    50
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    51
Sends commands to start the builds based on the remote builds configuration file entries.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    52
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    53
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    54
.. index::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    55
  single: Remote build configuration
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    56
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    57
Remote build configuration
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    58
::::::::::::::::::::::::::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    59
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    60
The configuration file format defines one or more builds::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    61
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    62
  <BuildProcessDefinition>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    63
      <remoteBuilds>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    64
          <build machine="vcbldsrv12" ccmhomedir="${r'$'}{ccm.home.dir}" basedir="${r'$'}{ccm.base.dir}" executable="hlm" dir="${r'$'}{_build.dir}\PRODUCT" args="product-build -Dbuild.number=${r'$'}{build.number} -Dprep.root.dir=d:\"/>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    65
      </remoteBuilds>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    66
  </BuildProcessDefinition>
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    67
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    68
Each ``<build>`` element has a number of attributes:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    69
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    70
machine
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    71
  The name of the remote build machine. The commands will only work if an Ant server instance is running, so be careful not to run the server on the local machine!
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    72
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    73
ccmhomedir
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    74
  This should match to the :hlm-p:`ccm.home.dir` property.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    75
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    76
basedir
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    77
  This defines the directory in which the current work area (under :hlm-p:`ccm.home.dir`) is located.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    78
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    79
executable
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    80
  The file to be executed when starting a build. Typically this can be left as ``hlm``.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    81
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    82
dir
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    83
  The directory where the executable should be found and where the command will be run from.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    84
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    85
args
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    86
  The arguments passed to the executable. These should consist of Ant arguments, as the build is run using Ant. Note that this attribute value is treated in the same way as the line attribute in the Ant ``exec`` task - spaces are interpreted as separating the arguments.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    87
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    88
The :hlm-p:`remote.builds.config.file` property defines the location of the configuration file. This should be defined in a team Ant configuration file.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    89
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    90
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    91
.. Commented out because we will not use this for our releases
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    92
   Subcon bootstrap
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    93
   ----------------
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    94
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    95
   The subcon edition of Helium does not include any 3rd party libraries due to licensing restrictions.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    96
   Before you start using a copy of helium for the first time you need to call ``hlm-bootstrap.bat``.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    97
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    98
   Run like this if you get timeout errors and set to the values of your proxy server::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
    99
   
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   100
     hlm-bootstrap.bat -Dproxy.host=172.16.42.137 -Dproxy.port=8080
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   101
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   102
   Or if you have no proxy server::
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   103
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   104
     hlm-bootstrap.bat -Dproxy.disabled=y
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   105
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   106
   The bootstrap process is:
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   107
    
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   108
    * Download Ivy jars.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   109
    * Use Ivy to download dependencies.
85df38eb4012 helium_9.0-a7879c935424
wbernard
parents:
diff changeset
   110
    * Extract and install dependencies.