svn commit: r390632 - in head: . databases databases/influxdb databases/influxdb/files

Steve Wills swills at FreeBSD.org
Fri Jun 26 12:51:11 UTC 2015


Author: swills
Date: Fri Jun 26 12:51:07 2015
New Revision: 390632
URL: https://svnweb.freebsd.org/changeset/ports/390632

Log:
  databases/influxdb: create port
  
  An open-source, distributed, time series database with no external dependencies.
  
  WWW: http://influxdb.com
  
  PR:		198073
  Submitted by:	Stefan Lambrev <cheffo at freebsd-bg.org>

Added:
  head/databases/influxdb/
  head/databases/influxdb/Makefile   (contents, props changed)
  head/databases/influxdb/distinfo   (contents, props changed)
  head/databases/influxdb/files/
  head/databases/influxdb/files/influxd.in   (contents, props changed)
  head/databases/influxdb/files/patch-cluster_client__pool.go   (contents, props changed)
  head/databases/influxdb/files/patch-cluster_shard__writer.go   (contents, props changed)
  head/databases/influxdb/pkg-descr   (contents, props changed)
  head/databases/influxdb/pkg-plist   (contents, props changed)
Modified:
  head/GIDs
  head/UIDs
  head/databases/Makefile

Modified: head/GIDs
==============================================================================
--- head/GIDs	Fri Jun 26 12:48:37 2015	(r390631)
+++ head/GIDs	Fri Jun 26 12:51:07 2015	(r390632)
@@ -234,6 +234,7 @@ dahdi:*:843:asterisk
 subsonic:*:844:
 fossy:*:901:www
 scanlogd:*:902:
+influxd:*:907:
 riemann:*:908:
 proxy65:*:909:
 bacula:*:910:

Modified: head/UIDs
==============================================================================
--- head/UIDs	Fri Jun 26 12:48:37 2015	(r390631)
+++ head/UIDs	Fri Jun 26 12:51:07 2015	(r390632)
@@ -239,6 +239,7 @@ munin:*:842:842::0:0:Munin:/var/munin:/u
 subsonic:*:844:844::0:0:Subsonic standalone-server:/nonexistent:/usr/sbin/nologin
 fossy:*:901:901::0:0:FOSSology user:/usr/local/share/fossology:/usr/local/bin/bash
 scanlogd:*:902:902::0:0:scanlogd user:/nonexistent:/usr/sbin/nologin
+influxd:*:907:907::0:0:InfluxDB Daemon:/var/empty:/usr/sbin/nologin
 riemann:*:908:908::0:0:Riemann User:/var/empty:/usr/sbin/nologin
 proxy65:*:909:909::0:0:Proxy65 Daemon:/nonexistent:/usr/sbin/nologin
 bacula:*:910:910::0:0:Bacula Daemon:/var/db/bacula:/usr/sbin/nologin

Modified: head/databases/Makefile
==============================================================================
--- head/databases/Makefile	Fri Jun 26 12:48:37 2015	(r390631)
+++ head/databases/Makefile	Fri Jun 26 12:51:07 2015	(r390632)
@@ -99,6 +99,7 @@
     SUBDIR += hs-persistent-sqlite
     SUBDIR += hs-persistent-template
     SUBDIR += hsqldb
+    SUBDIR += influxdb
     SUBDIR += innotop
     SUBDIR += ip4r
     SUBDIR += ipa_sdb

