Skip to main content
Jump to: navigation, search

Difference between revisions of "OCL/Dev/Releng/Buckminster"

< OCL
(How to Publish a Build)
(How to Run a Build)
Line 13: Line 13:
 
The releng process consists of two main phases - assembling (running) the build and publishing it on the downloads page and the P2 repository (promotion).
 
The releng process consists of two main phases - assembling (running) the build and publishing it on the downloads page and the P2 repository (promotion).
  
== How to Run a Build ==
+
== How to Run a Build ==  
 
+
'''N'''-builds are run automatically when a CVS change is detected (CVS is monitored every 6 hours). '''I''', '''S''', '''R''', and '''M'''-builds must be manually launched.
'''N'''-builds are run automatically every night. '''I''', '''S''','''R''', and '''M'''-builds must be manually launched.
+
  
 
# Navigate to https://hudson.eclipse.org/hudson/job/buckminster-mdt-ocl-core-3.1-nightly/
 
# Navigate to https://hudson.eclipse.org/hudson/job/buckminster-mdt-ocl-core-3.1-nightly/
Line 21: Line 20:
 
# Click "''Build Now''".
 
# Click "''Build Now''".
 
# On the next page, select the correspondent build type. In case you need to publish a milestone/release/maintenance build, you may want to use a proper build alias for the build. For instance, to create an ''M2'' milestone for MDT/OCL Indigo, you have to select the '''S'''-build type and establish "'''3.1.0M2'''" as the build alias.
 
# On the next page, select the correspondent build type. In case you need to publish a milestone/release/maintenance build, you may want to use a proper build alias for the build. For instance, to create an ''M2'' milestone for MDT/OCL Indigo, you have to select the '''S'''-build type and establish "'''3.1.0M2'''" as the build alias.
# Finally, you must press "''Build''" to start the build.  
+
# Finally, you must press "''Build''" to start the build.
  
 
== How to Publish a Build ==
 
== How to Publish a Build ==

Revision as of 09:26, 10 January 2011

MDT OCL Releng Introduction

This is a very brief cheat sheet on how to make and publish builds for MDT OCL project.

First, there are several types of builds:

N-builds: Nightly builds are internal-purpose builds which reflect the current state of the development stream, that is, using the current CVS HEAD state.

I-builds: Integration builds usually reflect the intermediate state of the product.

S/R/M-builds: Stable/Release/Maintenance builds are published on schedule.

The releng process consists of two main phases - assembling (running) the build and publishing it on the downloads page and the P2 repository (promotion).

How to Run a Build

N-builds are run automatically when a CVS change is detected (CVS is monitored every 6 hours). I, S, R, and M-builds must be manually launched.

  1. Navigate to https://hudson.eclipse.org/hudson/job/buckminster-mdt-ocl-core-3.1-nightly/
  2. Log in using your CVS credentials
  3. Click "Build Now".
  4. On the next page, select the correspondent build type. In case you need to publish a milestone/release/maintenance build, you may want to use a proper build alias for the build. For instance, to create an M2 milestone for MDT/OCL Indigo, you have to select the S-build type and establish "3.1.0M2" as the build alias.
  5. Finally, you must press "Build" to start the build.

How to Publish a Build

N-builds are usuallaly published in an automated way. A cron entry defined by the release engineer is responsible to execute the publishing script every night:

30 3 * * * ant -f /shared/jobs/buckminster-mdt-ocl-core-3.1-nightly/lastSuccessful/archive/publishroot/publisher.ant 
-Dbuild.root=/opt/public/jobs/buckminster-mdt-ocl-core-3.1-nightly/lastSuccessful/ 
&> logs/mdt-ocl-publishing.log

Specifically, this ant task publishes the last successful build so that if you wanted to publish a manually executed (and succesfully completed) build you would only require to execute that command in a shell on build.eclipse.org server. To access this server, you have to use a ssh client tool (i.e PUTTY) and do the following:

  1. Ssh to build.eclipse.org at port 22.
  2. Log in using your CVS credentials.
  3. Execute the ant task above.
NB: If it's the first time you access Eclipse's servers, you need to be granted with shell access to log in.
In order to obtain said shell access, tell your project leader to do the request.
Example: https://bugs.eclipse.org/bugs/show_bug.cgi?id=310790.
NB: Mirror servers are synchronized automatically with build.eclipse.org. No manual action is required.

Including MDT OCL into the Eclipse Release Train

After the publishing process is successfully finished the S/R/M-build has to be included into the Eclipse release train.

To do so, one needs to update the MDT/OCL contribution to the correspondent release project (i.e org.eclipse.indigo.build) at /cvsroot/callisto at dev.eclipse.org:

  1. Open the mdt-ocl.b3aggrcon file.
  2. Ensure that you are using the proper repository location (i.e To contribute a milestone for Indigo release train: http://download.eclipse.org/modeling/mdt/ocl/updates/milestones/3.1.0).
  3. Ensure that you are using the proper verion attribute of the org.eclipse.ocl.all.sdk and org.eclipse.ocl.examples features. (i.e you could check the version of the feature, checking the correspondent repository: http://download.eclipse.org/modeling/mdt/ocl/updates/milestones/3.1.0/features/).
  4. Run the Helios release train build (i.e Indigo's Hudson job: https://hudson.eclipse.org/hudson/job/indigo.runAggregator/).
  5. Make sure that the build has been successfully completed.

Back to the top