You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@zookeeper.apache.org by iv...@apache.org on 2011/11/30 11:07:26 UTC

svn commit: r1208358 - in /zookeeper/bookkeeper/trunk: ./ bookkeeper-server/ bookkeeper-server/bin/ conf/ hedwig-server/ hedwig-server/bin/ scripts/ src/ src/assemble/

Author: ivank
Date: Wed Nov 30 10:07:23 2011
New Revision: 1208358

URL: http://svn.apache.org/viewvc?rev=1208358&view=rev
Log:
BOOKKEEPER-128: pom and script modifications required for generating release packages (ivank)

Added:
    zookeeper/bookkeeper/trunk/src/
    zookeeper/bookkeeper/trunk/src/assemble/
    zookeeper/bookkeeper/trunk/src/assemble/bin.xml
    zookeeper/bookkeeper/trunk/src/assemble/src.xml
Removed:
    zookeeper/bookkeeper/trunk/conf/
    zookeeper/bookkeeper/trunk/scripts/
Modified:
    zookeeper/bookkeeper/trunk/CHANGES.txt
    zookeeper/bookkeeper/trunk/README
    zookeeper/bookkeeper/trunk/bookkeeper-server/bin/bookkeeper   (contents, props changed)
    zookeeper/bookkeeper/trunk/bookkeeper-server/pom.xml
    zookeeper/bookkeeper/trunk/hedwig-server/bin/hedwig   (contents, props changed)
    zookeeper/bookkeeper/trunk/hedwig-server/pom.xml
    zookeeper/bookkeeper/trunk/pom.xml

Modified: zookeeper/bookkeeper/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/CHANGES.txt?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/CHANGES.txt (original)
+++ zookeeper/bookkeeper/trunk/CHANGES.txt Wed Nov 30 10:07:23 2011
@@ -144,6 +144,8 @@ IMPROVEMENTS:
 
  BOOKKEEPER-102: Make bookkeeper use ZK from temporary repo (ivank)
 
+ BOOKKEEPER-128: pom and script modifications required for generating release packages (ivank)
+
  hedwig-client/
 
   BOOKKEEPER-44: Reuse publish channel to default server to avoid too many connect requests to default server when lots of producers came in same time (Sijie Guo via breed)

Modified: zookeeper/bookkeeper/trunk/README
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/README?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/README (original)
+++ zookeeper/bookkeeper/trunk/README Wed Nov 30 10:07:23 2011
@@ -1,3 +1,85 @@
-Hedwig is a large scale pub/sub system built on top of ZooKeeper and BookKeeper.
+Build instructions for BookKeeper
 