Added: head/databases/influxdb/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/Makefile	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,131 @@
+# $FreeBSD$
+
+PORTNAME=	influxdb
+PORTVERSION=	0.9.0
+DISTVERSIONPREFIX=	v
+CATEGORIES=	databases net-mgmt
+
+MAINTAINER=	cheffo at freebsd-bg.org
+COMMENT=	Open-source distributed time series database
+
+LICENSE=	MIT
+
+BUILD_DEPENDS=	go>=1.4.0:${PORTSDIR}/lang/go
+
+ONLY_FOR_ARCHS=	i386 amd64
+
+USE_RC_SUBR=	influxd
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	influxdb:DEFAULT \
+		alecthomas:log4go \
+		armon:go_metrics \
+		BurntSushi:toml \
+		bmizerany:pat \
+		boltdb:bolt \
+		cheffo:crypto,go_uuid \
+		fatih:pool \
+		gogo:gogo_protobuf \
+		golang:golang_protobuf \
+		hashicorp:raft,raft_boltdb,go_msgpack \
+		kimor79:gollectd \
+		peterh:liner \
+		rakyll:statik
+GH_PROJECT=	bolt:bolt crypto:crypto go-metrics:go_metrics \
+		go-msgpack:go_msgpack gollectd:gollectd liner:liner \
+		log4go:log4go pat:pat pool:pool protobuf:gogo_protobuf \
+		protobuf:golang_protobuf raft-boltdb:raft_boltdb raft:raft \
+		statik:statik toml:toml go-uuid:go_uuid
+GH_TAGNAME=	04a3e85:bolt 056c9bc:toml 1351f93:crypto 1bb0d1c:liner \
+		1bcc57d:log4go 274df12:statik 58bbd41:gogo_protobuf \
+		61d0dee:gollectd aece6fb:golang_protobuf b2d95e5:go_metrics \
+		b8a3500:pat cba550e:pool d1e82c1:raft_boltdb ed3ca8a:go_uuid \
+		f0f02dd:raft fa3f638:go_msgpack
+
+SUB_FILES=	influxd
+SUB_LIST+=	INFLUXD_USER=${INFLUXD_USER} \
+		INFLUXD_GROUP=${INFLUXD_GROUP} \
+		INFLUXD_DBDIR=${INFLUXD_DBDIR} \
+		INFLUXD_PIDDIR=${INFLUXD_PIDDIR} \
+		INFLUXD_LOGDIR=${INFLUXD_LOGDIR}
+
+PLIST_SUB=	INFLUXD_USER=${INFLUXD_USER} \
+		INFLUXD_GROUP=${INFLUXD_GROUP} \
+		INFLUXD_DBDIR=${INFLUXD_DBDIR} \
+		INFLUXD_PIDDIR=${INFLUXD_PIDDIR} \
+		INFLUXD_LOGDIR=${INFLUXD_LOGDIR}
+
+INFLUXD_USER?=	influxd
+INFLUXD_GROUP?=	influxd
+
+INFLUXD_DBDIR=	/var/db/${PORTNAME}/
+INFLUXD_LOGDIR=	/var/log/${PORTNAME}/
+INFLUXD_PIDDIR=	/var/run/${PORTNAME}/
+
+USERS=		${INFLUXD_USER}
+GROUPS=		${INFLUXD_GROUP}
+
+STRIP=		# stripping can break go binaries
+
+post-patch:
+	@${MKDIR} ${WRKSRC}/src/code.google.com/p
+	@${MKDIR} ${WRKSRC}/src/github.com/BurntSushi
+	@${MKDIR} ${WRKSRC}/src/github.com/armon
+	@${MKDIR} ${WRKSRC}/src/github.com/bmizerany
+	@${MKDIR} ${WRKSRC}/src/github.com/boltdb
+	@${MKDIR} ${WRKSRC}/src/github.com/fatih
+	@${MKDIR} ${WRKSRC}/src/github.com/gogo
+	@${MKDIR} ${WRKSRC}/src/github.com/golang
+	@${MKDIR} ${WRKSRC}/src/github.com/hashicorp
+	@${MKDIR} ${WRKSRC}/src/github.com/influxdb
+	@${MKDIR} ${WRKSRC}/src/github.com/kimor79
+	@${MKDIR} ${WRKSRC}/src/github.com/peterh
+	@${MKDIR} ${WRKSRC}/src/github.com/rakyll
+	@${MKDIR} ${WRKSRC}/src/golang.org/x
+	@${MKDIR} ${WRKSRC}/src/github.com/${GH_ACCOUNT}/${PORTNAME}
+.for src in CHANGELOG.md CONTRIBUTING.md LICENSE QUERIES.md README.md \
+	balancer.go balancer_test.go circle-test.sh circle.yml client \
+	cluster cmd continuous_queries.md diagnostics.go errors.go etc \
+	influxql meta package.sh scripts services shared snapshot statik \
+	stats.go stats_test.go tcp tests toml tsdb uuid
+	@${MV} ${WRKSRC}/${src} \
+		${WRKSRC}/src/github.com/${GH_ACCOUNT}/${PORTNAME}
+.endfor
+	@${MV} ${WRKSRC_bolt} ${WRKSRC}/src/github.com/boltdb/bolt
+	@${MV} ${WRKSRC_crypto} ${WRKSRC}/src/golang.org/x/crypto
+	@${MV} ${WRKSRC_go_metrics} ${WRKSRC}/src/github.com/armon/go-metrics
+	@${MV} ${WRKSRC_go_msgpack} ${WRKSRC}/src/github.com/hashicorp/go-msgpack
+	@${MV} ${WRKSRC_go_uuid} ${WRKSRC}/src/code.google.com/p/go-uuid
+	@${MV} ${WRKSRC_gogo_protobuf} ${WRKSRC}/src/github.com/gogo/protobuf
+	@${MV} ${WRKSRC_golang_protobuf} ${WRKSRC}/src/github.com/golang/protobuf
+	@${MV} ${WRKSRC_gollectd} ${WRKSRC}/src/github.com/kimor79/gollectd
+	@${MV} ${WRKSRC_liner} ${WRKSRC}/src/github.com/peterh/liner
+	@${MV} ${WRKSRC_log4go} ${WRKSRC}/src/code.google.com/p/log4go
+	@${MV} ${WRKSRC_pat} ${WRKSRC}/src/github.com/bmizerany/pat
+	@${MV} ${WRKSRC_pool} ${WRKSRC}/src/github.com/fatih/pool
+	@${MV} ${WRKSRC_raft_boltdb} ${WRKSRC}/src/github.com/hashicorp/raft-boltdb
+	@${MV} ${WRKSRC_raft} ${WRKSRC}/src/github.com/hashicorp/raft
+	@${MV} ${WRKSRC_statik} ${WRKSRC}/src/github.com/rakyll/statik
+	@${MV} ${WRKSRC_toml} ${WRKSRC}/src/github.com/BurntSushi/toml
+
+do-build:
+		@cd ${WRKSRC}/src/github.com/influxdb/ &&  ${SETENV} GOPATH=${WRKSRC} go install ./...
+
+do-install:
+		${MKDIR} ${STAGEDIR}${INFLUXD_DBDIR} \
+		${STAGEDIR}${INFLUXD_PIDDIR} \
+		${STAGEDIR}${INFLUXD_LOGDIR}
+
+post-install:
+		${INSTALL_PROGRAM} ${WRKSRC}/bin/influxd ${STAGEDIR}${PREFIX}/bin/influxd
+		${INSTALL_PROGRAM} ${WRKSRC}/bin/influx ${STAGEDIR}${PREFIX}/bin/influx
+		@${SED} -i .bak -e \
+			"s|/tmp/influxdb/development|/var/db/influxdb|g" \
+			${WRKSRC}/src/github.com/${GH_ACCOUNT}/${GH_PROJECT}/etc/config.sample.toml
+		${INSTALL_DATA} \
+			${WRKSRC}/src/github.com/${GH_ACCOUNT}/${GH_PROJECT}/etc/config.sample.toml  \
+			${STAGEDIR}${PREFIX}/etc/influxd.conf.sample
+		@${MKDIR} ${STAGEDIR}/var/db/influxdb
+		@${MKDIR} ${STAGEDIR}/var/log/influxdb
+
+.include <bsd.port.mk>

