Skip to content

Commit 4b19340

Browse files
committed
[release] configuration needed for publishing to maven central.
* add project url, license, and developer section to pom * add distribution information to pom. * add source, javadoc, and signing plugins
1 parent 62c8161 commit 4b19340

File tree

3 files changed

+144
-0
lines changed

3 files changed

+144
-0
lines changed

binding-parent/pom.xml

+30
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,36 @@ LICENSE file.
170170
<skipTests>${skipJDK11Tests}</skipTests>
171171
</properties>
172172
</profile>
173+
<!-- When doing a YCSB release, we want to make sure specific bindings aren't included in the maven repo -->
174+
<profile>
175+
<id>ycsb-release</id>
176+
<properties>
177+
<!-- Set the deploy plugin to skip wherever this property is inherited -->
178+
<maven.deploy.skip>true</maven.deploy.skip>
179+
</properties>
180+
<build>
181+
<plugins>
182+
<!-- We still want to make sure that *this* module gets deployed. -->
183+
<plugin>
184+
<groupId>org.apache.maven.plugins</groupId>
185+
<artifactId>maven-deploy-plugin</artifactId>
186+
<executions>
187+
<execution>
188+
<id>but-still-deploy-the-binding-parent</id>
189+
<goals>
190+
<goal>deploy</goal>
191+
</goals>
192+
<phase>deploy</phase>
193+
<inherited>false</inherited>
194+
<configuration>
195+
<skip>false</skip>
196+
</configuration>
197+
</execution>
198+
</executions>
199+
</plugin>
200+
</plugins>
201+
</build>
202+
</profile>
173203
</profiles>
174204
</project>
175205

distribution/pom.xml

+8
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,14 @@ LICENSE file.
318318

319319
</plugins>
320320
</build>
321+
<profiles>
322+
<profile>
323+
<id>ycsb-release</id>
324+
<properties>
325+
<maven.deploy.skip>true</maven.deploy.skip>
326+
</properties>
327+
</profile>
328+
</profiles>
321329

322330
</project>
323331

pom.xml

+106
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,56 @@ LICENSE file.
3030
This is the top level project that builds, packages the core and all the DB bindings for YCSB infrastructure.
3131
</description>
3232

33+
<url>https://ycsb.site/</url>
34+
<licenses>
35+
<license>
36+
<name>Apache License, Version 2.0</name>
37+
<url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
38+
<distribution>repo</distribution>
39+
</license>
40+
</licenses>
41+
<developers>
42+
<!-- Please see git for authorship information.
43+
This list is project maintainers -->
44+
<developer>
45+
<id>allanbank</id>
46+
<name>Robert J. Moore</name>
47+
<email>[email protected]</email>
48+
</developer>
49+
<developer>
50+
<id>busbey</id>
51+
<name>Sean Busbey</name>
52+
<email>[email protected]</email>
53+
</developer>
54+
<developer>
55+
<id>cmatser</id>
56+
<name>Chrisjan Matser</name>
57+
<email>[email protected]</email>
58+
</developer>
59+
<developer>
60+
<id>stfeng2</id>
61+
<name>Stanley Feng</name>
62+
<email>[email protected]</email>
63+
</developer>
64+
</developers>
65+
3366
<scm>
3467
<connection>scm:git:git://github.com/brianfrankcooper/YCSB.git</connection>
3568
<tag>master</tag>
3669
<url>https://github.com/brianfrankcooper/YCSB</url>
3770
</scm>
71+
<distributionManagement>
72+
<repository>
73+
<id>sonatype.releases.https</id>
74+
<name>Release Repo at sonatype oss.</name>
75+
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
76+
</repository>
77+
<snapshotRepository>
78+
<id>sonatype.snapshots.https</id>
79+
<name>snapshot Repo at sonatype oss.</name>
80+
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
81+
</snapshotRepository>
82+
</distributionManagement>
3883
<dependencyManagement>
3984
<dependencies>
4085
<dependency>
@@ -230,4 +275,65 @@ LICENSE file.
230275
</plugin>
231276
</plugins>
232277
</build>
278+
<profiles>
279+
<profile>
280+
<!-- plugins needed to pass sonatype repo checks -->
281+
<id>ycsb-release</id>
282+
<properties>
283+
<doclint>none</doclint>
284+
</properties>
285+
<build>
286+
<pluginManagement>
287+
<plugins>
288+
<plugin>
289+
<groupId>org.apache.maven.plugins</groupId>
290+
<artifactId>maven-deploy-plugin</artifactId>
291+
<version>3.0.0-M1</version>
292+
</plugin>
293+
</plugins>
294+
</pluginManagement>
295+
<plugins>
296+
<plugin>
297+
<groupId>org.apache.maven.plugins</groupId>
298+
<artifactId>maven-source-plugin</artifactId>
299+
<version>3.1.0</version>
300+
<executions>
301+
<execution>
302+
<id>attach-sources</id>
303+
<goals>
304+
<goal>jar-no-fork</goal>
305+
</goals>
306+
</execution>
307+
</executions>
308+
</plugin>
309+
<plugin>
310+
<groupId>org.apache.maven.plugins</groupId>
311+
<artifactId>maven-javadoc-plugin</artifactId>
312+
<version>3.1.1</version>
313+
<executions>
314+
<execution>
315+
<id>attach-javadocs</id>
316+
<goals>
317+
<goal>jar</goal>
318+
</goals>
319+
</execution>
320+
</executions>
321+
</plugin>
322+
<plugin>
323+
<groupId>org.apache.maven.plugins</groupId>
324+
<artifactId>maven-gpg-plugin</artifactId>
325+
<version>1.6</version>
326+
<executions>
327+
<execution>
328+
<id>sign-release-artifacts</id>
329+
<goals>
330+
<goal>sign</goal>
331+
</goals>
332+
</execution>
333+
</executions>
334+
</plugin>
335+
</plugins>
336+
</build>
337+
</profile>
338+
</profiles>
233339
</project>

0 commit comments

Comments
 (0)