[zookeeper/f20] Updates for system testing

tstclair tstclair at fedoraproject.org
Tue Oct 21 21:04:16 UTC 2014


commit 8ba2394f55adb8149a3523d40333a1ca6458fb94
Author: Timothy St. Clair <tstclair at redhat.com>
Date:   Tue Oct 21 16:02:21 2014 -0500

    Updates for system testing

 zkEnv.sh                     |   32 +++-----------------------------
 zookeeper-3.4.6-server.patch |   20 ++++++++++++++++++++
 zookeeper.service            |   11 +++++++++--
 zookeeper.spec               |   31 ++++++++++++++++++++++++-------
 4 files changed, 56 insertions(+), 38 deletions(-)
---
diff --git a/zkEnv.sh b/zkEnv.sh
index 122a948..f06361d 100755
--- a/zkEnv.sh
+++ b/zkEnv.sh
@@ -26,6 +26,7 @@
 ZOOBINDIR="${ZOOBINDIR:-/usr/bin}"
 ZOOKEEPER_PREFIX="${ZOOBINDIR}/.."
 ZOOCFGDIR="/etc/zookeeper"
+ZOO_LOG_DIR="/var/log/zookeeper"
 
 if [ -f "${ZOOCFGDIR}/zookeeper-env.sh" ]; then
   . "${ZOOCFGDIR}/zookeeper-env.sh"
@@ -59,33 +60,6 @@ else
   JAVA=java
 fi
 
-## TSTCLAIR: TODO
-#
-
+## TSTCLAIR: May need to add jar soup to classpath
 #add the zoocfg dir to classpath