Added: head/databases/influxdb/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/distinfo	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,34 @@
+SHA256 (influxdb-influxdb-v0.9.0_GH0.tar.gz) = c7cc869754d7bfb9374b0a16a9b91073d9588adedbd7bfda1d5709e22d3a3d75
+SIZE (influxdb-influxdb-v0.9.0_GH0.tar.gz) = 2554827
+SHA256 (alecthomas-log4go-1bcc57d_GH0.tar.gz) = f15f25fb0d4d88ce9817f1a04c32c5ca7cf35358615b61601ef47be388733604
+SIZE (alecthomas-log4go-1bcc57d_GH0.tar.gz) = 16190
+SHA256 (armon-go-metrics-b2d95e5_GH0.tar.gz) = a3c2f9b16157249cf248c5a21fc9ade43c35c451005ed9dcc2d4b52b0f2f9680
+SIZE (armon-go-metrics-b2d95e5_GH0.tar.gz) = 11360
+SHA256 (BurntSushi-toml-056c9bc_GH0.tar.gz) = 73125940543e2922a77bee42f068f35383b5e260e5fbab867efcb7a59a05671a
+SIZE (BurntSushi-toml-056c9bc_GH0.tar.gz) = 37104
+SHA256 (bmizerany-pat-b8a3500_GH0.tar.gz) = 6468a8b27db2bed1edf6eb845da6f7466221c7b0b41112d77710e4ac76926a2f
+SIZE (bmizerany-pat-b8a3500_GH0.tar.gz) = 5205
+SHA256 (boltdb-bolt-04a3e85_GH0.tar.gz) = 63ea778d7f9f82e94610ed0a96cd4135993704440d6e3e9b09cdfb5c96c8d54e
+SIZE (boltdb-bolt-04a3e85_GH0.tar.gz) = 72745
+SHA256 (cheffo-crypto-1351f93_GH0.tar.gz) = 29ddf6009158914fb35f9d8e27c48164428dedac6a1314215e1717ae913d96f0
+SIZE (cheffo-crypto-1351f93_GH0.tar.gz) = 860364
+SHA256 (cheffo-go-uuid-ed3ca8a_GH0.tar.gz) = 3ad72804ee9b735add1039ec8cffd445fefd66852a3b7c0b82baf428696ca921
+SIZE (cheffo-go-uuid-ed3ca8a_GH0.tar.gz) = 41022
+SHA256 (fatih-pool-cba550e_GH0.tar.gz) = fdcbcf67872333b16b74647bc4c8aa8100de81f58f0ea99ff83a519bf142e4cb
+SIZE (fatih-pool-cba550e_GH0.tar.gz) = 4854
+SHA256 (gogo-protobuf-58bbd41_GH0.tar.gz) = 1d50a318b50a5f07e8111972081bef9d9dd2a7b9e3915fc88b10291620981498
+SIZE (gogo-protobuf-58bbd41_GH0.tar.gz) = 1147405
+SHA256 (golang-protobuf-aece6fb_GH0.tar.gz) = 3f4db232b0548a3b527f087539c9de28068c2f5603f66b1ff16b84ed222884b0
+SIZE (golang-protobuf-aece6fb_GH0.tar.gz) = 142325
+SHA256 (hashicorp-raft-f0f02dd_GH0.tar.gz) = 93fa0a92f3ef54a133c71d1b5f0288e12f3d933a392693c6d947c8f55637ee73
+SIZE (hashicorp-raft-f0f02dd_GH0.tar.gz) = 57418
+SHA256 (hashicorp-raft-boltdb-d1e82c1_GH0.tar.gz) = 68bb2996a4ec490c099612efcc255ad721014aaf42afbf9f0b21fcf8361162d9
+SIZE (hashicorp-raft-boltdb-d1e82c1_GH0.tar.gz) = 8879
+SHA256 (hashicorp-go-msgpack-fa3f638_GH0.tar.gz) = 6353c623d5d58c7ca03e2bdac63f9da7da8848fb1f5f7f239b33e3ce6fe6c6bd
+SIZE (hashicorp-go-msgpack-fa3f638_GH0.tar.gz) = 49496
+SHA256 (kimor79-gollectd-61d0dee_GH0.tar.gz) = 217d827fb26d1cf7b1fa3bae7fa51fc5b25ff2141151ffa7d328d015cd4fb498
+SIZE (kimor79-gollectd-61d0dee_GH0.tar.gz) = 9508
+SHA256 (peterh-liner-1bb0d1c_GH0.tar.gz) = 0ed1d975b6af46820eb55826527a9ab0263376da5a20e94b21695e21267f6f2e
+SIZE (peterh-liner-1bb0d1c_GH0.tar.gz) = 16925
+SHA256 (rakyll-statik-274df12_GH0.tar.gz) = 47cb3d4bc95171baeac813c0373cdfc232c4339fb09f251a76df247615216d49
+SIZE (rakyll-statik-274df12_GH0.tar.gz) = 77898

