commit:     adcc810ebc83e3dbd6ef27017bbab15e01f19d09
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu May  4 22:40:59 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu May  4 22:42:18 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=adcc810e

dev-db/cockroach: new package

This is a scalable open source database. For more information see the home page 
below.

http://www.cockroachlabs.com

Package-Manager: Portage-2.3.5, Repoman-2.3.1

 dev-db/cockroach/Manifest                    |  1 +
 dev-db/cockroach/cockroach-1.0_rc1.ebuild    | 59 ++++++++++++++++++++++++++++
 dev-db/cockroach/files/cockroach-limits.conf |  4 ++
 dev-db/cockroach/files/cockroach.confd       | 14 +++++++
 dev-db/cockroach/files/cockroach.initd       | 23 +++++++++++
 dev-db/cockroach/metadata.xml                | 12 ++++++
 6 files changed, 113 insertions(+)

diff --git a/dev-db/cockroach/Manifest b/dev-db/cockroach/Manifest
new file mode 100644
index 00000000000..4a1e42d6a29
--- /dev/null
+++ b/dev-db/cockroach/Manifest
@@ -0,0 +1 @@
+DIST cockroach-v1.0-rc.1.src.tgz 68784067 SHA256 
162e3954ff41515bf2ab2017ab38f9cdf76775d7d67fdeead343234d470dca6c SHA512 
c68fc712068cbfce167d98008cdcb46270a8fa772624281da23a70d0492c7990c9ce8513334fedc31d7dde5176087fa6211a4e90d77741ed0079f9568c71e0ff
 WHIRLPOOL 
510dbefb6348f9707e1e3fcd94d873911350b8d2d767c093df3bfff514e7f72ca1ff1e16d0539c48f80dd53a725d8ab4f3fe901862ee88a4e5e1e9999034eeaf

diff --git a/dev-db/cockroach/cockroach-1.0_rc1.ebuild 
b/dev-db/cockroach/cockroach-1.0_rc1.ebuild
new file mode 100644
index 00000000000..18467a3c8a6
--- /dev/null
+++ b/dev-db/cockroach/cockroach-1.0_rc1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+MY_PV=v1.0-rc.1
+CHECKREQS_MEMORY="2G"
+
+inherit check-reqs toolchain-funcs user
+
+DESCRIPTION="open source database for building cloud services"
+HOMEPAGE="https://www.cockroachlabs.com";
+SRC_URI="https://binaries.cockroachdb.com/cockroach-${MY_PV}.src.tgz";
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE=""
+
+DEPEND=">=dev-lang/go-1.8.1"
+
+S="${WORKDIR}/cockroach-${MY_PV}"
+
+pkg_pretend() {
+       check-reqs_pkg_pretend
+       if [[ $(gcc-major-version) -lt 6 ]]; then
+               eerror "Cockroach cannot be built with this version of gcc."
+               eerror "You need at least gcc-6.0"
+               die "Your C compiler is too old for this package."
+       fi
+}
+
+pkg_setup() {
+       check-reqs_pkg_setup
+       enewgroup cockroach
+       enewuser cockroach -1 /bin/sh /var/lib/cockroach cockroach
+}
+
+src_compile() {
+       emake GOPATH="${S}" build || die
+}
+
+src_install() {
+       emake GOPATH="${S}" install || die
+dobin bin/*
+insinto /etc/security/limits.d
+newins "${FILESDIR}"/cockroach-limits.conf cockroach.conf
+newinitd "${FILESDIR}"/cockroach.initd cockroach
+dodir /var/log/cockroach
+fowners cockroach:cockroach /var/log/cockroach
+if [[ -z ${REPLACING_VERSIONS} ]]; then
+               ewarn "The default setup is for the first node of an insecure"
+               ewarn "cluster that only listens on localhost."
+               ewarn "Please read the cockroach manual at the following url"
+               ewarn "and configure /etc/conf.d/cockroach correctly if you"
+               ewarn "plan to use it in production."
+               elog
+               elog "http://cockroachlabs.com/docs";
+       fi
+}

diff --git a/dev-db/cockroach/files/cockroach-limits.conf 
b/dev-db/cockroach/files/cockroach-limits.conf
new file mode 100644
index 00000000000..2014a5d508c
--- /dev/null
+++ b/dev-db/cockroach/files/cockroach-limits.conf
@@ -0,0 +1,4 @@
+# This is needed because cockroach can open a high number of file
+# descriptors
+cockroach soft nofile 35000
+cockroach hard nofile 35000

diff --git a/dev-db/cockroach/files/cockroach.confd 
b/dev-db/cockroach/files/cockroach.confd
new file mode 100644
index 00000000000..fb9b740aa70
--- /dev/null
+++ b/dev-db/cockroach/files/cockroach.confd
@@ -0,0 +1,14 @@
+# The default setup is for the first node of an insecure cluster that only
+# listens on localhost.
+# Please read the cockroach manual at the following url and configure
+# the start_args and stop_args correctly if you plan to use cockroach in
+# production.
+#
+# http://cockroachlabs.com/do# cs
+#
+# arguments to use when starting the database
+start_args="--http-host=localhost --host=localhost --insecure
+--store=/var/lib/cockroach/data"
+#
+# arguments to use when stopping the database
+stop_args="--host localhost --insecure"

diff --git a/dev-db/cockroach/files/cockroach.initd 
b/dev-db/cockroach/files/cockroach.initd
new file mode 100644
index 00000000000..3629cb6605f
--- /dev/null
+++ b/dev-db/cockroach/files/cockroach.initd
@@ -0,0 +1,23 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/bin/cockroach"
+pidfile=/run/cockroach/cockroach.pid
+command_args="start --background --log-dir=/var/log/cockroach
+       --pid-file=\"${pidfile}\" ${start_args}"
+start_stop_daemon_args="--quiet --user cockroach"
+
+depend() {
+       use net
+}
+
+start_pre() {
+       checkpath -d -m 0755 -o cockroach:cockroach $(dirname ${pidfile})
+}
+
+stop() {
+ebegin "bringing down ${RC_SVCNAME}"
+"${command}" quit ${stop_args}
+eend $?
+}

diff --git a/dev-db/cockroach/metadata.xml b/dev-db/cockroach/metadata.xml
new file mode 100644
index 00000000000..b02140041af
--- /dev/null
+++ b/dev-db/cockroach/metadata.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
+<pkgmetadata>
+       <maintainer type="person">
+               <email>[email protected]</email>
+               <name>William Hubbs</name>
+       </maintainer>
+       <longdescription lang="en">
+               CockroachDB is an open source database for building global, 
scalable
+               cloud services that survive disasters.
+       </longdescription>
+</pkgmetadata>

Reply via email to