-For documentation on building, setting up, and using Hedwig see the `doc` directory.
+-------------------------------------------------------------------------------
+Requirements:
+
+* Unix System
+* JDK 1.6
+* Maven 3.0
+* Autotools (if compiling native hedwig client)
+* Internet connection for first build (to fetch all dependencies)
+
+-------------------------------------------------------------------------------
+The BookKeeper project contains:
+
+ - bookkeeper-server     (BookKeeper server and client)
+ - bookkeeper-benchmark  (Benchmark suite for testing BookKeeper performance)
+ - hedwig-protocol       (Hedwig network protocol)
+ - hedwig-client         (Hedwig client library)
+ - hedwig-server         (Hedwig server)
+
+BookKeeper is a system to reliably log streams of records. It is designed to 
+store  write ahead logs, such as those found in database or database like 
+applications.
+
+Hedwig is a publish-subscribe system designed to carry large amounts of data 
+across the internet in a guaranteed-delivery fashion from those who produce 
+it (publishers) to those who are interested in it (subscribers).
+
+--------------------------------------------------------------------------------
+How do I build?
+
+ BookKeeper uses maven as its build system. To build, run "mvn package" from the 
+ top-level directory, or from within any of the submodules.
+
+ Useful maven commands are:
+
+ * Clean                     : mvn clean
+ * Compile                   : mvn compile
+ * Run tests                 : mvn test 
+ * Create JAR                : mvn package
+ * Run findbugs              : mvn compile findbugs:findbugs
+ * Install JAR in M2 cache   : mvn install
+ * Deploy JAR to Maven repo  : mvn deploy
+ * Run Rat                   : mvn apache-rat:check
+ * Build javadocs            : mvn compile javadoc:aggregate
+ * Build distribution        : mvn package assembly:single
+
+ Tests options:
+
+ * Use -DskipTests to skip tests when running the following Maven goals:
+    'package',  'install', 'deploy' or 'verify'
+ * -Dtest=<TESTCLASSNAME>,<TESTCLASSNAME#METHODNAME>,....
+ * -Dtest.exclude=<TESTCLASSNAME>
+ * -Dtest.exclude.pattern=**/<TESTCLASSNAME1>.java,**/<TESTCLASSNAME2>.java
+
+--------------------------------------------------------------------------------
+How do I run the services?
+
+ Running a Hedwig service requires a running BookKeeper service, which in turn
+ requires a running ZooKeeper service (see http://zookeeper.apache.org). To 
+ start a bookkeeper service quickly for testing, run:
+   
+   $ bookkeeper-server/bin/bookkeeper localbookie 10
+
+ This will start a standalone, ZooKeeper instance and 10 BookKeeper bookies.
+ Note that this is only useful for testing. Data is not persisted between runs.
+
+ To start a real BookKeeper service, you must set up a ZooKeeper instance and
+ run start a bookie on several machines. Modify bookkeeper-server/conf/bk_server.conf
+ to point to your ZooKeeper instance. To start a bookie run:
+
+   $ bookkeeper-server/bin/bookkeeper bookie
+
+ Once you have at least 3 bookies runnings, you can start some Hedwig hubs. A 
+ hub is a machines which is responsible for a set of topics in the pubsub 
+ system. The service automatically distributes the topics among the hubs. 
+ To start a hedwig hub:
+
+   $ hedwig-server/bin/hedwig server
+
+ You can get more help on using these commands by running:
+
+   $ bookkeeper-server/bin/bookkeeper help
+       and
+   $ hedwig-server/bin/hedwig help

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/bin/bookkeeper
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/bin/bookkeeper?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/bin/bookkeeper (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/bin/bookkeeper Wed Nov 30 10:07:23 2011
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/usr/bin/env bash
 #
 #/**
 # * Copyright 2007 The Apache Software Foundation

Propchange: zookeeper/bookkeeper/trunk/bookkeeper-server/bin/bookkeeper
------------------------------------------------------------------------------
    svn:executable = *

Modified: zookeeper/bookkeeper/trunk/bookkeeper-server/pom.xml
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/bookkeeper-server/pom.xml?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/bookkeeper-server/pom.xml (original)
+++ zookeeper/bookkeeper/trunk/bookkeeper-server/pom.xml Wed Nov 30 10:07:23 2011
@@ -46,7 +46,6 @@
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-log4j12</artifactId>
       <version>1.6.4</version>
-      <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.zookeeper</groupId>
@@ -86,7 +85,6 @@
       <groupId>log4j</groupId>
       <artifactId>log4j</artifactId>
       <version>1.2.15</version>
-      <scope>provided</scope>
       <exclusions>
 	<exclusion>
 	  <groupId>javax.mail</groupId>

Modified: zookeeper/bookkeeper/trunk/hedwig-server/bin/hedwig
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/hedwig-server/bin/hedwig?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/hedwig-server/bin/hedwig (original)
+++ zookeeper/bookkeeper/trunk/hedwig-server/bin/hedwig Wed Nov 30 10:07:23 2011
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/usr/bin/env bash
 #
 #/**
 # * Copyright 2007 The Apache Software Foundation

Propchange: zookeeper/bookkeeper/trunk/hedwig-server/bin/hedwig
------------------------------------------------------------------------------
    svn:executable = *

Modified: zookeeper/bookkeeper/trunk/hedwig-server/pom.xml
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/hedwig-server/pom.xml?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/hedwig-server/pom.xml (original)
+++ zookeeper/bookkeeper/trunk/hedwig-server/pom.xml Wed Nov 30 10:07:23 2011
@@ -47,7 +47,6 @@
       <groupId>org.slf4j</groupId>
       <artifactId>slf4j-log4j12</artifactId>
       <version>1.6.4</version>
-      <scope>test</scope>
     </dependency>
     <dependency>
       <groupId>org.apache.bookkeeper</groupId>
@@ -91,7 +90,6 @@
       <groupId>log4j</groupId>
       <artifactId>log4j</artifactId>
       <version>1.2.15</version>
-      <scope>provided</scope>
       <exclusions>
 	<exclusion>
 	  <groupId>javax.mail</groupId>

Modified: zookeeper/bookkeeper/trunk/pom.xml
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/pom.xml?rev=1208358&r1=1208357&r2=1208358&view=diff
==============================================================================
--- zookeeper/bookkeeper/trunk/pom.xml (original)
+++ zookeeper/bookkeeper/trunk/pom.xml Wed Nov 30 10:07:23 2011
@@ -31,11 +31,11 @@
   <packaging>pom</packaging>
   <name>bookkeeper</name>
   <modules>
-  	<module>hedwig-client</module>
-  	<module>hedwig-server</module>
-  	<module>hedwig-protocol</module>
-  	<module>bookkeeper-server</module>
-  	<module>bookkeeper-benchmark</module>
+    <module>hedwig-client</module>
+    <module>hedwig-server</module>
+    <module>hedwig-protocol</module>
+    <module>bookkeeper-server</module>
+    <module>bookkeeper-benchmark</module>
   </modules>
   <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
@@ -46,35 +46,35 @@
     <plugins>
       <plugin>
         <artifactId>maven-compiler-plugin</artifactId>
-	<version>2.3.2</version>
+        <version>2.3.2</version>
         <configuration>
           <source>1.6</source>
           <target>1.6</target>
         </configuration>
       </plugin>
       <plugin>
-      	<groupId>org.apache.maven.plugins</groupId>
-	<artifactId>maven-surefire-plugin</artifactId>
-	<version>2.9</version>
+        <groupId>org.apache.maven.plugins</groupId>
+        <artifactId>maven-surefire-plugin</artifactId>
+        <version>2.9</version>
       </plugin>
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-javadoc-plugin</artifactId>
         <version>2.8</version>
-	<configuration>
-	  <additionalparam>-exclude org.apache.hedwig.client.netty:org.apache.hedwig.client.benchmark:org.apache.hedwig.client.data:org.apache.hedwig.client.exceptions:org.apache.hedwig.client.handlers:org.apache.hedwig.client.ssl</additionalparam>
-	  <subpackages>org.apache.bookkeeper.client:org.apache.bookkeeper.conf:org.apache.hedwig.client:org.apache.hedwig.util:org.apache.hedwig.protocol:org.apache.hedwig.exceptions</subpackages>
+        <configuration>
+          <additionalparam>-exclude org.apache.hedwig.client.netty:org.apache.hedwig.client.benchmark:org.apache.hedwig.client.data:org.apache.hedwig.client.exceptions:org.apache.hedwig.client.handlers:org.apache.hedwig.client.ssl</additionalparam>
+          <subpackages>org.apache.bookkeeper.client:org.apache.bookkeeper.conf:org.apache.hedwig.client:org.apache.hedwig.util:org.apache.hedwig.protocol:org.apache.hedwig.exceptions</subpackages>
           <groups>
-	    <group>
+            <group>
               <title>Bookkeeper</title>
-	      <packages>org.apache.bookkeeper*</packages>
+              <packages>org.apache.bookkeeper*</packages>
             </group>
             <group>
               <title>Hedwig</title>
-	      <packages>org.apache.hedwig*</packages>
+              <packages>org.apache.hedwig*</packages>
             </group>
-	  </groups>
-	</configuration>
+          </groups>
+        </configuration>
         <executions>
           <execution>
             <id>aggregate</id>
@@ -86,25 +86,28 @@
         </executions>
       </plugin>
       <plugin>
-	<artifactId>maven-assembly-plugin</artifactId>
+        <artifactId>maven-assembly-plugin</artifactId>
         <version>2.2.1</version>
         <configuration>
           <descriptors>
-            <descriptor>src/assemble/release.xml</descriptor>
+            <descriptor>src/assemble/bin.xml</descriptor>
+            <descriptor>src/assemble/src.xml</descriptor>
           </descriptors>
         </configuration>
       </plugin>
       <plugin>
-	<groupId>org.apache.rat</groupId>
-	<artifactId>apache-rat-plugin</artifactId>
-	<version>0.7</version>
-	<configuration>
-	  <excludes>
-	    <exclude>.git/**/*</exclude>
-	    <exclude>**/.svn/**/*</exclude>
-	    <exclude>CHANGES.txt</exclude>
-	  </excludes>
-	</configuration>
+        <groupId>org.apache.rat</groupId>
+        <artifactId>apache-rat-plugin</artifactId>
+        <version>0.7</version>
+        <configuration>
+          <excludes>
+            <exclude>.git/**/*</exclude>
+            <exclude>**/.svn/**/*</exclude>
+            <exclude>CHANGES.txt</exclude>
+            <exclude>**/README</exclude>
+            <exclude>**/apidocs/*</exclude>
+          </excludes>
+        </configuration>
       </plugin>
     </plugins>
   </build>
@@ -115,7 +118,7 @@
       <plugin>
         <groupId>org.apache.maven.plugins</groupId>
         <artifactId>maven-jxr-plugin</artifactId>
-	<version>2.1</version>
+        <version>2.1</version>
       </plugin>
       <plugin>
         <groupId>org.codehaus.mojo</groupId>

Added: zookeeper/bookkeeper/trunk/src/assemble/bin.xml
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/src/assemble/bin.xml?rev=1208358&view=auto
==============================================================================
--- zookeeper/bookkeeper/trunk/src/assemble/bin.xml (added)
+++ zookeeper/bookkeeper/trunk/src/assemble/bin.xml Wed Nov 30 10:07:23 2011
@@ -0,0 +1,61 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
+  <id>bin</id>
+  <formats>
+    <format>tar.gz</format>
+  </formats>
+  <includeBaseDirectory>true</includeBaseDirectory>
+  <fileSets>
+    <fileSet>
+      <directory>target</directory>
+      <outputDirectory>/</outputDirectory>
+      <includes>
+        <include>${project.name}-${project.version}.jar</include>
+      </includes>
+    </fileSet>
+    <fileSet>
+      <directory>conf</directory>
+    </fileSet>
+    <fileSet>
+      <directory>bin</directory>
+      <fileMode>755</fileMode>
+    </fileSet>
+    <fileSet>
+      <includes>
+        <include>${basedir}/*.txt</include>
+      </includes>
+    </fileSet>
+    <fileSet>
+      <directory>..</directory>
+      <includes>
+        <include>LICENSE.txt</include>
+        <include>CHANGES.txt</include>
+        <include>README</include>
+      </includes>
+    </fileSet>
+  </fileSets>
+  <dependencySets>
+    <dependencySet>
+      <outputDirectory>/lib</outputDirectory>
+      <unpack>false</unpack>
+      <scope>runtime</scope>
+    </dependencySet>
+  </dependencySets>
+</assembly>

Added: zookeeper/bookkeeper/trunk/src/assemble/src.xml
URL: http://svn.apache.org/viewvc/zookeeper/bookkeeper/trunk/src/assemble/src.xml?rev=1208358&view=auto
==============================================================================
--- zookeeper/bookkeeper/trunk/src/assemble/src.xml (added)
+++ zookeeper/bookkeeper/trunk/src/assemble/src.xml Wed Nov 30 10:07:23 2011
@@ -0,0 +1,61 @@
+<!--
+   Licensed to the Apache Software Foundation (ASF) under one or more
+   contributor license agreements.  See the NOTICE file distributed with
+   this work for additional information regarding copyright ownership.
+   The ASF licenses this file to You under the Apache License, Version 2.0
+   (the "License"); you may not use this file except in compliance with
+   the License.  You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+-->
+<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd">
+  <id>src</id>
+  <formats>
+    <format>tar.gz</format>
+  </formats>
+  <includeBaseDirectory>true</includeBaseDirectory>
+  <fileSets>
+    <fileSet>
+      <directory>.</directory>
+      <useDefaultExcludes>true</useDefaultExcludes>
+      <includes>
+        <include>**/README</include>
+        <include>**/pom.xml</include>
+        <include>**/src/**</include>
+        <include>**/conf/**</include>
+        <include>**/bin/**</include>
+        <include>**/*.txt</include>
+        <include>doc/*</include>
+      </includes>
+      <excludes>
+        <exclude>.git/**</exclude>
+        <exclude>**/.gitignore</exclude>
+        <exclude>**/.svn</exclude>
+        <exclude>**/*.iws</exclude>
+        <exclude>**/*.ipr</exclude>
+        <exclude>**/*.iml</exclude>
+        <exclude>**/.classpath</exclude>
+        <exclude>**/.project</exclude>
+        <exclude>**/.settings</exclude>
+        <exclude>**/target/**</exclude>
+        <!-- until the code that does this is fixed -->
+        <exclude>**/*.log</exclude>
+        <exclude>**/build/**</exclude>
+        <exclude>**/file:/**</exclude>
+        <exclude>**/SecurityAuth.audit*</exclude>
+      </excludes>
+    </fileSet>
+    <fileSet>
+      <directory>target/site/apidocs</directory>
+      <outputDirectory>doc/apidocs</outputDirectory>
+    </fileSet>
+  </fileSets>
+</assembly>