Skip to content

Commit

Permalink
net-misc/kafka-bin: Improve init script
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.6, Repoman-2.3.3
  • Loading branch information
patricklauer committed Aug 27, 2017
1 parent dab39d9 commit 5936105
Show file tree
Hide file tree
Showing 3 changed files with 146 additions and 0 deletions.
22 changes: 22 additions & 0 deletions net-misc/kafka-bin/files/kafka.init.d.2
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
#!/sbin/openrc-run
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

description="Kafka distributed messaging system"

logfile="/var/log/kafka/kafka.log"

command="/opt/kafka/bin/kafka-server-start.sh"
command_args="/etc/kafka/server.properties"

command_background=yes
pidfile=/run/kafka.pid

start() {
start-stop-daemon --start --background --user kafka --chdir /opt/kafka --stdout $logfile --stderr $logfile \
--env KAFKA_HEAP_OPTS="${KAFKA_HEAP_OPTS}" \
--pidfile $pidfile --exec /opt/kafka/bin/kafka-server-start.sh -- /etc/kafka/server.properties
}
depend() {
after zookeeper kafka-zookeeper
}
62 changes: 62 additions & 0 deletions net-misc/kafka-bin/kafka-bin-0.10.2.1-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=5

inherit eutils user

DESCRIPTION="A high-throughput distributed messaging system"
HOMEPAGE="http://kafka.apache.org/"

# pick recommended scala version
SCALA_VERSION=2.12
MY_PN="kafka"
MY_P="${MY_PN}_${SCALA_VERSION}-${PV}"
SRC_URI="mirror://apache/kafka/${PV}/${MY_P}.tgz"

RESTRICT="mirror"

LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="internal-zookeeper"

RDEPEND="
|| ( virtual/jre:1.8 virtual/jre:1.7 )
"
DEPEND="${RDEPEND}"

S="${WORKDIR}/${MY_P}"
INSTALL_DIR="/opt/${MY_PN}"

pkg_setup() {
enewgroup kafka
enewuser kafka -1 /bin/sh /var/lib/kafka kafka
}

src_prepare() {
sed -i -e 's:/tmp/zookeeper:/var/lib/kafka/zookeeper:' "config/zookeeper.properties" || die
sed -i -e 's:/tmp/kafka-logs:/var/lib/kafka/logs:' "config/server.properties" || die
}

src_install() {
insinto /etc/kafka
doins config/zookeeper.properties config/server.properties
if use "internal-zookeeper"; then
keepdir /var/lib/kafka/zookeeper
newinitd "${FILESDIR}/${MY_PN}-zookeeper.init.d" "${MY_PN}-zookeeper"
fi

keepdir /var/lib/kafka
fowners -R kafka:kafka /var/lib/kafka

keepdir /var/log/kafka
fowners -R kafka:kafka /var/log/kafka

newinitd "${FILESDIR}/${MY_PN}.init.d.2" "${MY_PN}"

dodir "${INSTALL_DIR}"
cp -pRP bin config libs "${ED}/${INSTALL_DIR}" || die
keepdir "${INSTALL_DIR}/logs"
fowners -R kafka:kafka "${INSTALL_DIR}"
}
62 changes: 62 additions & 0 deletions net-misc/kafka-bin/kafka-bin-0.11.0.0-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=5

inherit eutils user

DESCRIPTION="A high-throughput distributed messaging system"
HOMEPAGE="http://kafka.apache.org/"

# pick recommended scala version
SCALA_VERSION=2.12
MY_PN="kafka"
MY_P="${MY_PN}_${SCALA_VERSION}-${PV}"
SRC_URI="mirror://apache/kafka/${PV}/${MY_P}.tgz"

RESTRICT="mirror"

LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="internal-zookeeper"

RDEPEND="
|| ( virtual/jre:1.8 virtual/jre:1.7 )
"
DEPEND="${RDEPEND}"

S="${WORKDIR}/${MY_P}"
INSTALL_DIR="/opt/${MY_PN}"

pkg_setup() {
enewgroup kafka
enewuser kafka -1 /bin/sh /var/lib/kafka kafka
}

src_prepare() {
sed -i -e 's:/tmp/zookeeper:/var/lib/kafka/zookeeper:' "config/zookeeper.properties" || die
sed -i -e 's:/tmp/kafka-logs:/var/lib/kafka/logs:' "config/server.properties" || die
}

src_install() {
insinto /etc/kafka
doins config/zookeeper.properties config/server.properties
if use "internal-zookeeper"; then
keepdir /var/lib/kafka/zookeeper
newinitd "${FILESDIR}/${MY_PN}-zookeeper.init.d" "${MY_PN}-zookeeper"
fi

keepdir /var/lib/kafka
fowners -R kafka:kafka /var/lib/kafka

keepdir /var/log/kafka
fowners -R kafka:kafka /var/log/kafka

newinitd "${FILESDIR}/${MY_PN}.init.d.2" "${MY_PN}"

dodir "${INSTALL_DIR}"
cp -pRP bin config libs "${ED}/${INSTALL_DIR}" || die
keepdir "${INSTALL_DIR}/logs"
fowners -R kafka:kafka "${INSTALL_DIR}"
}

0 comments on commit 5936105

Please sign in to comment.