Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Sohn2013-08-30 22:26:18 +0000
committerMatthias Sohn2013-09-04 14:06:02 +0000
commitb97a35d7cfbcd70a7eae158f817bfbf7ea81a969 (patch)
treea75899d8cf7c0fcd9d5dc6d4c885648cb1f34ce3
parent3eb05bec89674f069bfc3056b3507adffe41f3ed (diff)
downloadjgit-b97a35d7cfbcd70a7eae158f817bfbf7ea81a969.tar.gz
jgit-b97a35d7cfbcd70a7eae158f817bfbf7ea81a969.tar.xz
jgit-b97a35d7cfbcd70a7eae158f817bfbf7ea81a969.zip
Update build to use CBI jarsigner plugin
The dash signing plugin has been retired hence we need to update our build to use the CBI jarsigner plugin for signing build results. Pack test classes to enable signing them. Also re-enable pack200 for bundle org.eclipse.jgit. WORKAROUND: there is no easy way to run tests with maven-surefire-plugin from signed test-jar so for a quick workaround we will have to add a build step on Hudson so that we can run tests before signing: - first step will do "clean, verify" to compile and run tests - second step will do "install, deploy" with profile "eclipse-sign" and use -DskipTests=true to skip tests since they would hit a SecurityException when unsigned test classes are in same package as signed classes under test - third step will do "clean, install, deploy" on packaging reactor to build features and p2 repository with profile "eclipse-sign" to sign and pack200 all bundles. TODO: Tycho doesn't suport picking up pack200 artifacts via pomDependencies hence we need to find a way to copy them manually and use tycho-extra's tycho-p2-extras-plugin:publish-features-and-bundles to generate the missing p2 metadata. Change-Id: Iec2c5ab3027a3e3f9ecc0d2f99193385177d9025 Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
-rw-r--r--org.eclipse.jgit.ant.test/pom.xml11
-rw-r--r--org.eclipse.jgit.http.test/pom.xml11
-rw-r--r--org.eclipse.jgit.java7.test/pom.xml19
-rw-r--r--org.eclipse.jgit.packaging/pom.xml155
-rw-r--r--org.eclipse.jgit.pgm.test/pom.xml19
-rw-r--r--org.eclipse.jgit.test/pom.xml11
-rw-r--r--org.eclipse.jgit/META-INF/eclipse.inf2
-rw-r--r--pom.xml84
8 files changed, 305 insertions, 7 deletions
diff --git a/org.eclipse.jgit.ant.test/pom.xml b/org.eclipse.jgit.ant.test/pom.xml
index b6717a25e7..82f45322ac 100644
--- a/org.eclipse.jgit.ant.test/pom.xml
+++ b/org.eclipse.jgit.ant.test/pom.xml
@@ -92,6 +92,17 @@
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Xmx256m -Dfile.encoding=UTF-8</argLine>
diff --git a/org.eclipse.jgit.http.test/pom.xml b/org.eclipse.jgit.http.test/pom.xml
index 31382bcc6c..03fc6d8725 100644
--- a/org.eclipse.jgit.http.test/pom.xml
+++ b/org.eclipse.jgit.http.test/pom.xml
@@ -113,6 +113,17 @@
</testResources>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Djava.io.tmpdir=${project.build.directory}</argLine>
diff --git a/org.eclipse.jgit.java7.test/pom.xml b/org.eclipse.jgit.java7.test/pom.xml
index c6b25d4ab8..2120db0844 100644
--- a/org.eclipse.jgit.java7.test/pom.xml
+++ b/org.eclipse.jgit.java7.test/pom.xml
@@ -105,10 +105,21 @@
<plugins>
<plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <argLine>-Xmx256m -Dfile.encoding=UTF-8</argLine>
- </configuration>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <argLine>-Xmx256m -Dfile.encoding=UTF-8</argLine>
+ </configuration>
</plugin>
</plugins>
</build>
diff --git a/org.eclipse.jgit.packaging/pom.xml b/org.eclipse.jgit.packaging/pom.xml
index b52011133b..37d0fee4fe 100644
--- a/org.eclipse.jgit.packaging/pom.xml
+++ b/org.eclipse.jgit.packaging/pom.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
- Copyright (C) 2009-2012, Matthias Sohn <matthias.sohn@sap.com>
+ Copyright (C) 2009, 2013, Matthias Sohn <matthias.sohn@sap.com>
and other copyright owners as documented in the project's IP log.
This program and the accompanying materials are made available
@@ -60,8 +60,16 @@
<properties>
<tycho-version>0.18.0</tycho-version>
+ <tycho-extras-version>0.18.0</tycho-extras-version>
</properties>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>repo.eclipse.org.cbi-releases</id>
+ <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
+ </pluginRepository>
+ </pluginRepositories>
+
<modules>
<module>org.eclipse.jgit.target</module>
<module>org.eclipse.jgit.feature</module>
@@ -181,9 +189,154 @@
</environments>
</configuration>
</plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-plugin</artifactId>
+ <version>${tycho-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200a-plugin</artifactId>
+ <version>${tycho-extras-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200b-plugin</artifactId>
+ <version>${tycho-extras-version}</version>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.cbi.maven.plugins</groupId>
+ <artifactId>eclipse-jarsigner-plugin</artifactId>
+ <version>1.0.4</version>
+ </plugin>
</plugins>
</pluginManagement>
</build>
+ <profiles>
+ <profile>
+ <id>eclipse-sign</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <configuration>
+ <includePackedArtifacts>true</includePackedArtifacts>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200a-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>pack200-normalize</id>
+ <goals>
+ <goal>normalize</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.cbi.maven.plugins</groupId>
+ <artifactId>eclipse-jarsigner-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>sign</id>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200b-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>pack200-pack</id>
+ <goals>
+ <goal>pack</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>p2-metadata</id>
+ <goals>
+ <goal>p2-metadata</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ <configuration>
+ <defaultP2Metadata>false</defaultP2Metadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ <profile>
+ <id>eclipse-pack</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>target-platform-configuration</artifactId>
+ <configuration>
+ <includePackedArtifacts>true</includePackedArtifacts>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200a-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>pack200-normalize</id>
+ <goals>
+ <goal>normalize</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200b-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>pack200-pack</id>
+ <goals>
+ <goal>pack</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-p2-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>p2-metadata</id>
+ <goals>
+ <goal>p2-metadata</goal>
+ </goals>
+ <phase>package</phase>
+ </execution>
+ </executions>
+ <configuration>
+ <defaultP2Metadata>false</defaultP2Metadata>
+ </configuration>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
diff --git a/org.eclipse.jgit.pgm.test/pom.xml b/org.eclipse.jgit.pgm.test/pom.xml
index 0c59b8d377..7906822e07 100644
--- a/org.eclipse.jgit.pgm.test/pom.xml
+++ b/org.eclipse.jgit.pgm.test/pom.xml
@@ -106,5 +106,24 @@
<build>
<sourceDirectory>src/</sourceDirectory>
<testSourceDirectory>tst/</testSourceDirectory>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <configuration>
+ <argLine>-Djava.io.tmpdir=${project.build.directory}</argLine>
+ </configuration>
+ </plugin>
+ </plugins>
</build>
</project>
diff --git a/org.eclipse.jgit.test/pom.xml b/org.eclipse.jgit.test/pom.xml
index 36eac88c59..85f7ff1cf3 100644
--- a/org.eclipse.jgit.test/pom.xml
+++ b/org.eclipse.jgit.test/pom.xml
@@ -134,6 +134,17 @@
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jar-plugin</artifactId>
+ <executions>
+ <execution>
+ <goals>
+ <goal>test-jar</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<argLine>-Xmx256m -Dfile.encoding=UTF-8</argLine>
diff --git a/org.eclipse.jgit/META-INF/eclipse.inf b/org.eclipse.jgit/META-INF/eclipse.inf
deleted file mode 100644
index 8f39f72092..0000000000
--- a/org.eclipse.jgit/META-INF/eclipse.inf
+++ /dev/null
@@ -1,2 +0,0 @@
-jarprocessor.exclude.pack=true
-jarprocessor.exclude.children=true \ No newline at end of file
diff --git a/pom.xml b/pom.xml
index f506656572..f0a69ad3d7 100644
--- a/pom.xml
+++ b/pom.xml
@@ -194,6 +194,13 @@
</repository>
</repositories>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>repo.eclipse.org.cbi-releases</id>
+ <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
+ </pluginRepository>
+ </pluginRepositories>
+
<build>
<pluginManagement>
<plugins>
@@ -211,6 +218,9 @@
<Implementation-Vendor-URL>${jgit-url}</Implementation-Vendor-URL>
</manifestEntries>
</archive>
+ <!-- TODO: uncomment this in order to skip empty artifact of test modules as soon as bug 416299 is fixed
+ <skipIfEmpty>true</skipIfEmpty>
+ -->
</configuration>
</plugin>
@@ -312,6 +322,22 @@
<minSeverity>info</minSeverity>
</configuration>
</plugin>
+
+ <plugin>
+ <groupId>org.eclipse.cbi.maven.plugins</groupId>
+ <artifactId>eclipse-jarsigner-plugin</artifactId>
+ <version>1.0.4</version>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200a-plugin</artifactId>
+ <version>0.18.0</version>
+ </plugin>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200b-plugin</artifactId>
+ <version>0.18.0</version>
+ </plugin>
</plugins>
</pluginManagement>
@@ -494,6 +520,64 @@
</plugins>
</build>
</profile>
+ <profile>
+ <id>eclipse-sign</id>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200a-plugin</artifactId>
+ <!-- TODO remove this configuration when https://git.eclipse.org/r/#/c/16027 is available -->
+ <configuration>
+ <supportedProjectTypes>
+ <supportedProjectType>jar</supportedProjectType>
+ </supportedProjectTypes>
+ </configuration>
+ <executions>
+ <execution>
+ <id>pack200-normalize</id>
+ <goals>
+ <goal>normalize</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+<!-- <plugin>
+ <groupId>org.eclipse.cbi.maven.plugins</groupId>
+ <artifactId>eclipse-jarsigner-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>sign</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+--> <plugin>
+ <groupId>org.eclipse.tycho.extras</groupId>
+ <artifactId>tycho-pack200b-plugin</artifactId>
+ <!-- TODO remove this configuration when https://git.eclipse.org/r/#/c/16027 is available -->
+ <configuration>
+ <supportedProjectTypes>
+ <supportedProjectType>jar</supportedProjectType>
+ </supportedProjectTypes>
+ </configuration>
+ <executions>
+ <execution>
+ <id>pack200-pack</id>
+ <goals>
+ <goal>pack</goal>
+ </goals>
+ <phase>verify</phase>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
</profiles>
<modules>

Back to the top