ports/149060: [PATCH] sysutils/puppet: update to 2.6.0

Alexander Kriventsov avk at vl.ru
Thu Jul 29 10:00:18 UTC 2010


>Number:         149060
>Category:       ports
>Synopsis:       [PATCH] sysutils/puppet: update to 2.6.0
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Thu Jul 29 10:00:17 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Alexander Kriventsov
>Release:        FreeBSD 8.0-RELEASE
>Organization:
Hosting Community
>Environment:
FreeBSD sshgate.akriventsov.infra.hc.ru 8.0-RELEASE FreeBSD 8.0-RELEASE #0: Sat Nov 21 15:02:08 UTC 2009     root at mason.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:
Update port to the latest stable version.
>How-To-Repeat:

>Fix:


Patch attached with submission follows:

diff -urN puppet.orig/Makefile puppet/Makefile
--- puppet.orig/Makefile	2010-04-06 03:04:13.000000000 +0400
+++ puppet/Makefile	2010-07-29 13:41:55.000000000 +0400
@@ -6,7 +6,7 @@
 #
 
 PORTNAME=	puppet
-PORTVERSION=	0.25.4
+PORTVERSION=	2.6.0
 CATEGORIES=	sysutils
 MASTER_SITES=	http://www.puppetlabs.com/downloads/${PORTNAME}/
 
@@ -27,7 +27,7 @@
 PUPPET_USER:=	puppet
 PUPPET_GROUP:=	${PUPPET_USER}
 PUPPET_RUNDIR:=	/var/run/${PORTNAME}
-PUPPET_WORKDIR:=	/var/${PORTNAME}
+PUPPET_WORKDIR:=	/var/lib/${PORTNAME}
 SUB_FILES+=	pkg-install pkg-message pkg-deinstall
 SUB_LIST+=	PUPPET_RUNDIR="${PUPPET_RUNDIR}" \
 		PUPPET_USER="${PUPPET_USER}" \
@@ -35,9 +35,16 @@
 		PUPPET_WORKDIR="${PUPPET_WORKDIR}"
 
 MANCOMPRESSED=	yes
-MAN8=	filebucket.8 pi.8 puppet.8 puppet.conf.8 puppetca.8 puppetd.8 \
+MAN5=	puppet.conf.5
+MAN8=	filebucket.8 pi.8 puppet.8 puppetca.8 puppetd.8 \
 	puppetdoc.8 puppetmasterd.8 puppetrun.8 ralsh.8 puppetqd.8
 
+OPTIONS=	MONGREL		"Run puppetmasterd as a mongrel service" off
+
+.ifdef(WITH_MONGREL)
+RUN_DEPENDS+=	rubygem-mongrel>=0:${PORTSDIR}/www/rubygem-mongrel
+.endif
+
 .include <bsd.port.pre.mk>
 
 post-patch:
@@ -45,6 +52,8 @@
 		${WRKSRC}/lib/puppet/reference/configuration.rb
 	@${REINPLACE_CMD} -e "s|/etc/puppet|${PREFIX}/etc/puppet|" \
 		${WRKSRC}/lib/puppet/defaults.rb
+	@${REINPLACE_CMD} -e "s|/etc/puppet|${PREFIX}/etc/puppet|" \
+		${WRKSRC}/lib/puppet/util/run_mode.rb
 
 pre-install:
 	@${SETENV} PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
@@ -57,7 +66,7 @@
 .for DIR in ssl manifests
 	${INSTALL} -d ${PREFIX}/etc/${PORTNAME}/${DIR}
 .endfor
-	${RUBY} -I ${RUBY_SITELIBDIR} ${PREFIX}/bin/puppetmasterd \
+	${RUBY} -I ${RUBY_SITELIBDIR} ${PREFIX}/sbin/puppetmasterd \
 		--confdir=${PREFIX}/etc/${PORTNAME} \
 		--rundir=${PUPPET_RUNDIR} \
 		--genconfig | \