Added: head/databases/influxdb/files/influxd.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/files/influxd.in	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,47 @@
+#!/bin/sh
+# $FreeBSD$
+
+# PROVIDE: influxd
+# REQUIRE: DAEMON NETWORKING
+# BEFORE: LOGIN
+# KEYWORD: shutdown
+
+# Add the following lines to /etc/rc.conf to enable influxdb:
+# influxd_enable="YES"
+#
+# influxd_enable (bool):	Set to YES to enable influxd
+#				Default: NO
+# influxd_conf (str):		influxd configuration file
+#				Default: ${PREFIX}/etc/influxd.conf
+# influxd_user (str):		influxd daemon user
+#				Default: influxd
+# influxd_group (str):		influxd daemon group
+#				Default: influxd
+# influxd_flags (str):		Extra flags passed to influxd
+
+. /etc/rc.subr
+
+name="influxd"
+rcvar=influxd_enable
+
+: ${influxd_enable:="NO"}
+: ${influxd_user:="%%INFLUXD_USER%%"}
+: ${influxd_group:="%%INFLUXD_GROUP%%"}
+: ${influxd_flags:=""}
+: ${influxd_conf:="%%PREFIX%%/etc/${name}.conf"}
+: ${influxd_options:="${influxdb_flags} -config=${influxd_conf}"}
+
+# daemon
+influxd_pidfile="%%INFLUXD_PIDDIR%%${name}.pid"
+procname="%%PREFIX%%/bin/${name}"
+command=/usr/sbin/daemon
+command_args=" -f -c -p ${influxd_pidfile} ${procname} ${influxd_options}"
+start_precmd="influxd_precmd"
+
+influxd_precmd()
+{
+    install -o ${influxd_user} /dev/null ${influxd_pidfile}
+}
+
+load_rc_config $name
+run_rc_command "$1"

