Bug 178138 - [patch] sysutils/puppet - enable in freebsd service provider is broken
Summary: [patch] sysutils/puppet - enable in freebsd service provider is broken
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: Steve Wills
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-04-25 11:20 UTC by Bogdan
Modified: 2013-04-29 02:50 UTC (History)
0 users

See Also:


Attachments
file.txt (416 bytes, text/plain)
2013-04-25 11:20 UTC, Bogdan
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bogdan 2013-04-25 11:20:00 UTC
see https://github.com/puppetlabs/puppet/pull/1527 for explanation and patch

When puppet is asked to enable a service in rc.conf, it adds

apache_enable_enable="YES"

and it keeps saying that it changed 'enable' from false to true every run.

Fix: The commit that fixes this upstream is here: https://github.com/puppetlabs/puppet/pull/1527/files

Patch is attached.

Note that there is a newer version of puppet out, not sure when it was released or if it contains this fix.

Patch attached with submission follows:
How-To-Repeat: create a manifest for a service that isn't in rc.conf with

ensure => running

and apply it. check rc.conf
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2013-04-26 23:47:09 UTC
Responsible Changed
From-To: freebsd-ports-bugs->swills

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 dfilter service freebsd_committer freebsd_triage 2013-04-29 02:49:12 UTC
Author: swills
Date: Mon Apr 29 01:49:03 2013
New Revision: 316771
URL: http://svnweb.freebsd.org/changeset/ports/316771

Log:
  - Add patch to fix puppet service provier [1]
  - While here, fix build with Ruby 2.0
  
  PR:		ports/178138
  Submitted by:	Bogdan <bogdan@neant.ro>
  Obtained from:	upstream

Added:
  head/sysutils/puppet/files/patch-service-freebsd.rb   (contents, props changed)
Modified:
  head/sysutils/puppet/Makefile

Modified: head/sysutils/puppet/Makefile
==============================================================================
--- head/sysutils/puppet/Makefile	Sun Apr 28 23:25:25 2013	(r316770)
+++ head/sysutils/puppet/Makefile	Mon Apr 29 01:49:03 2013	(r316771)
@@ -3,7 +3,7 @@
 
 PORTNAME=	puppet
 PORTVERSION=	3.1.1
-PORTREVISION=	1
+PORTREVISION=	2
 CATEGORIES=	sysutils
 MASTER_SITES=	http://downloads.puppetlabs.com/puppet/
 
@@ -53,11 +53,6 @@ PACKAGE_ROOT_DESC=	Use PACKAGEROOT inste
 RUN_DEPENDS+=	rubygem-mongrel>=0:${PORTSDIR}/www/rubygem-mongrel
 .endif
 
-.if ${PORT_OPTIONS:MPACKAGE_ORIGIN}
-EXTRA_PATCHES+=	${FILESDIR}/optpatch-package_origin
-RUN_DEPENDS+=	rubygem-bzip2>=0:${PORTSDIR}/archivers/rubygem-bzip2
-.endif
-
 .if ${PORT_OPTIONS:MPACKAGE_ROOT}
 .if ! ${PORT_OPTIONS:MPACKAGE_ORIGIN}
 EXTRA_PATCHES+=	${FILESDIR}/optpatch-package_root
@@ -68,6 +63,13 @@ BROKEN=	PACKAGE_ROOT option patch is inc
 
 .include <bsd.port.pre.mk>
 
+.if ${PORT_OPTIONS:MPACKAGE_ORIGIN}
+EXTRA_PATCHES+=	${FILESDIR}/optpatch-package_origin
+.if ${RUBY_VER} == 1.8 || ${RUBY_VER} == 1.9
+RUN_DEPENDS+=	rubygem-bzip2>=0:${PORTSDIR}/archivers/rubygem-bzip2
+.endif
+.endif
+
 post-patch:
 	@${REINPLACE_CMD} -e "s|/etc/puppet|${ETCDIR}|" \
 		${WRKSRC}/install.rb \

Added: head/sysutils/puppet/files/patch-service-freebsd.rb
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/puppet/files/patch-service-freebsd.rb	Mon Apr 29 01:49:03 2013	(r316771)
@@ -0,0 +1,11 @@
+--- lib/puppet/provider/service/freebsd.rb.orig	2013-04-28 02:55:36.017584743 +0000
++++ lib/puppet/provider/service/freebsd.rb	2013-04-28 02:55:52.581583782 +0000
+@@ -41,7 +41,7 @@
+   def rcvar_name
+     name = self.rcvar[1]
+     self.error("No rcvar name found in rcvar") if name.nil?
+-    name = name.gsub!(/(.*)(_enable)?=(.*)/, '\1')
++    name = name.gsub!(/(.*?)(_enable)?=(.*)/, '\1')
+     self.error("rcvar name is empty") if name.nil?
+     self.debug("rcvar name is #{name}")
+     name
_______________________________________________
svn-ports-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-ports-all
To unsubscribe, send any mail to "svn-ports-all-unsubscribe@freebsd.org"
Comment 3 Steve Wills freebsd_committer freebsd_triage 2013-04-29 02:49:47 UTC
State Changed
From-To: open->closed

Committed. Thanks!