diff -urN puppet.orig/distinfo puppet/distinfo
--- puppet.orig/distinfo	2010-04-06 03:04:13.000000000 +0400
+++ puppet/distinfo	2010-07-29 12:31:18.000000000 +0400
@@ -1,3 +1,3 @@
-MD5 (puppet-0.25.4.tar.gz) = 69c97019fda5620f9f45f6ad64407e3b
-SHA256 (puppet-0.25.4.tar.gz) = c2dd640a31d1e57ad09929001f90247cd83908485f1f737abca352eb1866fbf3
-SIZE (puppet-0.25.4.tar.gz) = 1424240
+MD5 (puppet-2.6.0.tar.gz) = dec015a0fee0616409d034ea9e674020
+SHA256 (puppet-2.6.0.tar.gz) = a4841175e91c670d4bb6919bf0b82caaca91695153ec4e9210df5b900411813c
+SIZE (puppet-2.6.0.tar.gz) = 1482877
diff -urN puppet.orig/files/patch-lib::puppet::provider::service::freebsd.rb puppet/files/patch-lib::puppet::provider::service::freebsd.rb
--- puppet.orig/files/patch-lib::puppet::provider::service::freebsd.rb	1970-01-01 03:00:00.000000000 +0300
+++ puppet/files/patch-lib::puppet::provider::service::freebsd.rb	2010-07-29 12:37:13.000000000 +0400
@@ -0,0 +1,19 @@
+--- lib/puppet/provider/service/freebsd.rb.orig	2010-07-29 06:51:38.000000000 +0000
++++ lib/puppet/provider/service/freebsd.rb	2010-07-29 06:50:46.000000000 +0000
+@@ -18,6 +18,7 @@
+   def rcvar
+     rcvar = execute([self.initscript, :rcvar], :failonfail => true, :squelch => false)
+     rcvar = rcvar.split("\n")
++    rcvar.delete_if {|str| str !~ /^(#\s\S+|\w+enable=.*)$/ }
+   end
+ 
+   # Extract service name
+@@ -44,7 +45,7 @@
+   def rcvar_value
+     value = self.rcvar[1]
+     self.error("No rcvar value found in rcvar") if value.nil?
+-    value = value.gsub!(/(.*)_enable=\"?(.*)\"?/, '\2')
++    value = value.gsub!(/(.*)_enable=\"?(\w+)\"?/, '\2')
+     self.error("rcvar value is empty") if value.nil?
+     self.debug("rcvar value is #{value}")
+     value
diff -urN puppet.orig/files/patch-lib::puppet::type::file::content.rb puppet/files/patch-lib::puppet::type::file::content.rb
--- puppet.orig/files/patch-lib::puppet::type::file::content.rb	1970-01-01 03:00:00.000000000 +0300
+++ puppet/files/patch-lib::puppet::type::file::content.rb	2010-07-29 12:37:13.000000000 +0400
@@ -0,0 +1,11 @@
+--- lib/puppet/type/file/content.rb.orig	2010-07-28 11:58:47.000000000 +0000
++++ lib/puppet/type/file/content.rb	2010-07-28 11:58:57.000000000 +0000
+@@ -184,7 +184,7 @@
+     end
+ 
+     def chunk_file_from_source(source_or_content)
+-      request = Puppet::Indirector::Request.new(:file_content, :find, source_or_content.full_path)
++      request = Puppet::Indirector::Request.new(:file_content, :find, source_or_content.full_path.sub(/^\//,''))
+       connection = Puppet::Network::HttpPool.http_instance(source_or_content.server, source_or_content.port)
+       connection.request_get(indirection2uri(request), add_accept_encoding({"Accept" => "raw"})) do |response|
+         case response.code
diff -urN puppet.orig/files/puppetmasterd.in puppet/files/puppetmasterd.in
--- puppet.orig/files/puppetmasterd.in	2010-03-27 03:15:02.000000000 +0300
+++ puppet/files/puppetmasterd.in	2010-07-29 12:36:17.000000000 +0400
@@ -40,6 +40,17 @@
 : ${puppetmasterd_confdir="%%PREFIX%%/etc/puppet"}
 : ${puppetmasterd_pid="%%PUPPET_RUNDIR%%/${name}.pid"}
 : ${puppetmasterd_flags="--pidfile ${puppetmasterd_pid}"}
+: ${puppetmasterd_ports=""}
 pidfile="$puppetmasterd_pid"
 
-run_rc_command "$1"
+if [ -z "${puppetmasterd_ports}" ]; then
+	run_rc_command "$1"
+else
+	for port in ${puppetmasterd_ports}; do
+		puppetmasterd_pid="/var/run/puppet/${name}.${port}.pid"
+		puppetmasterd_flags="--pidfile ${puppetmasterd_pid} --servertype=mongrel --masterport=${port}"
+		pidfile="$puppetmasterd_pid"
+		run_rc_command "$1"
+		_rc_restart_done="false"
+	done
+fi


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list