summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatsuu Takuto <matsuu@gentoo.org>2008-09-24 14:49:04 +0000
committerMatsuu Takuto <matsuu@gentoo.org>2008-09-24 14:49:04 +0000
commitf167ef6598d9a980aff1e9b9797a719ae144b326 (patch)
tree05142dc05ed3ebc851f1a373aa8563b87eac69eb /app-admin
parentwhitespace (diff)
downloadgentoo-2-f167ef6598d9a980aff1e9b9797a719ae144b326.tar.gz
gentoo-2-f167ef6598d9a980aff1e9b9797a719ae144b326.tar.bz2
gentoo-2-f167ef6598d9a980aff1e9b9797a719ae144b326.zip
Fixed init.d issue again, bug #237712. Added ldap and rrdtool USE flags, bug #237717.
(Portage version: 2.2_rc9/cvs/Linux 2.6.26-gentoo-r1 x86_64)
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/puppet/ChangeLog9
-rwxr-xr-xapp-admin/puppet/files/puppet.init44
-rwxr-xr-xapp-admin/puppet/files/puppetmaster.init11
-rw-r--r--app-admin/puppet/metadata.xml24
-rw-r--r--app-admin/puppet/puppet-0.24.5-r2.ebuild129
5 files changed, 186 insertions, 31 deletions
diff --git a/app-admin/puppet/ChangeLog b/app-admin/puppet/ChangeLog
index bbe7b18bb3cf..d629db786cf9 100644
--- a/app-admin/puppet/ChangeLog
+++ b/app-admin/puppet/ChangeLog
@@ -1,6 +1,13 @@
# 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.22 2008/09/15 00:35:23 matsuu Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/ChangeLog,v 1.23 2008/09/24 14:49:03 matsuu Exp $
+
+*puppet-0.24.5-r2 (24 Sep 2008)
+
+ 24 Sep 2008; MATSUU Takuto <matsuu@gentoo.org> files/puppet.init,
+ files/puppetmaster.init, metadata.xml, +puppet-0.24.5-r2.ebuild:
+ Fixed init.d issue again, bug #237712. Added ldap and rrdtool USE flags,
+ bug #237717.
15 Sep 2008; MATSUU Takuto <matsuu@gentoo.org> puppet-0.24.4.ebuild,
-puppet-0.24.5.ebuild, puppet-0.24.5-r1.ebuild:
diff --git a/app-admin/puppet/files/puppet.init b/app-admin/puppet/files/puppet.init
index 019b51680ac7..e909f88aa6e7 100755
--- a/app-admin/puppet/files/puppet.init
+++ b/app-admin/puppet/files/puppet.init
@@ -1,38 +1,40 @@
#!/sbin/runscript
-# Copyright 1999-2004 Gentoo Foundation
+# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/files/puppet.init,v 1.1 2008/09/09 09:20:05 matsuu Exp $
depend() {
- need net
- use dns logger
+ need net
+ use dns logger
}
checkconfig() {
- if [[ ! -d "${PUPPET_PID_DIR}" ]] ; then
- eerror "Please make sure PUPPET_PID_DIR is defined and points to a existing directory"
- return 1
- fi
+ if [[ ! -d "${PUPPET_PID_DIR}" ]] ; then
+ eerror "Please make sure PUPPET_PID_DIR is defined and points to a existing directory"
+ return 1
+ fi
- return 0
+ return 0
}
start() {
- checkconfig || return $?
+ checkconfig || return $?
- local options=""
- [[ -n "${PUPPET_EXTRA_OPTS}" ]] && options="${options} ${PUPPET_EXTRA_OPTS}"
+ local options=""
+ [[ -n "${PUPPET_EXTRA_OPTS}" ]] && options="${options} ${PUPPET_EXTRA_OPTS}"
- ebegin "Starting puppet"
- start-stop-daemon --start --quiet --exec /usr/bin/puppetd -- ${options}
- eend $? "Failed to start puppet"
+ ebegin "Starting puppet"
+ start-stop-daemon --start --quiet \
+ --pidfile "${PUPPET_PID_DIR}/puppetd.pid" \
+ --exec /usr/bin/puppetd -- ${options}
+ eend $? "Failed to start puppet"
}
stop() {
- ebegin "Stopping puppet"
- start-stop-daemon --stop --quiet --pidfile ${PUPPET_PID_DIR}/puppetd.pid
- local ret=$?
- eend ${ret} "Failed to stop puppet"
- rm -f ${PUPPET_PID_DIR}/puppetd.pid
- return ${ret}
+ ebegin "Stopping puppet"
+ start-stop-daemon --stop --quiet \
+ --pidfile "${PUPPET_PID_DIR}/puppetd.pid"
+ local ret=$?
+ eend ${ret} "Failed to stop puppet"
+ rm -f "${PUPPET_PID_DIR}/puppetd.pid"
+ return ${ret}
}
diff --git a/app-admin/puppet/files/puppetmaster.init b/app-admin/puppet/files/puppetmaster.init
index e5ff580f6758..4cc59794ba84 100755
--- a/app-admin/puppet/files/puppetmaster.init
+++ b/app-admin/puppet/files/puppetmaster.init
@@ -4,6 +4,7 @@
depend() {
need net
+ after slapd
before puppet
use dns logger
}
@@ -34,18 +35,18 @@ start() {
[[ -n "${PUPPETMASTER_EXTRA_OPTS}" ]] && options="${options} ${PUPPETMASTER_EXTRA_OPTS}"
ebegin "Starting puppetmaster"
- start-stop-daemon --start --quiet --exec /usr/bin/puppetmasterd \
- -- ${options}
+ start-stop-daemon --start --quiet \
+ --pidfile "${PUPPETMASTER_PID_DIR}/puppetmasterd.pid" \
+ --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
+ --pidfile "${PUPPETMASTER_PID_DIR}/puppetmasterd.pid"
local ret=$?
eend ${ret} "Failed to stop puppetmaster"
- rm -f ${PUPPETMASTER_PID_DIR}/puppetmasterd.pid
+ rm -f "${PUPPETMASTER_PID_DIR}/puppetmasterd.pid"
return ${ret}
}
-
diff --git a/app-admin/puppet/metadata.xml b/app-admin/puppet/metadata.xml
index 70313d27d4f6..3d84a31e5dbe 100644
--- a/app-admin/puppet/metadata.xml
+++ b/app-admin/puppet/metadata.xml
@@ -1,8 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
-<herd>no-herd</herd>
-<maintainer>
- <email>matsuu@gentoo.org</email>
-</maintainer>
+ <herd>no-herd</herd>
+ <maintainer>
+ <email>matsuu@gentoo.org</email>
+ </maintainer>
+ <longdescription lang="en">
+ Centralised configuration management for networks
+ Puppet lets you centrally manage every important aspect of your system
+ using a cross-platform specification language that manages all the
+ separate elements normally aggregated in different files, like users,
+ cron jobs, and hosts, along with obviously discrete elements like
+ packages, services, and files.
+
+ Puppet's simple declarative specification language provides powerful
+ classing abilities for drawing out the similarities between hosts while
+ allowing them to be as specific as necessary, and it handles dependency
+ and prerequisite relationships between objects clearly and explicitly.
+ </longdescription>
+ <use>
+ <flag name='rrdtool'>Eanble rrdtool support</flag>
+ </use>
</pkgmetadata>
diff --git a/app-admin/puppet/puppet-0.24.5-r2.ebuild b/app-admin/puppet/puppet-0.24.5-r2.ebuild
new file mode 100644
index 000000000000..bacc1b5d7185
--- /dev/null
+++ b/app-admin/puppet/puppet-0.24.5-r2.ebuild
@@ -0,0 +1,129 @@
+# 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.5-r2.ebuild,v 1.1 2008/09/24 14:49:03 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 ldap rrdtool vim-syntax"
+#KEYWORDS="~amd64 ~ppc ~sparc ~x86"
+KEYWORDS="~amd64 ~x86"
+
+DEPEND="emacs? ( virtual/emacs )
+ >=dev-ruby/facter-1.1.0"
+RDEPEND="${DEPEND}
+ >=app-portage/eix-0.9.4
+ ldap? ( dev-ruby/ruby-ldap )
+ rrdtool? ( dev-ruby/ruby-rrd )"
+# || (
+# www-servers/webrick
+# www-servers/mongrel
+# )
+# dev-ruby/diff-lcs
+# dev-ruby/rails
+# dev-ruby/ruby-shadow
+
+USE_RUBY="ruby18 ruby19"
+
+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
+ enewuser puppet -1 -1 /var/lib/puppet puppet
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+
+ epatch "${FILESDIR}/${PN}-0.24.2-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
+
+ #
+ # bug #237071
+ #
+ #doinitd conf/gentoo/init.d/puppetmaster
+ newinitd "${FILESDIR}"/puppetmaster.init puppetmaster
+ doconfd conf/gentoo/conf.d/puppetmaster
+ #doinitd conf/gentoo/init.d/puppet
+ newinitd "${FILESDIR}"/puppet.init 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
+}