Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "PTP/release engineering"

< PTP
(Running a headless build)
(Packaging the update site)
Line 17: Line 17:
 
; <code>/home/www/tools/ptp/builds/''ptp_version''</code> : Default location for output build files, where ''ptp_version'' is the version specified on the command line. This can be overidden by changing the value of the <code>BUILDS_DIR</code> variable in the script.
 
; <code>/home/www/tools/ptp/builds/''ptp_version''</code> : Default location for output build files, where ''ptp_version'' is the version specified on the command line. This can be overidden by changing the value of the <code>BUILDS_DIR</code> variable in the script.
  
== Packaging the update site ==
+
== Build results ==
  
The remaining actions must be undertake from the command-line. From here on it is assumed that you have a terminal window open.
+
On completion, a successful build will be located in a subdirectory of the BUILDS_DIR directory called I.IYYYMMDDHHMM, where YYYYMMDDHHMM is the date and time stamp for the build. This directory will contain a signed zipped copy of the master update site along with various other files. Files produced by the build include:
  
Change to the update site plugin directory:
+
* ptp-master-M.N.O-IYYYYMMDDHHMM.zip
 +
* RDT servers for the various operating systems
 +
* build.log
  
cd ''workspace''/org.eclipse.ptp-update
+
If the build was not successful, then there will be no corresponding subdirectory. Instead, the build.log and partial build will be located in the STAGING_DIR.
 
+
Run the command:
+
 
+
sh update_ptp
+
 
+
This will generate a zip file called <code>ptp-updatesite-''version''.zip</code> where <code>''version''</code> is the version of the build.
+
  
 
== Signing the plugins ==
 
== Signing the plugins ==

Revision as of 15:07, 18 March 2009

Overview

Building a PTP release or interim build uses an automated headless build on build.eclipse.org. This document describes how this build is configured, and will enable you to build PTP locally.

Preparation

Check out the releng/org.eclipse.ptp.releng plugin. This plugin contains the main build scripts for PTP.

Running a headless build

The ptpbuild script in the org.eclipse.ptp.releng plugin manages the process of building PTP. It requires one argument that is the version of PTP that is being built. This version is only used to specify the location of the resulting build output files.

The following locations are used by default:

/opt/public/download-staging.priv/tools/ptp/releng 
Main directory where the build will take place. This can be overidden by changing the value of the STAGING_DIR variable in the script.
/home/www/tools/ptp/builds/ptp_version 
Default location for output build files, where ptp_version is the version specified on the command line. This can be overidden by changing the value of the BUILDS_DIR variable in the script.

Build results

On completion, a successful build will be located in a subdirectory of the BUILDS_DIR directory called I.IYYYMMDDHHMM, where YYYYMMDDHHMM is the date and time stamp for the build. This directory will contain a signed zipped copy of the master update site along with various other files. Files produced by the build include:

  • ptp-master-M.N.O-IYYYYMMDDHHMM.zip
  • RDT servers for the various operating systems
  • build.log

If the build was not successful, then there will be no corresponding subdirectory. Instead, the build.log and partial build will be located in the STAGING_DIR.

Signing the plugins

Copy the zip file to build.eclipse.org using the command:

scp ptp-updatesite-version.zip user@build.eclipse.org:/opt/public/download-staging.priv/tools/ptp

where user is your committer user ID.

Next, run the command:

ssh user@build.eclipse.org sign /opt/public/download-staging.priv/tools/ptp/ptp-updatesite-version.zip mail

This will begin the signing process and you will be sent an email when it is completed.

Installing the update site

Move the signed zip file to the release directory with the command:

ssh user@build.eclipse.org mv /opt/public/download-staging.priv/tools/ptp/ptp-updatesite-version.zip downloads/tools/ptp/releases/2.0

Remove the old update site plugins and features:

ssh user@build.eclipse.org "(cd downloads/tools/ptp/releases/2.0; rm plugins/* features/*)"

Unzip the update site using the following command. Answer "A" (All) if you are asked to overwrite any files.

ssh user@build.eclipse.org "(cd downloads/tools/ptp/releases/2.0; unzip ptp-updatesite-version.zip)"

Create individual components

Copy the signed update site back to the org.eclipse.ptp-update directory on your local machine. It should be ok to overwrite the unsigned version.

scp user@build.eclipse.org:downloads/tools/ptp/releases/2.0/ptp-updatesite-version.zip .

Run the make_archives script on the zip file. This will create a number of zip and tar.gz files in the local directory:

sh make_archives ptp-updatesite-version.zip

Remove the old component files from the downloads site:

ssh user@build.eclipse.org "rm -f downloads/tools/ptp/release/2.0/org.eclipse.ptp* downloads/tools/ptp/releases/2.0/ptp_proxy*"

Copy the new zip and tar.gz files up to the download site:

scp org.eclipse.ptp* ptp_proxy* user@build.eclipse.org:downloads/tools/ptp/releases/2.0

Update the downloads page

Update the downloads.php page with the new release information.

Back to the top