aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKonstantin Boudnik <cos@apache.org>2014-01-23 00:09:57 -0800
committerKonstantin Boudnik <cos@apache.org>2014-01-31 15:15:45 -0800
commit553a6ca128dbb62862a0d456f765250dac7b8371 (patch)
tree39fd8cfb67ee7ea1671f972ff29e0280dd8c72ea
parent525da0a32dffa226296e59a32bd42bcb1c44214b (diff)
BIGTOP-1097. introduce bigtop-groovy package
-rw-r--r--bigtop-packages/src/common/bigtop-groovy/do-component-build19
-rwxr-xr-xbigtop-packages/src/common/bigtop-groovy/install_groovy.sh108
-rw-r--r--bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.install4
-rw-r--r--bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.postinst36
-rwxr-xr-xbigtop-packages/src/deb/bigtop-groovy/changelog1
-rwxr-xr-xbigtop-packages/src/deb/bigtop-groovy/compat1
-rwxr-xr-xbigtop-packages/src/deb/bigtop-groovy/control27
-rwxr-xr-xbigtop-packages/src/deb/bigtop-groovy/copyright15
-rwxr-xr-xbigtop-packages/src/deb/bigtop-groovy/rules39
-rw-r--r--bigtop-packages/src/deb/bigtop-groovy/source/format1
-rw-r--r--bigtop-packages/src/rpm/bigtop-groovy/SPECS/.gitignore0
-rw-r--r--bigtop-packages/src/rpm/bigtop-groovy/SPECS/bigtop-groovy.spec60
-rw-r--r--bigtop-tests/test-artifacts/package/src/main/resources/package_data.xml12
-rw-r--r--bigtop.mk13
14 files changed, 336 insertions, 0 deletions
diff --git a/bigtop-packages/src/common/bigtop-groovy/do-component-build b/bigtop-packages/src/common/bigtop-groovy/do-component-build
new file mode 100644
index 00000000..def87915
--- /dev/null
+++ b/bigtop-packages/src/common/bigtop-groovy/do-component-build
@@ -0,0 +1,19 @@
+#!/bin/bash
+# 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.
+
+set -ex
+
+. `dirname ${0}`/bigtop.bom
diff --git a/bigtop-packages/src/common/bigtop-groovy/install_groovy.sh b/bigtop-packages/src/common/bigtop-groovy/install_groovy.sh
new file mode 100755
index 00000000..c5a819a1
--- /dev/null
+++ b/bigtop-packages/src/common/bigtop-groovy/install_groovy.sh
@@ -0,0 +1,108 @@
+#!/bin/bash -x
+# 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.
+
+set -ex
+
+usage() {
+ echo "
+usage: $0 <options>
+ Required not-so-options:
+ --build-dir=DIR path to hive/build/dist
+ --prefix=PREFIX path to install into
+ "
+ exit 1
+}
+
+OPTS=$(getopt \
+ -n $0 \
+ -o '' \
+ -l 'prefix:' \
+ -l 'version:' \
+ -l 'build-dir:' \
+ -l 'lib-dir:' \
+ -l 'bin-dir:' \
+ -l 'conf-dir:' \
+ -- "$@")
+
+if [ $? != 0 ] ; then
+ usage
+fi
+
+eval set -- "$OPTS"
+while true ; do
+ case "$1" in
+ --prefix)
+ PREFIX=$2 ; shift 2
+ ;;
+ --version)
+ VERSION=$2 ; shift 2
+ ;;
+ --build-dir)
+ BUILD_DIR=$2 ; shift 2
+ ;;
+ --bin-dir)
+ BIN_DIR=$2 ; shift 2
+ ;;
+ --lib-dir)
+ LIB_DIR=$2 ; shift 2
+ ;;
+ --conf-dir)
+ CONF_DIR=$2 ; shift 2
+ ;;
+ --doc-dir)
+ DOC_DIR=$2 ; shift 2
+ ;;
+ --)
+ shift ; break
+ ;;
+ *)
+ echo "Unknown option: $1"
+ usage
+ exit 1
+ ;;
+ esac
+done
+
+for var in PREFIX BUILD_DIR; do
+ if [ -z "$(eval "echo \$$var")" ]; then
+ echo Missing param: $var
+ usage
+ fi
+done
+
+. `dirname ${0}`/bigtop.bom
+
+BIN_DIR=${BIN_DIR:-/usr/lib/bigtop-groovy/bin}
+CONF_DIR=${CONF_DIR:-/usr/lib/bigtop-groovy/conf}
+LIB_DIR=${LIB_DIR:-/usr/lib/bigtop-groovy/lib}
+echo ${BIGTOP_GROOVY_BASE_VERSION}
+
+#bin
+install -d -m 0755 ${PREFIX}/${BIN_DIR}
+cp ${BUILD_DIR}/bin/startGroovy ${PREFIX}/${BIN_DIR}
+cp ${BUILD_DIR}/bin/groovy ${PREFIX}/${BIN_DIR}
+
+# lib
+install -d -m 0755 ${PREFIX}/${LIB_DIR}
+cp ${BUILD_DIR}/lib/groovy-${BIGTOP_GROOVY_VERSION}.jar ${PREFIX}/${LIB_DIR}
+cp ${BUILD_DIR}/embeddable/groovy-all-${BIGTOP_GROOVY_VERSION}.jar ${PREFIX}/${LIB_DIR}
+cp ${BUILD_DIR}/lib/commons-cli-1.2.jar ${PREFIX}/${LIB_DIR}
+cp ${BUILD_DIR}/lib/asm*.jar ${PREFIX}/${LIB_DIR}
+cp ${BUILD_DIR}/lib/antlr*.jar ${PREFIX}/${LIB_DIR}
+
+#conf
+install -d -m 0755 ${PREFIX}/${CONF_DIR}
+cp ${BUILD_DIR}/conf/groovy-starter.conf ${PREFIX}/${CONF_DIR}
diff --git a/bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.install b/bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.install
new file mode 100644
index 00000000..625ae2ef
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.install
@@ -0,0 +1,4 @@
+/usr/lib/bigtop-groovy
+/usr/lib/bigtop-groovy/bin
+/usr/lib/bigtop-groovy/conf
+/usr/lib/bigtop-groovy/lib \ No newline at end of file
diff --git a/bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.postinst b/bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.postinst
new file mode 100644
index 00000000..29db417a
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/bigtop-groovy.postinst
@@ -0,0 +1,36 @@
+#!/bin/bash
+#
+# 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.
+
+# postinst script for bigtop-groovy
+
+set -e
+
+case "$1" in
+ configure)
+ chmod 0755 /usr/lib/bigtop-groovy/bin/*
+ ;;
+
+ abort-upgrade|abort-remove|abort-deconfigure)
+ ;;
+
+ *)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+#DEBHELPER#
diff --git a/bigtop-packages/src/deb/bigtop-groovy/changelog b/bigtop-packages/src/deb/bigtop-groovy/changelog
new file mode 100755
index 00000000..547ed021
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/changelog
@@ -0,0 +1 @@
+--- This is auto-generated
diff --git a/bigtop-packages/src/deb/bigtop-groovy/compat b/bigtop-packages/src/deb/bigtop-groovy/compat
new file mode 100755
index 00000000..7f8f011e
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/compat
@@ -0,0 +1 @@
+7
diff --git a/bigtop-packages/src/deb/bigtop-groovy/control b/bigtop-packages/src/deb/bigtop-groovy/control
new file mode 100755
index 00000000..fe8469cf
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/control
@@ -0,0 +1,27 @@
+# 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.
+Source: bigtop-groovy
+Section: misc
+Priority: extra
+Maintainer: Bigtop <dev@bigtop.apache.org>
+Build-Depends: debhelper (>= 7.0.50~)
+Standards-Version: 3.8.0
+Homepage: http://groovy.codehaus.org/
+
+Package: bigtop-groovy
+Architecture: any
+Depends: bigtop-utils (>= 0.7)
+Description: Groovy provides a JVM based runtime environment
+ for function programming and scripting.Application to launch java daemon
diff --git a/bigtop-packages/src/deb/bigtop-groovy/copyright b/bigtop-packages/src/deb/bigtop-groovy/copyright
new file mode 100755
index 00000000..35ed5ff1
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/copyright
@@ -0,0 +1,15 @@
+Format: http://dep.debian.net/deps/dep5
+Source: http://commons.apache.org/daemon/
+Upstream-Name: Apache Commons Daemon
+
+Files: *
+Copyright: 2008-2012, The Apache Software Foundation
+License: Apache-2.0
+
+Files debian/*
+Copyright: 2012, The Apache Software Foundation
+License: Apache-2.0
+
+License: Apache-2.0
+ On Debian systems, the complete text of the Apache 2.0 license
+ can be found in "/usr/share/common-licenses/Apache-2.0".
diff --git a/bigtop-packages/src/deb/bigtop-groovy/rules b/bigtop-packages/src/deb/bigtop-groovy/rules
new file mode 100755
index 00000000..f4cd744b
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/rules
@@ -0,0 +1,39 @@
+#!/usr/bin/make -f
+#
+# 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.
+#
+# -*- makefile -*-
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+# This has to be exported to make some magic below work.
+export DH_OPTIONS=-s
+
+%:
+ dh $@
+
+override_dh_auto_build:
+ bash debian/do-component-build
+
+override_dh_auto_install:
+ sh -x debian/install_groovy.sh \
+ --build-dir=. \
+ --prefix=debian/tmp \
+ --bin-dir=usr/lib/bigtop-groovy/bin \
+ --version=%{bigtop_groovy_version} \
+ --lib-dir=usr/lib/bigtop-groovy/lib \
+ --conf-dir=usr/lib/bigtop-groovy/conf
diff --git a/bigtop-packages/src/deb/bigtop-groovy/source/format b/bigtop-packages/src/deb/bigtop-groovy/source/format
new file mode 100644
index 00000000..163aaf8d
--- /dev/null
+++ b/bigtop-packages/src/deb/bigtop-groovy/source/format
@@ -0,0 +1 @@
+3.0 (quilt)
diff --git a/bigtop-packages/src/rpm/bigtop-groovy/SPECS/.gitignore b/bigtop-packages/src/rpm/bigtop-groovy/SPECS/.gitignore
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/bigtop-packages/src/rpm/bigtop-groovy/SPECS/.gitignore
diff --git a/bigtop-packages/src/rpm/bigtop-groovy/SPECS/bigtop-groovy.spec b/bigtop-packages/src/rpm/bigtop-groovy/SPECS/bigtop-groovy.spec
new file mode 100644
index 00000000..b686adba
--- /dev/null
+++ b/bigtop-packages/src/rpm/bigtop-groovy/SPECS/bigtop-groovy.spec
@@ -0,0 +1,60 @@
+# 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.
+
+%define bin_groovy /usr/lib/bigtop-groovy
+
+Name: bigtop-groovy
+Version: %{bigtop_groovy_version}
+Release: %{bigtop_groovy_release}
+Summary: An agile and dynamic language for the Java Virtual Machine
+URL: http://groovy.codehaus.org/
+Group: Development/Libraries
+Buildroot: %{_topdir}/INSTALL/%{name}-%{version}
+BuildArch: noarch
+License: ASL 2.0
+Source0: groovy-binary-%{bigtop_groovy_base_version}.zip
+Source1: do-component-build
+Source2: install_groovy.sh
+Requires: bigtop-utils >= 0.7
+
+%description
+Groovy provides a JVM based runtime environment for function programming and scripting.
+
+%prep
+%setup -n groovy-%{bigtop_groovy_base_version}
+
+%clean
+rm -rf $RPM_BUILD_ROOT
+
+%build
+bash %{SOURCE1}
+
+%install
+%__rm -rf $RPM_BUILD_ROOT
+sh %{SOURCE2} \
+ --build-dir=. \
+ --bin-dir=%{bin_groovy}/bin \
+ --version=%{bigtop_groovy_version} \
+ --lib-dir=%{bin_groovy}/lib \
+ --conf-dir=%{bin_groovy}/conf \
+ --prefix=$RPM_BUILD_ROOT
+
+%files
+%defattr(-,root,root)
+%{bin_groovy}
+%attr(0775,root,root) %{bin_groovy}/bin/*
+
+%changelog
+
diff --git a/bigtop-tests/test-artifacts/package/src/main/resources/package_data.xml b/bigtop-tests/test-artifacts/package/src/main/resources/package_data.xml
index 3eb24f7c..9cbbbfee 100644
--- a/bigtop-tests/test-artifacts/package/src/main/resources/package_data.xml
+++ b/bigtop-tests/test-artifacts/package/src/main/resources/package_data.xml
@@ -30,6 +30,18 @@
<url>http://commons.apache.org/daemon/</url>
</metadata>
</bigtop-jsvc>
+
+ <bigtop-jsvc>
+ <metadata>
+ <summary>An agile and dynamic language for the Java Virtual Machine</summary>
+ <description>Groovy provides a JVM based runtime environment for function programming and scripting.</description>
+ <url>http://groovy.codehaus.org/</url>
+ </metadata>
+ <deps>
+ <bigtop-utils/>
+ </deps>
+ </bigtop-jsvc>
+
<bigtop-tomcat>
<metadata>
<summary>Apache Tomcat</summary>
diff --git a/bigtop.mk b/bigtop.mk
index 36bd4153..5644a75f 100644
--- a/bigtop.mk
+++ b/bigtop.mk
@@ -249,6 +249,19 @@ PHOENIX_SITE=https://github.com/forcedotcom/phoenix/archive
PHOENIX_ARCHIVE=$(PHOENIX_SITE)
$(eval $(call PACKAGE,phoenix,PHOENIX))
+# Groovy
+BIGTOP_GROOVY_NAME=bigtop-groovy
+BIGTOP_GROOVY_RELNOTES_NAME=Grovvy: a dynamic language for the Java platform
+BIGTOP_GROOVY_PKG_NAME=bigtop-groovy
+BIGTOP_GROOVY_BASE_VERSION=2.2.1
+BIGTOP_GROOVY_PKG_VERSION=2.2.1
+BIGTOP_GROOVY_RELEASE_VERSION=1
+BIGTOP_GROOVY_TARBALL_DST=groovy-binary-$(BIGTOP_GROOVY_BASE_VERSION).zip
+BIGTOP_GROOVY_TARBALL_SRC=$(BIGTOP_GROOVY_TARBALL_DST)
+BIGTOP_GROOVY_SITE=http://dist.groovy.codehaus.org/distributions/
+BIGTOP_GROOVY_ARCHIVE=$(BIGTOP_GROOVY_SITE)
+$(eval $(call PACKAGE,bigtop-groovy,BIGTOP_GROOVY))
+
# Bigtop-utils
BIGTOP_UTILS_NAME=bigtop-utils
BIGTOP_UTILS__RELNOTES_NAME=Bigtop-utils