aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRomain Tartière <romain@FreeBSD.org>2023-04-28 21:02:35 +0000
committerRomain Tartière <romain@FreeBSD.org>2023-04-29 01:36:13 +0000
commite500139794ef0e5d4c888457877799b23bf65104 (patch)
treee1065bdfe1baf01c9110087931ac4e7059b02a59
parente9c5ed32578f79b7324aab9ba9fe5d2b76a089a2 (diff)
databases/puppetdb8: New port
The PuppetDB storeconfigs backend
-rw-r--r--databases/Makefile2
-rw-r--r--databases/puppetdb-terminus6/Makefile2
-rw-r--r--databases/puppetdb-terminus7/Makefile2
-rw-r--r--databases/puppetdb-terminus8/Makefile26
-rw-r--r--databases/puppetdb-terminus8/distinfo3
-rw-r--r--databases/puppetdb-terminus8/files/patch-Makefile59
-rw-r--r--databases/puppetdb-terminus8/pkg-descr1
-rw-r--r--databases/puppetdb-terminus8/pkg-plist17
-rw-r--r--databases/puppetdb8/Makefile51
-rw-r--r--databases/puppetdb8/distinfo3
-rw-r--r--databases/puppetdb8/files/patch-Makefile39
-rw-r--r--databases/puppetdb8/files/patch-ext_bin_puppetdb15
-rw-r--r--databases/puppetdb8/files/patch-ext_cli_ssl-setup11
-rw-r--r--databases/puppetdb8/files/patch-ext_config_conf.d_config.ini15
-rw-r--r--databases/puppetdb8/files/patch-ext_config_conf.d_jetty.ini8
-rw-r--r--databases/puppetdb8/files/patch-ext_config_logback.xml29
-rw-r--r--databases/puppetdb8/files/patch-ext_config_request-logging.xml14
-rw-r--r--databases/puppetdb8/files/pkg-message.in12
-rw-r--r--databases/puppetdb8/files/puppetdb.in89
-rw-r--r--databases/puppetdb8/pkg-descr1
-rw-r--r--databases/puppetdb8/pkg-plist23
21 files changed, 420 insertions, 2 deletions
diff --git a/databases/Makefile b/databases/Makefile
index 5b1c367d83e3..869d48af8a8f 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -717,8 +717,10 @@
SUBDIR += pspg
SUBDIR += puppetdb-terminus6
SUBDIR += puppetdb-terminus7
+ SUBDIR += puppetdb-terminus8
SUBDIR += puppetdb6
SUBDIR += puppetdb7
+ SUBDIR += puppetdb8
SUBDIR += puredb
SUBDIR += pxlib
SUBDIR += pxtools
diff --git a/databases/puppetdb-terminus6/Makefile b/databases/puppetdb-terminus6/Makefile
index bc15f09678b9..52a7230395fc 100644
--- a/databases/puppetdb-terminus6/Makefile
+++ b/databases/puppetdb-terminus6/Makefile
@@ -16,7 +16,7 @@ EXPIRATION_DATE=2023-06-01
BUILD_DEPENDS= puppet6>=0:sysutils/puppet6
-CONFLICTS_INSTALL= puppetdb-terminus5 puppetdb-terminus7
+CONFLICTS_INSTALL= puppetdb-terminus[0-9]
NO_BUILD= yes
USES= gmake ruby
diff --git a/databases/puppetdb-terminus7/Makefile b/databases/puppetdb-terminus7/Makefile
index 59bf8c70aade..439050b62a38 100644
--- a/databases/puppetdb-terminus7/Makefile
+++ b/databases/puppetdb-terminus7/Makefile
@@ -13,7 +13,7 @@ LICENSE= APACHE20
BUILD_DEPENDS= puppet7>=0:sysutils/puppet7
-CONFLICTS_INSTALL= puppetdb-terminus5 puppetdb-terminus6
+CONFLICTS_INSTALL= puppetdb-terminus[0-9]
NO_BUILD= yes
USES= gmake ruby
diff --git a/databases/puppetdb-terminus8/Makefile b/databases/puppetdb-terminus8/Makefile
new file mode 100644
index 000000000000..e7d78f248c9d
--- /dev/null
+++ b/databases/puppetdb-terminus8/Makefile
@@ -0,0 +1,26 @@
+PORTNAME= puppetdb-terminus
+PORTVERSION= 8.0.0
+CATEGORIES= databases ruby
+MASTER_SITES= https://downloads.puppetlabs.com/puppetdb/
+PKGNAMESUFFIX= 8
+DISTNAME= puppetdb-${PORTVERSION}
+
+MAINTAINER= puppet@FreeBSD.org
+COMMENT= PuppetDB storeconfigs backend terminus module
+WWW= https://docs.puppetlabs.com/puppetdb/latest/
+
+LICENSE= APACHE20
+
+BUILD_DEPENDS= puppet7>=0:sysutils/puppet7
+
+CONFLICTS_INSTALL= puppetdb-terminus[0-9]
+NO_BUILD= yes
+USES= gmake ruby
+
+post-patch:
+ @${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|" ${WRKSRC}/Makefile
+
+do-install:
+ @cd ${WRKSRC} && ${SETENV} DESTDIR=${STAGEDIR} ${GMAKE} install-puppetdb-termini
+
+.include <bsd.port.mk>
diff --git a/databases/puppetdb-terminus8/distinfo b/databases/puppetdb-terminus8/distinfo
new file mode 100644
index 000000000000..b883a3ef5bc7
--- /dev/null
+++ b/databases/puppetdb-terminus8/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1682476160
+SHA256 (puppetdb-8.0.0.tar.gz) = 7c3cf4e45951134f326cf2bb636496dfb45e205d3cc839fd20e173a4dd7095ae
+SIZE (puppetdb-8.0.0.tar.gz) = 50152833
diff --git a/databases/puppetdb-terminus8/files/patch-Makefile b/databases/puppetdb-terminus8/files/patch-Makefile
new file mode 100644
index 000000000000..5417b760be4f
--- /dev/null
+++ b/databases/puppetdb-terminus8/files/patch-Makefile
@@ -0,0 +1,59 @@
+--- Makefile.orig 2023-04-04 16:01:28 UTC
++++ Makefile
+@@ -1,7 +1,7 @@
+ prefix = /usr/local
+ datadir = $(prefix)/share
+ confdir = /etc
+-rubylibdir = $(shell ruby -rrbconfig -e "puts RbConfig::CONFIG['sitelibdir']")
++rubylibdir = $(shell %%PREFIX%%/bin/ruby -rrbconfig -e "puts RbConfig::CONFIG['sitelibdir']")
+ rundir = /var/run
+ bindir = /usr/bin
+
+@@ -36,22 +36,31 @@ install-puppetdb:
+
+
+ install-puppetdb-termini:
+- install -Dm 0644 puppet/functions/puppetdb_query.rb "$(DESTDIR)$(rubylibdir)/puppet/functions/puppetdb_query.rb"
+- install -Dm 0644 puppet/face/node/status.rb "$(DESTDIR)$(rubylibdir)/puppet/face/node/status.rb"
+- install -Dm 0644 puppet/face/node/deactivate.rb "$(DESTDIR)$(rubylibdir)/puppet/face/node/deactivate.rb"
+- install -Dm 0644 puppet/indirector/catalog/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/catalog/puppetdb.rb"
+- install -Dm 0644 puppet/indirector/resource/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/resource/puppetdb.rb"
+- install -Dm 0644 puppet/indirector/facts/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/facts/puppetdb.rb"
+- install -Dm 0644 puppet/indirector/facts/puppetdb_apply.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/facts/puppetdb_apply.rb"
+- install -Dm 0644 puppet/indirector/node/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/node/puppetdb.rb"
+- install -Dm 0644 puppet/util/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb.rb"
+- install -Dm 0644 puppet/util/puppetdb/command.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/command.rb"
+- install -Dm 0644 puppet/util/puppetdb/atom.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/atom.rb"
+- install -Dm 0644 puppet/util/puppetdb/command_names.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/command_names.rb"
+- install -Dm 0644 puppet/util/puppetdb/config.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/config.rb"
+- install -Dm 0644 puppet/util/puppetdb/char_encoding.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/char_encoding.rb"
+- install -Dm 0644 puppet/util/puppetdb/http.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/http.rb"
+- install -Dm 0644 puppet/reports/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/reports/puppetdb.rb"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/face/node"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/functions"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/indirector/catalog"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/indirector/facts"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/indirector/node"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/indirector/resource"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/reports"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/util"
++ install -d -m 755 "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb"
++ install -m 0644 puppet/functions/puppetdb_query.rb "$(DESTDIR)$(rubylibdir)/puppet/functions/puppetdb_query.rb"
++ install -m 0644 puppet/face/node/status.rb "$(DESTDIR)$(rubylibdir)/puppet/face/node/status.rb"
++ install -m 0644 puppet/face/node/deactivate.rb "$(DESTDIR)$(rubylibdir)/puppet/face/node/deactivate.rb"
++ install -m 0644 puppet/indirector/catalog/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/catalog/puppetdb.rb"
++ install -m 0644 puppet/indirector/resource/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/resource/puppetdb.rb"
++ install -m 0644 puppet/indirector/facts/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/facts/puppetdb.rb"
++ install -m 0644 puppet/indirector/facts/puppetdb_apply.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/facts/puppetdb_apply.rb"
++ install -m 0644 puppet/indirector/node/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/indirector/node/puppetdb.rb"
++ install -m 0644 puppet/util/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb.rb"
++ install -m 0644 puppet/util/puppetdb/command.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/command.rb"
++ install -m 0644 puppet/util/puppetdb/atom.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/atom.rb"
++ install -m 0644 puppet/util/puppetdb/command_names.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/command_names.rb"
++ install -m 0644 puppet/util/puppetdb/config.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/config.rb"
++ install -m 0644 puppet/util/puppetdb/char_encoding.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/char_encoding.rb"
++ install -m 0644 puppet/util/puppetdb/http.rb "$(DESTDIR)$(rubylibdir)/puppet/util/puppetdb/http.rb"
++ install -m 0644 puppet/reports/puppetdb.rb "$(DESTDIR)$(rubylibdir)/puppet/reports/puppetdb.rb"
+
+ install-rpm-sysv-init: install-rpm-preinst
+ install -d -m 0755 "$(DESTDIR)$(initdir)"
diff --git a/databases/puppetdb-terminus8/pkg-descr b/databases/puppetdb-terminus8/pkg-descr
new file mode 100644
index 000000000000..4d64063e8c6e
--- /dev/null
+++ b/databases/puppetdb-terminus8/pkg-descr
@@ -0,0 +1 @@
+The PuppetDB storeconfigs backend terminus module.
diff --git a/databases/puppetdb-terminus8/pkg-plist b/databases/puppetdb-terminus8/pkg-plist
new file mode 100644
index 000000000000..a12b86eb6a1a
--- /dev/null
+++ b/databases/puppetdb-terminus8/pkg-plist
@@ -0,0 +1,17 @@
+%%RUBY_SITELIBDIR%%/puppet/face/node/deactivate.rb
+%%RUBY_SITELIBDIR%%/puppet/face/node/status.rb
+%%RUBY_SITELIBDIR%%/puppet/functions/puppetdb_query.rb
+%%RUBY_SITELIBDIR%%/puppet/indirector/catalog/puppetdb.rb
+%%RUBY_SITELIBDIR%%/puppet/indirector/facts/puppetdb.rb
+%%RUBY_SITELIBDIR%%/puppet/indirector/facts/puppetdb_apply.rb
+%%RUBY_SITELIBDIR%%/puppet/indirector/node/puppetdb.rb
+%%RUBY_SITELIBDIR%%/puppet/indirector/resource/puppetdb.rb
+%%RUBY_SITELIBDIR%%/puppet/reports/puppetdb.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb/atom.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb/char_encoding.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb/command.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb/command_names.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb/config.rb
+%%RUBY_SITELIBDIR%%/puppet/util/puppetdb/http.rb
+
diff --git a/databases/puppetdb8/Makefile b/databases/puppetdb8/Makefile
new file mode 100644
index 000000000000..95d78c6ac72d
--- /dev/null
+++ b/databases/puppetdb8/Makefile
@@ -0,0 +1,51 @@
+PORTNAME= puppetdb
+PORTVERSION= 8.0.0
+CATEGORIES= databases java
+MASTER_SITES= https://downloads.puppetlabs.com/puppetdb/
+PKGNAMESUFFIX= 8
+
+MAINTAINER= puppet@FreeBSD.org
+COMMENT= PuppetDB storeconfigs backend
+WWW= https://docs.puppetlabs.com/puppetdb/latest/
+
+LICENSE= APACHE20
+
+RUN_DEPENDS= bash:shells/bash
+
+USE_RC_SUBR= puppetdb
+
+CONFLICTS_INSTALL= puppetdb[0-9] # etc/puppetdb/bootstrap.cfg.sample
+USES= cpe shebangfix
+CPE_VENDOR= puppet
+SHEBANG_FILES= ext/bin/puppetdb \
+ ext/cli/anonymize \
+ ext/cli/config-migration \
+ ext/cli/foreground \
+ ext/cli/ssl-setup \
+ ext/cli/start \
+ ext/cli/stop \
+ ext/cli/reload \
+ ext/cli/upgrade \
+ ext/ezbake-functions.sh
+USE_JAVA= yes
+JAVA_VERSION= 11+
+NO_ARCH= yes
+NO_BUILD= yes
+
+USERS= puppetdb
+GROUPS= puppetdb
+
+SUB_LIST= JAVA_HOME=${JAVA_HOME}
+SUB_FILES= pkg-message
+
+post-patch:
+.for file in Makefile ext/bin/puppetdb ext/cli/ssl-setup \
+ ext/config/conf.d/jetty.ini ext/config/conf.d/config.ini
+ @${REINPLACE_CMD} -e "s|%%PREFIX%%|${PREFIX}|" ${WRKSRC}/${file}
+.endfor
+ @${REINPLACE_CMD} -e "s|%%DATADIR%%|${DATADIR}|" ${WRKSRC}/ext/bin/puppetdb
+
+do-install:
+ @cd ${WRKSRC} && ${SETENV} DESTDIR=${STAGEDIR} make install-puppetdb
+
+.include <bsd.port.mk>
diff --git a/databases/puppetdb8/distinfo b/databases/puppetdb8/distinfo
new file mode 100644
index 000000000000..0d087536cef4
--- /dev/null
+++ b/databases/puppetdb8/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1682476153
+SHA256 (puppetdb-8.0.0.tar.gz) = 7c3cf4e45951134f326cf2bb636496dfb45e205d3cc839fd20e173a4dd7095ae
+SIZE (puppetdb-8.0.0.tar.gz) = 50152833
diff --git a/databases/puppetdb8/files/patch-Makefile b/databases/puppetdb8/files/patch-Makefile
new file mode 100644
index 000000000000..f91d176cfc78
--- /dev/null
+++ b/databases/puppetdb8/files/patch-Makefile
@@ -0,0 +1,39 @@
+--- Makefile.orig 2023-04-04 16:01:28 UTC
++++ Makefile
+@@ -1,24 +1,24 @@
+-prefix = /usr/local
++prefix = %%PREFIX%%
+ datadir = $(prefix)/share
+-confdir = /etc
++confdir = %%PREFIX%%/etc
+ rubylibdir = $(shell ruby -rrbconfig -e "puts RbConfig::CONFIG['sitelibdir']")
+ rundir = /var/run
+-bindir = /usr/bin
++bindir = %%PREFIX%%/bin
+
+ install-puppetdb:
+ install -d -m 0755 "$(DESTDIR)$(datadir)/puppetdb"
+ install -m 0644 puppetdb.jar "$(DESTDIR)$(datadir)/puppetdb"
+ install -m 0774 ext/ezbake-functions.sh "$(DESTDIR)$(datadir)/puppetdb"
+ install -m 0644 ext/ezbake.manifest "$(DESTDIR)$(datadir)/puppetdb"
+- install -d -m 0755 "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/conf.d"
+- install -m 0644 ext/config/conf.d/database.ini "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/conf.d/database.ini"
+- install -m 0644 ext/config/conf.d/auth.conf "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/conf.d/auth.conf"
+- install -m 0644 ext/config/conf.d/config.ini "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/conf.d/config.ini"
+- install -m 0644 ext/config/conf.d/repl.ini "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/conf.d/repl.ini"
+- install -m 0644 ext/config/conf.d/jetty.ini "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/conf.d/jetty.ini"
+- install -m 0644 ext/config/bootstrap.cfg "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/bootstrap.cfg"
+- install -m 0644 ext/config/logback.xml "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/logback.xml"
+- install -m 0644 ext/config/request-logging.xml "$(DESTDIR)$(confdir)/puppetlabs/puppetdb/request-logging.xml"
++ install -d -m 0755 "$(DESTDIR)$(confdir)/puppetdb/conf.d"
++ install -m 0644 ext/config/conf.d/database.ini "$(DESTDIR)$(confdir)/puppetdb/conf.d/database.ini.sample"
++ install -m 0644 ext/config/conf.d/auth.conf "$(DESTDIR)$(confdir)/puppetdb/conf.d/auth.conf.sample"
++ install -m 0644 ext/config/conf.d/config.ini "$(DESTDIR)$(confdir)/puppetdb/conf.d/config.ini.sample"
++ install -m 0644 ext/config/conf.d/repl.ini "$(DESTDIR)$(confdir)/puppetdb/conf.d/repl.ini.sample"
++ install -m 0644 ext/config/conf.d/jetty.ini "$(DESTDIR)$(confdir)/puppetdb/conf.d/jetty.ini.sample"
++ install -m 0644 ext/config/bootstrap.cfg "$(DESTDIR)$(confdir)/puppetdb/bootstrap.cfg.sample"
++ install -m 0644 ext/config/logback.xml "$(DESTDIR)$(confdir)/puppetdb/logback.xml.sample"
++ install -m 0644 ext/config/request-logging.xml "$(DESTDIR)$(confdir)/puppetdb/request-logging.xml.sample"
+ install -d -m 0755 "$(DESTDIR)$(datadir)/puppetdb/cli"
+ install -d -m 0755 "$(DESTDIR)$(datadir)/puppetdb/cli/apps"
+ install -d -m 0755 "$(DESTDIR)$(bindir)"
diff --git a/databases/puppetdb8/files/patch-ext_bin_puppetdb b/databases/puppetdb8/files/patch-ext_bin_puppetdb
new file mode 100644
index 000000000000..0a139b110d2e
--- /dev/null
+++ b/databases/puppetdb8/files/patch-ext_bin_puppetdb
@@ -0,0 +1,15 @@
+--- ext/bin/puppetdb.orig 2016-03-17 04:17:10 UTC
++++ ext/bin/puppetdb
+@@ -5,6 +5,12 @@ if [ -r "/etc/default/puppetdb" ] ; then
+ . /etc/default/puppetdb
+ elif [ -r "/etc/sysconfig/puppetdb" ] ; then
+ . /etc/sysconfig/puppetdb
++elif [ `uname` == "FreeBSD" ] ; then
++ CONFIG="%%PREFIX%%/etc/puppetdb/conf.d"
++ INSTALL_DIR="%%DATADIR%%"
++ JAVA_BIN="%%PREFIX%%/bin/java"
++ JAVA_ARGS="-Xmx192m"
++ USER="puppet"
+ elif [ `uname` == "OpenBSD" ] ; then
+ JAVA_BIN=$(javaPathHelper -c puppetdb)
+ JAVA_ARGS="-Xmx192m"
diff --git a/databases/puppetdb8/files/patch-ext_cli_ssl-setup b/databases/puppetdb8/files/patch-ext_cli_ssl-setup
new file mode 100644
index 000000000000..ab86d849142d
--- /dev/null
+++ b/databases/puppetdb8/files/patch-ext_cli_ssl-setup
@@ -0,0 +1,11 @@
+--- ext/cli/ssl-setup.orig 2016-03-17 04:17:10 UTC
++++ ext/cli/ssl-setup
+@@ -230,7 +230,7 @@ else
+ user=puppetdb
+ group=puppetdb
+
+- puppetdb_confdir="/etc/puppetlabs/puppetdb"
++ puppetdb_confdir="%%PREFIX%%/etc/puppetdb"
+ fi
+
+ set -e
diff --git a/databases/puppetdb8/files/patch-ext_config_conf.d_config.ini b/databases/puppetdb8/files/patch-ext_config_conf.d_config.ini
new file mode 100644
index 000000000000..390068840508
--- /dev/null
+++ b/databases/puppetdb8/files/patch-ext_config_conf.d_config.ini
@@ -0,0 +1,15 @@
+--- ext/config/conf.d/config.ini.orig 2016-03-17 04:17:06 UTC
++++ ext/config/conf.d/config.ini
+@@ -3,10 +3,10 @@
+
+ [global]
+ # Store mq/db data in a custom directory
+-vardir = /opt/puppetlabs/server/data/puppetdb
++vardir = /var/db/puppetdb
+
+ # Use an external logback config file
+-logging-config = /etc/puppetlabs/puppetdb/logback.xml
++logging-config = %%PREFIX%%/etc/puppetdb/logback.xml
+
+ [command-processing]
+ # How many command-processing threads to use, defaults to (CPUs / 2)
diff --git a/databases/puppetdb8/files/patch-ext_config_conf.d_jetty.ini b/databases/puppetdb8/files/patch-ext_config_conf.d_jetty.ini
new file mode 100644
index 000000000000..42d5665a0f64
--- /dev/null
+++ b/databases/puppetdb8/files/patch-ext_config_conf.d_jetty.ini
@@ -0,0 +1,8 @@
+--- ext/config/conf.d/jetty.ini.orig 2016-03-17 04:17:06 UTC
++++ ext/config/conf.d/jetty.ini
+@@ -30,4 +30,4 @@ port = 8080
+
+ # Access logging configuration path. To turn off access logging
+ # comment out the line with `access-log-config=...`
+-access-log-config = /etc/puppetlabs/puppetdb/request-logging.xml
++access-log-config = %%PREFIX%%/etc/puppetdb/request-logging.xml
diff --git a/databases/puppetdb8/files/patch-ext_config_logback.xml b/databases/puppetdb8/files/patch-ext_config_logback.xml
new file mode 100644
index 000000000000..08cb543440aa
--- /dev/null
+++ b/databases/puppetdb8/files/patch-ext_config_logback.xml
@@ -0,0 +1,29 @@
+--- ext/config/logback.xml.orig 2017-04-24 12:27:57.366296793 -0700
++++ ext/config/logback.xml 2017-04-24 12:28:48.723259627 -0700
+@@ -6,10 +6,10 @@
+ </appender>
+
+ <appender name="F1" class="ch.qos.logback.core.rolling.RollingFileAppender">
+- <file>/var/log/puppetlabs/puppetdb/puppetdb.log</file>
++ <file>/var/log/puppetdb/puppetdb.log</file>
+ <append>true</append>
+ <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+- <fileNamePattern>/var/log/puppetlabs/puppetdb/puppetdb-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
++ <fileNamePattern>/var/log/puppetdb/puppetdb-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
+ <!-- each file should be at most 200MB, keep 90 days worth of history, but at most 1GB total-->
+ <maxFileSize>200MB</maxFileSize>
+ <maxHistory>90</maxHistory>
+@@ -31,11 +31,11 @@
+ level="info"/>
+
+ <appender name="STATUS" class="ch.qos.logback.core.rolling.RollingFileAppender">
+- <file>/var/log/puppetlabs/puppetdb/puppetdb-status.log</file>
++ <file>/var/log/puppetdb/puppetdb-status.log</file>
+ <append>true</append>
+ <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+ <!-- rollover daily -->
+- <fileNamePattern>/var/log/puppetlabs/puppetdb/puppetdb-status-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
++ <fileNamePattern>/var/log/puppetdb/puppetdb-status-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
+ <!-- each file should be at most 200MB, keep 90 days worth of history, but at most 1GB total-->
+ <maxFileSize>200MB</maxFileSize>
+ <maxHistory>90</maxHistory>
diff --git a/databases/puppetdb8/files/patch-ext_config_request-logging.xml b/databases/puppetdb8/files/patch-ext_config_request-logging.xml
new file mode 100644
index 000000000000..51b90d0e844e
--- /dev/null
+++ b/databases/puppetdb8/files/patch-ext_config_request-logging.xml
@@ -0,0 +1,14 @@
+--- ext/config/request-logging.xml.orig 2017-04-24 12:32:16.604464262 -0700
++++ ext/config/request-logging.xml 2017-04-24 12:32:46.404637027 -0700
+@@ -1,9 +1,9 @@
+ <configuration debug="false">
+ <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+- <file>/var/log/puppetlabs/puppetdb/puppetdb-access.log</file>
++ <file>/var/log/puppetdb/puppetdb-access.log</file>
+ <append>true</append>
+ <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+- <fileNamePattern>/var/log/puppetlabs/puppetdb/puppetdb-access-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
++ <fileNamePattern>/var/log/puppetdb/puppetdb-access-%d{yyyy-MM-dd}.%i.log.gz</fileNamePattern>
+ <!-- each file should be at most 200MB, keep 90 days worth of history, but at most 1GB total-->
+ <maxFileSize>200MB</maxFileSize>
+ <maxHistory>90</maxHistory>
diff --git a/databases/puppetdb8/files/pkg-message.in b/databases/puppetdb8/files/pkg-message.in
new file mode 100644
index 000000000000..fba773047854
--- /dev/null
+++ b/databases/puppetdb8/files/pkg-message.in
@@ -0,0 +1,12 @@
+[
+{ type: install
+ message: <<EOM
+If this is a new installation, please run the follow to setup your SSL/puppetdb
+server:
+
+%%PREFIX%%/bin/puppetdb ssl-setup
+
+Please also remember to add puppetdb_enable="YES" into your rc.conf.
+EOM
+}
+]
diff --git a/databases/puppetdb8/files/puppetdb.in b/databases/puppetdb8/files/puppetdb.in
new file mode 100644
index 000000000000..4e2f85a2d366
--- /dev/null
+++ b/databases/puppetdb8/files/puppetdb.in
@@ -0,0 +1,89 @@
+#!/bin/sh
+
+# PROVIDE: puppetdb
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+#
+# Configuration settings for puppetdb in /etc/rc.conf:
+#
+# puppetdb_enable (bool):
+# Set to "NO" by default.
+# Set it to "YES" to enable puppetdb
+#
+# puppetdb_args (str):
+# Extra arguments passed to start command
+#
+# puppetdb_java_home (str):
+# Set to "%%JAVA_HOME%%" by default.
+# Set the Java virtual machine to run puppetdb
+#
+# puppetdb_java_opts (str):
+# Set to "" by default.
+# Java VM args to use.
+#
+# puppetdb_user (str):
+# Set to "puppetdb" by default.
+# User to run puppetdb as.
+#
+# puppetdb_group (str):
+# Set to "puppetdb" by default.
+# Group for data file ownership.
+#
+# puppetdb_log_file (str):
+# Set to "/var/log/puppetdb/puppetdb.log" by default.
+# Log file location.
+#
+
+. /etc/rc.subr
+
+name="puppetdb"
+rcvar=puppetdb_enable
+
+load_rc_config "${name}"
+
+: ${puppetdb_enable="NO"}
+: ${puppetdb_args="services -c %%PREFIX%%/etc/puppetdb/conf.d"}
+: ${puppetdb_java_home="%%JAVA_HOME%%"}
+: ${puppetdb_user="puppetdb"}
+: ${puppetdb_group="puppetdb"}
+: ${puppetdb_log_file="/var/log/puppetdb/puppetdb.log"}
+
+pidfile="/var/run/puppetdb/puppetdb.pid"
+command="/usr/sbin/daemon"
+java_cmd="${puppetdb_java_home}/bin/java"
+procname="${java_cmd}"
+command_args="-p ${pidfile} ${java_cmd} ${puppetdb_java_opts} -Djava.security.egd=/dev/urandom -cp %%DATADIR%%/puppetdb.jar clojure.main -m puppetlabs.puppetdb.core ${puppetdb_args} > ${puppetdb_log_file} 2>&1"
+
+
+required_files="${java_cmd}"
+
+start_precmd="puppetdb_prestart"
+
+puppetdb_prestart() {
+ if [ ! -d "/var/log/puppetdb" ]; then
+ install -d -o "${puppetdb_user}" -g "${puppetdb_group}" -m 750 "/var/log/puppetdb"
+ fi
+ if [ ! -f "${puppetdb_log_file}" ]; then
+ touch "${puppetdb_log_file}"
+ chown "${puppetdb_user}:${puppetdb_group}" "${puppetdb_log_file}"
+ chmod 640 "${puppetdb_log_file}"
+ fi
+ if [ ! -d "/var/run/puppetdb" ]; then
+ install -d -o "${puppetdb_user}" -g "${puppetdb_group}" -m 750 "/var/run/puppetdb"
+ fi
+
+ chown -R "root:${puppetdb_group}" "%%PREFIX%%/etc/puppetdb/conf.d"
+ chmod 0750 "%%PREFIX%%/etc/puppetdb/conf.d"
+
+ chown "root:${puppetdb_group}" "%%PREFIX%%/etc/puppetdb/logback.xml"
+ chmod 0640 "%%PREFIX%%/etc/puppetdb/logback.xml"
+
+ if [ ! -d "/var/db/puppetdb" ]; then
+ install -d -o "${puppetdb_user}" -g "${puppetdb_group}" -m 750 "/var/db/puppetdb"
+ fi
+ chown -R "${puppetdb_user}:${puppetdb_group}" "/var/db/puppetdb"
+ chmod 0750 "/var/db/puppetdb"
+}
+
+run_rc_command "$1"
diff --git a/databases/puppetdb8/pkg-descr b/databases/puppetdb8/pkg-descr
new file mode 100644
index 000000000000..b76f9bc98577
--- /dev/null
+++ b/databases/puppetdb8/pkg-descr
@@ -0,0 +1 @@
+The PuppetDB storeconfigs backend
diff --git a/databases/puppetdb8/pkg-plist b/databases/puppetdb8/pkg-plist
new file mode 100644
index 000000000000..91c4e1df6246
--- /dev/null
+++ b/databases/puppetdb8/pkg-plist
@@ -0,0 +1,23 @@
+bin/puppetdb
+%%DATADIR%%/cli/apps/anonymize
+%%DATADIR%%/cli/apps/config-migration
+%%DATADIR%%/cli/apps/delete-reports
+%%DATADIR%%/cli/apps/foreground
+%%DATADIR%%/cli/apps/ssl-setup
+%%DATADIR%%/cli/apps/start
+%%DATADIR%%/cli/apps/stop
+%%DATADIR%%/cli/apps/reload
+%%DATADIR%%/cli/apps/upgrade
+%%DATADIR%%/ezbake-functions.sh
+%%DATADIR%%/ezbake.manifest
+%%DATADIR%%/puppetdb.jar
+@group puppetdb
+@sample etc/puppetdb/bootstrap.cfg.sample
+@sample etc/puppetdb/conf.d/auth.conf.sample
+@sample etc/puppetdb/conf.d/config.ini.sample
+@sample etc/puppetdb/conf.d/database.ini.sample
+@sample etc/puppetdb/conf.d/jetty.ini.sample
+@sample etc/puppetdb/conf.d/repl.ini.sample
+@sample etc/puppetdb/logback.xml.sample
+@sample etc/puppetdb/request-logging.xml.sample
+@group