summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRomain Tartière <romain@FreeBSD.org>2019-09-23 18:02:11 +0000
committerRomain Tartière <romain@FreeBSD.org>2019-09-23 18:02:11 +0000
commitea5dcc2fb11a4f1e4ab123ebb8d5f9a5523edac2 (patch)
treeb1bcf8f47d5fe312746402b8e2450d74f53d16d8
parentUpdate to 6.9.0 (diff)
Update to 6.6.0
- Unbreak on FreeBSD 12+ (this version bundles an updated version of jRuby which allows running the PuppetServer on hosts with 64 bits inodes); - Override the jRuby bundled ffi.rb to workaround a NullPointerException when trying to open an inexistent file; - Remove deprecated Java flags; Release notes: https://puppet.com/docs/puppetserver/latest/release_notes.html#puppet-server-660 With hat: puppet
Notes
Notes: svn path=/head/; revision=512656
-rw-r--r--sysutils/puppetserver6/Makefile17
-rw-r--r--sysutils/puppetserver6/distinfo8
-rw-r--r--sysutils/puppetserver6/files/patch-ext__bin__puppetserver2
-rw-r--r--sysutils/puppetserver6/files/patch-ext__cli__foreground8
-rw-r--r--sysutils/puppetserver6/files/patch-ext__cli_defaults__cli-defaults.sh8
-rw-r--r--sysutils/puppetserver6/files/patch-ext__config__conf.d__puppetserver.conf10
-rw-r--r--sysutils/puppetserver6/files/patch-ext__ezbake-functions.sh6
-rw-r--r--sysutils/puppetserver6/files/patch-ffi.rb19
-rw-r--r--sysutils/puppetserver6/files/puppetserver.in2
-rw-r--r--sysutils/puppetserver6/pkg-plist1
10 files changed, 57 insertions, 24 deletions
diff --git a/sysutils/puppetserver6/Makefile b/sysutils/puppetserver6/Makefile
index 0b1c1a5f8da5..73e2f8e94480 100644
--- a/sysutils/puppetserver6/Makefile
+++ b/sysutils/puppetserver6/Makefile
@@ -1,21 +1,21 @@
# $FreeBSD$
PORTNAME= puppetserver
-PORTVERSION= 6.5.0
+PORTVERSION= 6.6.0
CATEGORIES= sysutils java
-MASTER_SITES= https://downloads.puppetlabs.com/puppet/
+MASTER_SITES= https://downloads.puppetlabs.com/puppet/:upstream \
+ https://raw.githubusercontent.com/jruby/jruby/fb3ba4b3543b72e735ba53b51e6b7ec8a9916e1b/lib/ruby/stdlib/ffi/:ffi
PKGNAMESUFFIX= 6
+DISTFILES= ${DISTNAME}${EXTRACT_SUFX}:upstream \
+ ffi.rb:ffi
+EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
MAINTAINER= puppet@FreeBSD.org
COMMENT= Puppet Server running in the JVM
LICENSE= APACHE20
-BROKEN_FreeBSD_12= Does not start. See PR 233766
-BROKEN_FreeBSD_13= Does not start. See PR 233766
-
RUN_DEPENDS= bash>=0:shells/bash \
- jruby>=9.1:lang/jruby \
puppet6>=0:sysutils/puppet6 \
rubygem-puppetserver-ca>=1:sysutils/rubygem-puppetserver-ca \
rubygem-semantic_puppet>=1:devel/rubygem-semantic_puppet \
@@ -40,6 +40,9 @@ GROUPS= puppet
SUB_LIST= JAVA_HOME=${JAVA_HOME}
SUB_FILES= pkg-message
+pre-patch:
+ ${CP} ${_DISTDIR}/ffi.rb ${WRKSRC}
+
post-patch:
.for file in ext/config/logback.xml ext/config/request-logging.xml \
ext/config/conf.d/global.conf ext/config/conf.d/puppetserver.conf \
@@ -60,6 +63,7 @@ post-patch:
do-install:
@${MKDIR} ${STAGEDIR}${DATADIR}/cli/apps
+ @${MKDIR} ${STAGEDIR}${DATADIR}/lib
@${MKDIR} ${STAGEDIR}${ETCDIR}/conf.d
@${MKDIR} ${STAGEDIR}${ETCDIR}/services.d
@${MKDIR} ${STAGEDIR}${PREFIX}/etc/puppet/code
@@ -89,5 +93,6 @@ do-install:
${INSTALL_DATA} ${WRKSRC}/ext/cli/start ${STAGEDIR}${DATADIR}/cli/apps/start
${INSTALL_DATA} ${WRKSRC}/ext/cli/stop ${STAGEDIR}${DATADIR}/cli/apps/stop
${INSTALL_DATA} ${WRKSRC}/ext/cli_defaults/cli-defaults.sh ${STAGEDIR}${DATADIR}/cli/cli-defaults.sh
+ ${INSTALL_DATA} ${WRKSRC}/ffi.rb ${STAGEDIR}${DATADIR}/lib
.include <bsd.port.mk>
diff --git a/sysutils/puppetserver6/distinfo b/sysutils/puppetserver6/distinfo
index a12006f19d79..f55de60dc6f7 100644
--- a/sysutils/puppetserver6/distinfo
+++ b/sysutils/puppetserver6/distinfo
@@ -1,3 +1,5 @@
-TIMESTAMP = 1564000731
-SHA256 (puppetserver-6.5.0.tar.gz) = 2b541fdbcd3fc2cf5125471f0234e299b97cbc4cc240c7dcb2bda86e7b8d8075
-SIZE (puppetserver-6.5.0.tar.gz) = 76080713
+TIMESTAMP = 1569185037
+SHA256 (puppetserver-6.6.0.tar.gz) = ff6707a513cdd343d542cb171a9e5c447581a908e7fddc4736cfde68f82e0b0a
+SIZE (puppetserver-6.6.0.tar.gz) = 59095750
+SHA256 (ffi.rb) = f991c5eb6b6e4c88541af592207aa7ea14ba48f482978b3b479c4b17390e8e93
+SIZE (ffi.rb) = 5893
diff --git a/sysutils/puppetserver6/files/patch-ext__bin__puppetserver b/sysutils/puppetserver6/files/patch-ext__bin__puppetserver
index 605a03f50931..fb17e51c6fde 100644
--- a/sysutils/puppetserver6/files/patch-ext__bin__puppetserver
+++ b/sysutils/puppetserver6/files/patch-ext__bin__puppetserver
@@ -6,7 +6,7 @@
CONFIG="/etc/puppetlabs/puppetserver/conf.d"
+elif [ `uname` == "FreeBSD" ] ; then
+ JAVA_BIN="%%JAVA%%"
-+ JAVA_ARGS="-Xms2g -Xmx2g -XX:MaxPermSize=256m"
++ JAVA_ARGS="-Xms2g -Xmx2g"
+ USER="puppet"
+ INSTALL_DIR="%%DATADIR%%"
+ CONFIG="%%ETCDIR%%/conf.d"
diff --git a/sysutils/puppetserver6/files/patch-ext__cli__foreground b/sysutils/puppetserver6/files/patch-ext__cli__foreground
index 36a5a1144552..a4a4a5ad6649 100644
--- a/sysutils/puppetserver6/files/patch-ext__cli__foreground
+++ b/sysutils/puppetserver6/files/patch-ext__cli__foreground
@@ -1,5 +1,5 @@
---- ext/cli/foreground.orig 2019-02-08 20:38:48.978660000 -0800
-+++ ext/cli/foreground 2019-02-08 21:31:43.683308000 -0800
+--- ext/cli/foreground.orig 2019-09-17 14:05:56 UTC
++++ ext/cli/foreground
@@ -1,6 +1,6 @@
#!/usr/bin/env bash
@@ -8,8 +8,8 @@
cli_defaults=${INSTALL_DIR}/cli/cli-defaults.sh
if [ ! -e "${INSTALL_DIR}/ezbake-functions.sh" ]; then
-@@ -31,7 +31,7 @@
- -Djava.security.egd=/dev/urandom \
+@@ -30,7 +30,7 @@ fi
+ COMMAND="${JAVA_BIN} ${JAVA_ARGS} ${LOG_APPENDER} \
-cp "$CLASSPATH" \
clojure.main -m puppetlabs.trapperkeeper.main \
- --config ${CONFIG} --bootstrap-config ${BOOTSTRAP_CONFIG} \
diff --git a/sysutils/puppetserver6/files/patch-ext__cli_defaults__cli-defaults.sh b/sysutils/puppetserver6/files/patch-ext__cli_defaults__cli-defaults.sh
index d5c27a11e506..85febc64943c 100644
--- a/sysutils/puppetserver6/files/patch-ext__cli_defaults__cli-defaults.sh
+++ b/sysutils/puppetserver6/files/patch-ext__cli_defaults__cli-defaults.sh
@@ -1,8 +1,12 @@
---- ext/cli_defaults/cli-defaults.sh.orig 2018-10-01 20:36:08 UTC
+--- ext/cli_defaults/cli-defaults.sh.orig 2019-09-17 14:05:56 UTC
+++ ext/cli_defaults/cli-defaults.sh
-@@ -1,4 +1,4 @@
+@@ -1,7 +1,7 @@
-INSTALL_DIR="/opt/puppetlabs/server/apps/puppetserver"
+INSTALL_DIR="%%DATADIR%%"
if [ -n "$JRUBY_JAR" ]; then
echo "Warning: the JRUBY_JAR setting is no longer needed and will be ignored." 1>&2
+ fi
+
+-CLASSPATH="${CLASSPATH}:/opt/puppetlabs/puppet/lib/ruby/vendor_ruby/facter.jar:/opt/puppetlabs/server/data/puppetserver/jars/*"
++CLASSPATH="${CLASSPATH}:/usr/local/lib/ruby/vendor_ruby/facter.jar:/opt/puppetlabs/server/data/puppetserver/jars/*"
diff --git a/sysutils/puppetserver6/files/patch-ext__config__conf.d__puppetserver.conf b/sysutils/puppetserver6/files/patch-ext__config__conf.d__puppetserver.conf
index 16ade757eefa..11da9b3460a6 100644
--- a/sysutils/puppetserver6/files/patch-ext__config__conf.d__puppetserver.conf
+++ b/sysutils/puppetserver6/files/patch-ext__config__conf.d__puppetserver.conf
@@ -1,15 +1,17 @@
---- ext/config/conf.d/puppetserver.conf.orig 2018-10-01 20:36:05 UTC
+--- ext/config/conf.d/puppetserver.conf.orig 2019-09-17 14:05:34 UTC
+++ ext/config/conf.d/puppetserver.conf
-@@ -2,16 +2,21 @@
+@@ -2,16 +2,23 @@
jruby-puppet: {
# Where the puppet-agent dependency places puppet, facter, etc...
# Puppet server expects to load Puppet from this location
- ruby-load-path: [/opt/puppetlabs/puppet/lib/ruby/vendor_ruby]
+ ruby-load-path: [
++ %%PREFIX%%/share/puppetserver/lib,
+ %%RUBY_SITELIBDIR%%,
+ %%PREFIX%%/lib/ruby/vendor_ruby,
-+ %%PREFIX%%/lib/ruby/gems/%%RUBY_VER%%/gems/semantic_puppet-1.0.2/lib,
++ %%PREFIX%%/lib/ruby/gems/%%RUBY_VER%%/gems/concurrent-ruby-1.1.5/lib,
+ %%PREFIX%%/lib/ruby/gems/%%RUBY_VER%%/gems/multi_json-1.13.1/lib,
++ %%PREFIX%%/lib/ruby/gems/%%RUBY_VER%%/gems/semantic_puppet-1.0.2/lib,
+ ]
# This setting determines where JRuby will install gems. It is used for loading gems,
@@ -25,7 +27,7 @@
# PLEASE NOTE: Use caution when modifying the below settings. Modifying
# these settings will change the value of the corresponding Puppet settings
-@@ -26,23 +31,23 @@ jruby-puppet: {
+@@ -26,23 +32,23 @@ jruby-puppet: {
# (optional) path to puppet conf dir; if not specified, will use
# /etc/puppetlabs/puppet
diff --git a/sysutils/puppetserver6/files/patch-ext__ezbake-functions.sh b/sysutils/puppetserver6/files/patch-ext__ezbake-functions.sh
index 022d52fe86fb..bd4d0a1c26b7 100644
--- a/sysutils/puppetserver6/files/patch-ext__ezbake-functions.sh
+++ b/sysutils/puppetserver6/files/patch-ext__ezbake-functions.sh
@@ -1,6 +1,6 @@
---- ext/ezbake-functions.sh.orig 2019-02-08 21:16:18.212575000 -0800
-+++ ext/ezbake-functions.sh 2019-02-08 21:16:49.208798000 -0800
-@@ -126,7 +126,7 @@
+--- ext/ezbake-functions.sh.orig 2019-09-17 14:05:56 UTC
++++ ext/ezbake-functions.sh
+@@ -126,7 +126,7 @@ init_restart_file()
local group="${GROUP:-puppet}"
if [ ! -e "$restartfile" ]; then
diff --git a/sysutils/puppetserver6/files/patch-ffi.rb b/sysutils/puppetserver6/files/patch-ffi.rb
new file mode 100644
index 000000000000..927fe2523bf2
--- /dev/null
+++ b/sysutils/puppetserver6/files/patch-ffi.rb
@@ -0,0 +1,19 @@
+--- ffi.rb.orig 2019-09-22 21:04:46 UTC
++++ ffi.rb
+@@ -125,7 +125,7 @@ module FFI
+ # Load all the platform dependent types/consts/struct members
+ class Config
+ CONFIG = Hash.new
+- begin
++ if File.exist?(File.join(Platform::CONF_DIR, 'platform.conf'))
+ File.open(File.join(Platform::CONF_DIR, 'platform.conf'), "r") do |f|
+ typedef = "rbx.platform.typedef."
+ f.each_line { |line|
+@@ -138,7 +138,6 @@ module FFI
+ end
+ }
+ end
+- rescue Errno::ENOENT
+ end
+ end
+ end
diff --git a/sysutils/puppetserver6/files/puppetserver.in b/sysutils/puppetserver6/files/puppetserver.in
index a388701ee14f..b05a7bf49364 100644
--- a/sysutils/puppetserver6/files/puppetserver.in
+++ b/sysutils/puppetserver6/files/puppetserver.in
@@ -56,7 +56,7 @@ pidfile="/var/run/puppetserver/puppetserver.pid"
command="/usr/sbin/daemon"
java_cmd="${puppetserver_java_home}/bin/java"
procname="${java_cmd}"
-command_args="-f -p ${pidfile} ${java_cmd} ${puppetserver_java_opts} -cp %%DATADIR%%/puppet-server-release.jar clojure.main -m puppetlabs.trapperkeeper.main ${puppetserver_args}"
+command_args="-f -p ${pidfile} ${java_cmd} ${puppetserver_java_opts} -cp %%DATADIR%%/puppet-server-release.jar:%%PREFIX%%/lib/ruby/vendor_ruby/facter.jar clojure.main -m puppetlabs.trapperkeeper.main ${puppetserver_args}"
required_files="${java_cmd}"
diff --git a/sysutils/puppetserver6/pkg-plist b/sysutils/puppetserver6/pkg-plist
index 6e7c90aeb097..569e25345e6b 100644
--- a/sysutils/puppetserver6/pkg-plist
+++ b/sysutils/puppetserver6/pkg-plist
@@ -21,6 +21,7 @@
@(,,755) %%DATADIR%%/cli/apps/stop
@(,,755) %%DATADIR%%/cli/cli-defaults.sh
@(,,755) %%DATADIR%%/ezbake-functions.sh
+%%DATADIR%%/lib/ffi.rb
@dir(puppet,puppet,750) /var/log/puppetserver
@dir(puppet,puppet,755) /var/puppet
@dir(puppet,puppet,750) /var/puppet/server