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.
PTP/release engineering
Contents
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.
Packaging the update site
The remaining actions must be undertake from the command-line. From here on it is assumed that you have a terminal window open.
Change to the update site plugin directory:
cd workspace/org.eclipse.ptp-update
Run the command:
sh update_ptp
This will generate a zip file called ptp-updatesite-version.zip
where version
is the version of the build.
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.