Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "PackageDrone/ReleaseBuild"
m (→Assembling outputs) |
|||
Line 10: | Line 10: | ||
<jdeb.keyring>/path/to/gpg/keyring</jdeb.keyring> | <jdeb.keyring>/path/to/gpg/keyring</jdeb.keyring> | ||
− | <jdeb.key> | + | <jdeb.key>320E6224</jdeb.key> |
<jdeb.passphrase>passphrase</jdeb.passphrase> | <jdeb.passphrase>passphrase</jdeb.passphrase> | ||
Have the following RPM macros defined in your <code>~/.rpmmacros</code>: | Have the following RPM macros defined in your <code>~/.rpmmacros</code>: | ||
− | %_gpg_name | + | %_gpg_name 320E6224 |
%__gpg_check_password_cmd /bin/true | %__gpg_check_password_cmd /bin/true | ||
%__gpg_sign_cmd %{__gpg} gpg --batch --no-verbose --no-armor --use-agent --no-secmem-warning -u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename} | %__gpg_sign_cmd %{__gpg} gpg --batch --no-verbose --no-armor --use-agent --no-secmem-warning -u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename} | ||
Line 39: | Line 39: | ||
cd deploy/promote | cd deploy/promote | ||
− | ant -DkeyId= | + | ant -DkeyId=320E6224 -Declipse.committer=userid -DbaseVersion=0.1 -Drelease=0.m1 -DbuildType=milestone -f build.ant |
Check the output with: | Check the output with: | ||
Line 47: | Line 47: | ||
Dry run the upload: | Dry run the upload: | ||
− | ant -DkeyId= | + | ant -DkeyId=320E6224 -Declipse.committer=userid -DbaseVersion=0.1 -Drelease=0.m1 -DbuildType=milestone -f build.ant publish |
Perform the upload: | Perform the upload: | ||
− | ant -DdryRun= -DkeyId= | + | ant -DdryRun= -DkeyId=320E6224 -Declipse.committer=userid -DbaseVersion=0.1 -Drelease=0.m1 -DbuildType=milestone -f build.ant publish |
The download location is structured like this: | The download location is structured like this: |
Revision as of 10:37, 26 January 2016
This page tries to describe the internal build process for releases.
Prerequisites
- Maven 3.3.x with
mvn
in the "PATH" -
gpg-agent
and a working signing key - rpm build tools installed
Have the following properties set in your ~/.m2/settings.xml
or provide these during the builds:
<jdeb.keyring>/path/to/gpg/keyring</jdeb.keyring> <jdeb.key>320E6224</jdeb.key> <jdeb.passphrase>passphrase</jdeb.passphrase>
Have the following RPM macros defined in your ~/.rpmmacros
:
%_gpg_name 320E6224 %__gpg_check_password_cmd /bin/true %__gpg_sign_cmd %{__gpg} gpg --batch --no-verbose --no-armor --use-agent --no-secmem-warning -u "%{_gpg_name}" -sbo %{__signature_filename} %{__plaintext_filename}
Performing the build
git clone https://github.com/eclipse/packagedrone.git packagedrone.git cd packagedrone.git cd runtime mvn clean install cd .. mvn clean verify -Prpm -Pjdeb-sign -Dtycho.localArtifacts=ignore
Build profiles
The jdeb-sign
profile uses the jdeb.*
properties above to sign the DEB and RPM packages. This profiles also requires the rpm
profile to be active.
Assembling outputs
This step will download the current content of the download area, merge in the newly built content, create the repositories and upload the result back to the download area.
Run the following commands after a successful local build:
cd deploy/promote ant -DkeyId=320E6224 -Declipse.committer=userid -DbaseVersion=0.1 -Drelease=0.m1 -DbuildType=milestone -f build.ant
Check the output with:
find output
Dry run the upload:
ant -DkeyId=320E6224 -Declipse.committer=userid -DbaseVersion=0.1 -Drelease=0.m1 -DbuildType=milestone -f build.ant publish
Perform the upload:
ant -DdryRun= -DkeyId=320E6224 -Declipse.committer=userid -DbaseVersion=0.1 -Drelease=0.m1 -DbuildType=milestone -f build.ant publish
The download location is structured like this:
# plain downloads /package-drone/drops /milestone /0.12.0.m1 /0.12.0.m2 /0.12.0.m3 /0.12.1.m1 /0.13.0.m1 /0.13.0.m2 /0.13.1.m1 /release /0.12.0 /0.12.1 /0.12.2 /0.13.0 /0.13.1 # repositories (apt, yum) /package-drone/release /current -> 0.13 /0.12 /ubuntu /rhel6 /rhel7 /opensuse13 /0.13 /ubuntu /rhel6 /rhel7 /opensuse13 /package-drone/milestone /current -> 0.13 /0.12 /ubuntu /rhel6 /rhel7 /opensuse13 /0.13 /ubuntu /rhel6 /rhel7 /opensuse13
…