-CLASSPATH="$ZOOCFGDIR:$CLASSPATH"
-
-for i in "$ZOOBINDIR"/../src/java/lib/*.jar
-do
-    CLASSPATH="$i:$CLASSPATH"
-done
-
-#make it work in the binary package
-#(use array for LIBPATH to account for spaces within wildcard expansion)
-if [ -e "${ZOOKEEPER_PREFIX}"/share/zookeeper/zookeeper-*.jar ]; then
-  LIBPATH=("${ZOOKEEPER_PREFIX}"/share/zookeeper/*.jar)
-else
-  #release tarball format
-  for i in "$ZOOBINDIR"/../zookeeper-*.jar
-  do
-    CLASSPATH="$i:$CLASSPATH"
-  done
-  LIBPATH=("${ZOOBINDIR}"/../lib/*.jar)
-fi
-
-for i in "${LIBPATH[@]}"
-do
-    CLASSPATH="$i:$CLASSPATH"
-done
-
-#echo "CLASSPATH=$CLASSPATH"
+CLASSPATH="/usr/share/java/objectweb-asm/asm.jar:/usr/share/java/antlr.jar:/usr/share/java/avalon-framework-api.jar:/usr/share/java/avalon-logkit.jar:/usr/share/java/cglib.jar:/usr/share/java/checkstyle.jar:/usr/share/java/commons-beanutils.jar:/usr/share/java/commons-cli.jar:/usr/share/java/commons-logging.jar:/usr/share/java/geronimo-jms_1.1_spec.jar:/usr/share/java/guava.jar:/usr/share/java/hamcrest/all.jar:/usr/share/java/hamcrest/core.jar:/usr/share/java/hamcrest/text.jar:/usr/share/java/hamcrest/library.jar:/usr/share/java/hamcrest/generator.jar:/usr/share/java/hamcrest/integration.jar:/usr/share/java/javax.mail/javax.mail.jar:/usr/share/java/jdiff.jar:/usr/share/java/jetty/jetty-security.jar:/usr/share/java/jetty/jetty-xml.jar:/usr/share/java/jetty/websocket-servlet.jar:/usr/share/java/jetty/jetty-rewrite.jar:/usr/share/java/jetty/jetty-jmx.jar:/usr/share/java/jetty/jetty-http.jar:/usr/share/java/jetty/jetty-servlet.jar:/usr/share/java/jetty/jetty-server.jar:/usr/shar
 e/java/jetty/jetty-client.jar:/usr/share/java/jetty/jetty-continuation.jar:/usr/share/java/jetty/jetty-jsp.jar:/usr/share/java/jetty/jetty-maven-plugin.jar:/usr/share/java/jetty/jetty-annotations.jar:/usr/share/java/jetty/jetty-util.jar:/usr/share/java/jetty/websocket-client.jar:/usr/share/java/jetty/websocket-common.jar:/usr/share/java/jetty/jetty-proxy.jar:/usr/share/java/jetty/jetty-deploy.jar:/usr/share/java/jetty/websocket-api.jar:/usr/share/java/jetty/jetty-servlets.jar:/usr/share/java/jetty/websocket-server.jar:/usr/share/java/jetty/jetty-plus.jar:/usr/share/java/jetty/jetty-jndi.jar:/usr/share/java/jetty/jetty-util-ajax.jar:/usr/share/java/jetty/jetty-jspc-maven-plugin.jar:/usr/share/java/jetty/jetty-webapp.jar:/usr/share/java/jetty/jetty-jaas.jar:/usr/share/java/jetty/jetty-io.jar:/usr/share/java/jetty/jetty-security.jar:/usr/share/java/jetty/jetty-xml.jar:/usr/share/java/jetty/websocket-servlet.jar:/usr/share/java/jetty/jetty-rewrite.jar:/usr/share/java/jetty/jetty
 -jmx.jar:/usr/share/java/jetty/jetty-http.jar:/usr/share/java/jetty/jetty-servlet.jar:/usr/share/java/jetty/jetty-server.jar:/usr/share/java/jetty/jetty-client.jar:/usr/share/java/jetty/jetty-continuation.jar:/usr/share/java/jetty/jetty-jsp.jar:/usr/share/java/jetty/jetty-maven-plugin.jar:/usr/share/java/jetty/jetty-annotations.jar:/usr/share/java/jetty/jetty-util.jar:/usr/share/java/jetty/websocket-client.jar:/usr/share/java/jetty/websocket-common.jar:/usr/share/java/jetty/jetty-proxy.jar:/usr/share/java/jetty/jetty-deploy.jar:/usr/share/java/jetty/websocket-api.jar:/usr/share/java/jetty/jetty-servlets.jar:/usr/share/java/jetty/websocket-server.jar:/usr/share/java/jetty/jetty-plus.jar:/usr/share/java/jetty/jetty-jndi.jar:/usr/share/java/jetty/jetty-util-ajax.jar:/usr/share/java/jetty/jetty-jspc-maven-plugin.jar:/usr/share/java/jetty/jetty-webapp.jar:/usr/share/java/jetty/jetty-jaas.jar:/usr/share/java/jetty/jetty-io.jar:/usr/share/java/jetty/jetty-security.jar:/usr/share/ja
 va/jetty/jetty-xml.jar:/usr/share/java/jetty/websocket-servlet.jar:/usr/share/java/jetty/jetty-rewrite.jar:/usr/share/java/jetty/jetty-jmx.jar:/usr/share/java/jetty/jetty-http.jar:/usr/share/java/jetty/jetty-servlet.jar:/usr/share/java/jetty/jetty-server.jar:/usr/share/java/jetty/jetty-client.jar:/usr/share/java/jetty/jetty-continuation.jar:/usr/share/java/jetty/jetty-jsp.jar:/usr/share/java/jetty/jetty-maven-plugin.jar:/usr/share/java/jetty/jetty-annotations.jar:/usr/share/java/jetty/jetty-util.jar:/usr/share/java/jetty/websocket-client.jar:/usr/share/java/jetty/websocket-common.jar:/usr/share/java/jetty/jetty-proxy.jar:/usr/share/java/jetty/jetty-deploy.jar:/usr/share/java/jetty/websocket-api.jar:/usr/share/java/jetty/jetty-servlets.jar:/usr/share/java/jetty/websocket-server.jar:/usr/share/java/jetty/jetty-plus.jar:/usr/share/java/jetty/jetty-jndi.jar:/usr/share/java/jetty/jetty-util-ajax.jar:/usr/share/java/jetty/jetty-jspc-maven-plugin.jar:/usr/share/java/jetty/jetty-web
 app.jar:/usr/share/java/jetty/jetty-jaas.jar:/usr/share/java/jetty/jetty-io.jar:/usr/share/java/jetty/jetty-security.jar:/usr/share/java/jetty/jetty-xml.jar:/usr/share/java/jetty/websocket-servlet.jar:/usr/share/java/jetty/jetty-rewrite.jar:/usr/share/java/jetty/jetty-jmx.jar:/usr/share/java/jetty/jetty-http.jar:/usr/share/java/jetty/jetty-servlet.jar:/usr/share/java/jetty/jetty-server.jar:/usr/share/java/jetty/jetty-client.jar:/usr/share/java/jetty/jetty-continuation.jar:/usr/share/java/jetty/jetty-jsp.jar:/usr/share/java/jetty/jetty-maven-plugin.jar:/usr/share/java/jetty/jetty-annotations.jar:/usr/share/java/jetty/jetty-util.jar:/usr/share/java/jetty/websocket-client.jar:/usr/share/java/jetty/websocket-common.jar:/usr/share/java/jetty/jetty-proxy.jar:/usr/share/java/jetty/jetty-deploy.jar:/usr/share/java/jetty/websocket-api.jar:/usr/share/java/jetty/jetty-servlets.jar:/usr/share/java/jetty/websocket-server.jar:/usr/share/java/jetty/jetty-plus.jar:/usr/share/java/jetty/jett
 y-jndi.jar:/usr/share/java/jetty/jetty-util-ajax.jar:/usr/share/java/jetty/jetty-jspc-maven-plugin.jar:/usr/share/java/jetty/jetty-webapp.jar:/usr/share/java/jetty/jetty-jaas.jar:/usr/share/java/jetty/jetty-io.jar:/usr/share/java/jetty/jetty-security.jar:/usr/share/java/jetty/jetty-xml.jar:/usr/share/java/jetty/websocket-servlet.jar:/usr/share/java/jetty/jetty-rewrite.jar:/usr/share/java/jetty/jetty-jmx.jar:/usr/share/java/jetty/jetty-http.jar:/usr/share/java/jetty/jetty-servlet.jar:/usr/share/java/jetty/jetty-server.jar:/usr/share/java/jetty/jetty-client.jar:/usr/share/java/jetty/jetty-continuation.jar:/usr/share/java/jetty/jetty-jsp.jar:/usr/share/java/jetty/jetty-maven-plugin.jar:/usr/share/java/jetty/jetty-annotations.jar:/usr/share/java/jetty/jetty-util.jar:/usr/share/java/jetty/websocket-client.jar:/usr/share/java/jetty/websocket-common.jar:/usr/share/java/jetty/jetty-proxy.jar:/usr/share/java/jetty/jetty-deploy.jar:/usr/share/java/jetty/websocket-api.jar:/usr/share/ja
 va/jetty/jetty-servlets.jar:/usr/share/java/jetty/websocket-server.jar:/usr/share/java/jetty/jetty-plus.jar:/usr/share/java/jetty/jetty-jndi.jar:/usr/share/java/jetty/jetty-util-ajax.jar:/usr/share/java/jetty/jetty-jspc-maven-plugin.jar:/usr/share/java/jetty/jetty-webapp.jar:/usr/share/java/jetty/jetty-jaas.jar:/usr/share/java/jetty/jetty-io.jar:/usr/share/java/jetty/jetty-security.jar:/usr/share/java/jetty/jetty-xml.jar:/usr/share/java/jetty/websocket-servlet.jar:/usr/share/java/jetty/jetty-rewrite.jar:/usr/share/java/jetty/jetty-jmx.jar:/usr/share/java/jetty/jetty-http.jar:/usr/share/java/jetty/jetty-servlet.jar:/usr/share/java/jetty/jetty-server.jar:/usr/share/java/jetty/jetty-client.jar:/usr/share/java/jetty/jetty-continuation.jar:/usr/share/java/jetty/jetty-jsp.jar:/usr/share/java/jetty/jetty-maven-plugin.jar:/usr/share/java/jetty/jetty-annotations.jar:/usr/share/java/jetty/jetty-util.jar:/usr/share/java/jetty/websocket-client.jar:/usr/share/java/jetty/websocket-common.
 jar:/usr/share/java/jetty/jetty-proxy.jar:/usr/share/java/jetty/jetty-deploy.jar:/usr/share/java/jetty/websocket-api.jar:/usr/share/java/jetty/jetty-servlets.jar:/usr/share/java/jetty/websocket-server.jar:/usr/share/java/jetty/jetty-plus.jar:/usr/share/java/jetty/jetty-jndi.jar:/usr/share/java/jetty/jetty-util-ajax.jar:/usr/share/java/jetty/jetty-jspc-maven-plugin.jar:/usr/share/java/jetty/jetty-webapp.jar:/usr/share/java/jetty/jetty-jaas.jar:/usr/share/java/jetty/jetty-io.jar:/usr/share/java/jline.jar:/usr/share/java/jtoaster.jar:/usr/share/java/junit.jar:/usr/share/java/jzlib.jar:/usr/share/java/log4j.jar:/usr/share/java/mockito.jar:/usr/share/java/netty.jar:/usr/share/java/objenesis/objenesis-tck.jar:/usr/share/java/objenesis/objenesis.jar:/usr/share/java/slf4j/log4j12.jar:/usr/share/java/slf4j/api.jar:/usr/share/java/slf4j/slf4j-ext.jar:/usr/share/java/slf4j/slf4j-site.jar:/usr/share/java/slf4j/log4j-over-slf4j.jar:/usr/share/java/slf4j/jcl.jar:/usr/share/java/slf4j/jul-
 to-slf4j.jar:/usr/share/java/slf4j/ext.jar:/usr/share/java/slf4j/slf4j-jdk14.jar:/usr/share/java/slf4j/simple.jar:/usr/share/java/slf4j/nop.jar:/usr/share/java/slf4j/jcl-over-slf4j.jar:/usr/share/java/slf4j/slf4j-migrator.jar:/usr/share/java/slf4j/migrator.jar:/usr/share/java/slf4j/slf4j-simple.jar:/usr/share/java/slf4j/slf4j-log4j12.jar:/usr/share/java/slf4j/slf4j-api.jar:/usr/share/java/slf4j/slf4j-nop.jar:/usr/share/java/slf4j/site.jar:/usr/share/java/slf4j/jdk14.jar:/usr/share/java/slf4j/slf4j-jcl.jar:/usr/share/java/slf4j/log4j12.jar:/usr/share/java/slf4j/api.jar:/usr/share/java/slf4j/slf4j-ext.jar:/usr/share/java/slf4j/slf4j-site.jar:/usr/share/java/slf4j/log4j-over-slf4j.jar:/usr/share/java/slf4j/jcl.jar:/usr/share/java/slf4j/jul-to-slf4j.jar:/usr/share/java/slf4j/ext.jar:/usr/share/java/slf4j/slf4j-jdk14.jar:/usr/share/java/slf4j/simple.jar:/usr/share/java/slf4j/nop.jar:/usr/share/java/slf4j/jcl-over-slf4j.jar:/usr/share/java/slf4j/slf4j-migrator.jar:/usr/share/java/
 slf4j/migrator.jar:/usr/share/java/slf4j/slf4j-simple.jar:/usr/share/java/slf4j/slf4j-log4j12.jar:/usr/share/java/slf4j/slf4j-api.jar:/usr/share/java/slf4j/slf4j-nop.jar:/usr/share/java/slf4j/site.jar:/usr/share/java/slf4j/jdk14.jar:/usr/share/java/slf4j/slf4j-jcl.jar:/usr/share/java/tomcat-servlet-api.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookeeper-tests.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookeeper-tests.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookeeper-tests.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookeeper-tests.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookee
 per-tests.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookeeper-tests.jar:/usr/share/java/zookeeper/zookeeper.jar:/usr/share/java/zookeeper/zookeeper-ZooInspector.jar:/usr/share/java/zookeeper/zookeeper-tests.jar"
diff --git a/zookeeper-3.4.6-server.patch b/zookeeper-3.4.6-server.patch
new file mode 100644
index 0000000..d505ad3
--- /dev/null
+++ b/zookeeper-3.4.6-server.patch
@@ -0,0 +1,20 @@
+diff --git a/bin/zkServer.sh b/bin/zkServer.sh
+index 0490982..b4766e5 100755
+--- a/bin/zkServer.sh
++++ b/bin/zkServer.sh
+@@ -69,14 +69,7 @@ then
+     ZOOCFG="$2"
+ fi
+ 
+-if $cygwin
+-then
+-    ZOOCFG=`cygpath -wp "$ZOOCFG"`
+-    # cygwin has a "kill" in the shell itself, gets confused
+-    KILL=/bin/kill
+-else
+-    KILL=kill
+-fi
++KILL=kill
+ 
+ echo "Using config: $ZOOCFG" >&2
+ 
diff --git a/zookeeper.service b/zookeeper.service
index db4b2c9..817bbc0 100644
--- a/zookeeper.service
+++ b/zookeeper.service
@@ -10,8 +10,15 @@ Type=forking
 User=zookeeper
 SyslogIdentifier=zookeeper
 WorkingDirectory=/var/lib/zookeeper
-ExecStart=/usr/bin/zkServer.sh
-#ExecStop=
+ExecStart=/usr/bin/zkServer.sh start zoo.cfg
+ExecStop=/usr/bin/zkServer.sh stop
+
+User=root
+Group=root
+# TODO: check updated permissions.
+# Group=zookeeper
+Restart=always
+RestartSec=20
 
 [Install]
 WantedBy=multi-user.target
diff --git a/zookeeper.spec b/zookeeper.spec
index 17e49ff..988c9bd 100644
--- a/zookeeper.spec
+++ b/zookeeper.spec
@@ -16,7 +16,10 @@ Source3:       zkEnv.sh
 
 Patch1:        %{name}-3.4.5-zktreeutil-gcc.patch
 Patch2:        %{name}-3.4.6-ivy-build.patch
-#Patch3:        {name}-3.4.5-add-PIE-and-RELRO.patch
+Patch3:        %{name}-3.4.6-server.patch
+
+# The native bits don't compile on ARM
+ExcludeArch:   %{arm}
 
 BuildRequires: autoconf
 BuildRequires: automake
@@ -41,12 +44,16 @@ BuildRequires: checkstyle
 BuildRequires: jline1
 BuildRequires: jtoaster
 BuildRequires: junit
+BuildRequires: jdiff
 %if 0%{?fedora} >= 21
 BuildRequires: mvn(org.slf4j:slf4j-log4j12)
 BuildRequires: javapackages-tools
+Requires:      log4j12
 %else
 BuildRequires: mvn(log4j:log4j)
+Requires:      log4j
 %endif
+
 BuildRequires: json_simple
 
 BuildRequires: mockito
@@ -55,13 +62,16 @@ BuildRequires: slf4j
 BuildRequires: xerces-j2
 BuildRequires: xml-commons-apis
 
+# remove later on.
+BuildRequires: apache-commons-parent
+BuildRequires: jetty-server
+BuildRequires: jetty-servlet
 BuildRequires: systemd
 
 Requires:      checkstyle
 Requires:      jline1
 Requires:      jtoaster
 Requires:      junit
-Requires:      log4j
 Requires:      mockito
 Requires:      netty3
 Requires:      slf4j
@@ -74,20 +84,21 @@ naming, providing distributed synchronization, and providing group services.
 
 %package devel
 Summary:       Development files for the %{name} library
-Requires:      %{name}-lib%{?_isa} = %{version}-%{release}
+Requires:      %{name}%{?_isa} = %{version}-%{release}
 
 %description devel
 Development files for the ZooKeeper C client library.
 
 %package javadoc
 Summary:       Javadoc for %{name}
+BuildArch:     noarch
 
 %description javadoc
 This package contains javadoc for %{name}.
 
 %package -n python-%{name}
 Summary:       Python support for %{name}
-Requires:      %{name}-lib%{?_isa} = %{version}-%{release}
+Requires:      %{name}%{?_isa} = %{version}-%{release}
 Provides:      zkpython%{?_isa} = %{version}-%{release}
 Requires:      python2
 
@@ -99,7 +110,7 @@ The python-%{name} package contains Python bindings for %{name}.
 
 %patch1 -p0
 %patch2 -p1
-#%%patch3 -p1
+%patch3 -p1
 
 iconv -f iso8859-1 -t utf-8 src/c/ChangeLog > src/c/ChangeLog.conv && mv -f src/c/ChangeLog.conv src/c/ChangeLog
 sed -i 's/\r//' src/c/ChangeLog
@@ -133,6 +144,11 @@ popd
 %endif
 
 %install
+
+# the following is used to update zkEnv.sh
+# find . -name "*.jar" -exec basename {} \; |sort|uniq
+# remove items that don't belong and update execute build-classpath
+
 #install the c tools
 pushd src/c
 %make_install
@@ -241,11 +257,11 @@ getent passwd zookeeper >/dev/null || \
 %attr(0644,root,root) %{_sysconfdir}/zookeeper/zoo_sample.cfg
 %attr(0644,root,root) %config(noreplace) %{_sysconfdir}/zookeeper/log4j.properties
 
-%attr(0750,zookeeper,zookeeper) %dir %{_localstatedir}/log/zookeeper
+%attr(0755,zookeeper,zookeeper) %dir %{_localstatedir}/log/zookeeper
 %attr(0755,root,root) %dir %{_sharedstatedir}/zookeeper
 %attr(0750,zookeeper,zookeeper) %dir %{_sharedstatedir}/zookeeper/data
 %attr(0640,zookeeper,zookeeper) %ghost %{_sharedstatedir}/zookeeper/data/myid
-%attr(0750,zookeeper,zookeeper) %dir %{_sharedstatedir}/zookeeper/log
+%attr(0755,zookeeper,zookeeper) %dir %{_sharedstatedir}/zookeeper/log
 %{_unitdir}/zookeeper.service
 %doc CHANGES.txt LICENSE.txt NOTICE.txt README.txt
 
@@ -267,6 +283,7 @@ getent passwd zookeeper >/dev/null || \
 * Wed Oct 8 2014 Timothy St. Clair <tstclair at redhat.com> - 3.4.6-1
 - Update to latest stable series
 - Cleanup and overhaul package
+- Updated system integration
 
 * Mon Aug 18 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 3.4.5-20
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild


More information about the scm-commits mailing list