Added: head/databases/influxdb/files/patch-cluster_client__pool.go
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/files/patch-cluster_client__pool.go	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,11 @@
+--- cluster/client_pool.go.orig	2015-06-23 14:38:16 UTC
++++ cluster/client_pool.go
+@@ -4,7 +4,7 @@ import (
+ 	"net"
+ 	"sync"
+ 
+-	"gopkg.in/fatih/pool.v2"
++	"github.com/fatih/pool"
+ )
+ 
+ type clientPool struct {

Added: head/databases/influxdb/files/patch-cluster_shard__writer.go
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/files/patch-cluster_shard__writer.go	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,11 @@
+--- cluster/shard_writer.go.orig	2015-06-23 14:38:36 UTC
++++ cluster/shard_writer.go
+@@ -7,7 +7,7 @@ import (
+ 
+ 	"github.com/influxdb/influxdb/meta"
+ 	"github.com/influxdb/influxdb/tsdb"
+-	"gopkg.in/fatih/pool.v2"
++	"github.com/fatih/pool"
+ )
+ 
+ const (

Added: head/databases/influxdb/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/pkg-descr	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,13 @@
+An open-source, distributed, time series database with no external dependencies.
+InfluxDB is the new home for all of your metrics, events, and analytics.
+
+InfluxDB is a time series, metrics, and analytics database. It'written in Go and
+has no external dependencies. That means once you install it there's nothing
+else to manage (like Redis, ZooKeeper, HBase, or whatever).
+
+InfluxDB is targeted at use cases for DevOps, metrics, sensor data, and
+real-time analytics. It arose from our need for a database like this on more
+than a few previous products we' built. You can read more about our jurney from 
+SaaS application to open source time series database.
+
+WWW: http://influxdb.com

Added: head/databases/influxdb/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/influxdb/pkg-plist	Fri Jun 26 12:51:07 2015	(r390632)
@@ -0,0 +1,6 @@
+bin/influx
+bin/influxd
+ at dir(%%INFLUXD_USER%%,%%INFLUXD_GROUP%%,0750) %%INFLUXD_DBDIR%%
+ at dir(%%INFLUXD_USER%%,%%INFLUXD_GROUP%%,0750) %%INFLUXD_LOGDIR%%
+ at dir(%%INFLUXD_USER%%,%%INFLUXD_GROUP%%,0750) %%INFLUXD_PIDDIR%%
+ at sample etc/%%INFLUXD_USER%%.conf.sample


More information about the svn-ports-all mailing list