diff options
author | Matsuu Takuto <matsuu@gentoo.org> | 2008-03-05 16:15:55 +0000 |
---|---|---|
committer | Matsuu Takuto <matsuu@gentoo.org> | 2008-03-05 16:15:55 +0000 |
commit | e748cb438ca442c42277376c6af68e2d20d1808f (patch) | |
tree | cf64587f9cd72f828990bf72d86fe127928d4574 /app-admin/puppet | |
parent | Version bump, bug #212392 (diff) | |
download | gentoo-2-e748cb438ca442c42277376c6af68e2d20d1808f.tar.gz gentoo-2-e748cb438ca442c42277376c6af68e2d20d1808f.tar.bz2 gentoo-2-e748cb438ca442c42277376c6af68e2d20d1808f.zip |
Version bumped, bug #212262. Fixed /etc/init.d/puppetmaster, bug #211910.
(Portage version: 2.1.4.4)
Diffstat (limited to 'app-admin/puppet')
-rw-r--r-- | app-admin/puppet/ChangeLog | 10 | ||||
-rw-r--r-- | app-admin/puppet/files/puppet-0.24.2-gentoo.patch | 12 | ||||
-rwxr-xr-x | app-admin/puppet/files/puppetmaster.init | 50 | ||||
-rw-r--r-- | app-admin/puppet/puppet-0.24.2.ebuild | 117 |
4 files changed, 188 insertions, 1 deletions
diff --git a/app-admin/puppet/ChangeLog b/app-admin/puppet/ChangeLog index 2ee0fecad378..45d92e250ee8 100644 --- a/app-admin/puppet/ChangeLog +++ b/app-admin/puppet/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for app-admin/puppet # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/ChangeLog,v 1.10 2008/02/07 16:45:04 matsuu Exp $ +# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/ChangeLog,v 1.11 2008/03/05 16:15:54 matsuu Exp $ + +*puppet-0.24.2 (05 Mar 2008) + + 05 Mar 2008; MATSUU Takuto <matsuu@gentoo.org> + +files/puppet-0.24.2-gentoo.patch, +files/puppetmaster.init, + +puppet-0.24.2.ebuild: + Version bumped, bug #212262. + Fixed /etc/init.d/puppetmaster, bug #211910. *puppet-0.24.1-r1 (07 Feb 2008) diff --git a/app-admin/puppet/files/puppet-0.24.2-gentoo.patch b/app-admin/puppet/files/puppet-0.24.2-gentoo.patch new file mode 100644 index 000000000000..e9eccdd7a91b --- /dev/null +++ b/app-admin/puppet/files/puppet-0.24.2-gentoo.patch @@ -0,0 +1,12 @@ +diff -Naur puppet-0.24.2.orig/lib/puppet/provider/service/gentoo.rb puppet-0.24.2/lib/puppet/provider/service/gentoo.rb +--- puppet-0.24.2.orig/lib/puppet/provider/service/gentoo.rb 2008-03-04 01:32:37.000000000 +0900 ++++ puppet-0.24.2/lib/puppet/provider/service/gentoo.rb 2008-03-06 00:53:20.000000000 +0900 +@@ -33,7 +33,7 @@ + return :false unless line + + # If it's enabled then it will print output showing service | runlevel +- if output =~ /#{@resource[:name]}\s*|\s*default/ ++ if output =~ /#{@resource[:name]}\s*\|\s*default/ + return :true + else + return :false diff --git a/app-admin/puppet/files/puppetmaster.init b/app-admin/puppet/files/puppetmaster.init new file mode 100755 index 000000000000..09def2a47c9b --- /dev/null +++ b/app-admin/puppet/files/puppetmaster.init @@ -0,0 +1,50 @@ +#!/sbin/runscript +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +depend() { + need net + before puppet + use dns logger +} + +checkconfig() { + if [[ ! -d "${PUPPETMASTER_PID_DIR}" ]] ; then + eerror "Please make sure PUPPETMASTER_PID_DIR is defined and points to a existing directory" + return 1 + fi + + local site_manifest="/etc/puppet/manifests/site.pp" + [[ -n "${PUPPETMASTER_MANIFEST}" ]] && site_manifest="${PUPPETMASTER_MANIFEST}" + + if [ ! -f "${site_manifest}" ] ; then + eerror "Please create ${site_manifest} before running puppet" + return 1 + fi + + return 0 +} + +start() { + checkconfig || return $? + + local options="" + [[ -n "${PUPPETMASTER_MANIFEST}" ]] && options="${options} --manifest=${PUPPETMASTER_MANIFEST}" + [[ -n "${PUPPETMASTER_LOG}" ]] && options="${options} --logdest=${PUPPETMASTER_LOG}" + [[ -n "${PUPPETMASTER_EXTRA_OPTS}" ]] && options="${options} ${PUPPETMASTER_EXTRA_OPTS}" + + ebegin "Starting puppetmaster" + start-stop-daemon --start --quiet --exec /usr/bin/puppetmasterd \ + -- ${options} + eend $? "Failed to start puppetmaster" +} + +stop() { + ebegin "Stopping puppetmaster" + start-stop-daemon --stop --quiet \ + --pidfile ${PUPPETMASTER_PID_DIR}/puppetmasterd.pid + local ret=$? + eend ${ret} "Failed to stop puppetmaster" + rm -f ${PUPPETMASTER_PID_DIR}/puppetmasterd.pid + return ${ret} +} diff --git a/app-admin/puppet/puppet-0.24.2.ebuild b/app-admin/puppet/puppet-0.24.2.ebuild new file mode 100644 index 000000000000..76b1be2820e4 --- /dev/null +++ b/app-admin/puppet/puppet-0.24.2.ebuild @@ -0,0 +1,117 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/puppet-0.24.2.ebuild,v 1.1 2008/03/05 16:15:54 matsuu Exp $ + +inherit elisp-common eutils ruby + +DESCRIPTION="A system automation and configuration management software" +HOMEPAGE="http://reductivelabs.com/projects/puppet/index.html" +SRC_URI="http://reductivelabs.com/downloads/${PN}/${P}.tgz" + +LICENSE="GPL-2" +SLOT="0" +IUSE="emacs vim-syntax" +KEYWORDS="~x86 ~amd64" + +DEPEND="emacs? ( virtual/emacs )" +RDEPEND="${DEPEND} + >=dev-ruby/facter-1.3.5 + >=app-portage/eix-0.9.4" + +USE_RUBY="ruby18" + +SITEFILE="50${PN}-mode-gentoo.el" + +pkg_setup() { + built_with_use virtual/ruby ipv6 || \ + die "Ruby must be built with ipv6 support, otherwise puppet will not be able to run" + + enewgroup puppet || die "Problem creating group puppet" + enewuser puppet -1 -1 /var/lib/puppet puppet || die "Problem creating user puppet" +} + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}"/${P}-gentoo.patch +} + +src_compile() { + if use emacs ; then + elisp-compile ext/emacs/puppet-mode.el || die "elisp-compile failed" + fi +} + +src_install() { + DESTDIR="${D}" ruby_einstall "$@" || die + DESTDIR="${D}" erubydoc + + # Installation of init scripts and configuration + # bug #211910 + #doinitd conf/gentoo/init.d/puppetmaster + newinitd "${FILESDIR}"/puppetmaster.init puppetmaster + doconfd conf/gentoo/conf.d/puppetmaster + doinitd conf/gentoo/init.d/puppet + doconfd conf/gentoo/conf.d/puppet + + # Initial configuration files + keepdir /etc/puppet/manifests + insinto /etc/puppet + doins conf/gentoo/puppet/* + + # Location of log and data files + keepdir /var/run/puppet + keepdir /var/log/puppet + keepdir /var/lib/puppet/ssl + keepdir /var/lib/puppet/files + fowners -R puppet:puppet /var/{run,log,lib}/puppet + + if use emacs ; then + elisp-install ${PN} ext/emacs/puppet-mode.el* || die "elisp-install failed" + elisp-site-file-install "${FILESDIR}/${SITEFILE}" + fi + + if use vim-syntax ; then + insinto /usr/share/vim/vimfiles/syntax; doins ext/vim/syntax/puppet.vim + insinto /usr/share/vim/vimfiles/ftdetect; doins ext/vim/ftdetect/puppet.vim + fi + + # ext and examples files + for f in $(find ext examples -type f) ; do + docinto $(dirname ${f}) + dodoc ${f} + done +} + +pkg_postinst() { + elog + elog "Please, *don't* include the --ask option in EMERGE_EXTRA_OPTS as this could" + elog "cause puppet to hang while installing packages." + elog + elog "Puppet uses eix to get information about currently installed packages," + elog "so please keep the eix metadata cache updated so puppet is able to properly" + elog "handle package installations." + elog + elog "Currently puppet only supports adding and removing services to the default" + elog "runlevel, if you want to add/remove a service from another runlevel you may" + elog "do so using symlinking." + elog + + if [ \ + -f "${ROOT}/etc/puppet/puppetd.conf" -o \ + -f "${ROOT}/etc/puppet/puppetmaster.conf" -o \ + -f "${ROOT}/etc/puppet/puppetca.conf" \ + ] ; then + elog + elog "Please remove deprecated config files." + elog " /etc/puppet/puppetca.conf" + elog " /etc/puppet/puppetd.conf" + elog " /etc/puppet/puppetmasterd.conf" + elog + fi + use emacs && elisp-site-regen +} +pkg_postrm() { + use emacs && elisp-site-regen +} |