diff options
author | 2008-09-24 14:49:04 +0000 | |
---|---|---|
committer | 2008-09-24 14:49:04 +0000 | |
commit | f167ef6598d9a980aff1e9b9797a719ae144b326 (patch) | |
tree | 05142dc05ed3ebc851f1a373aa8563b87eac69eb /app-admin | |
parent | whitespace (diff) | |
download | gentoo-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/ChangeLog | 9 | ||||
-rwxr-xr-x | app-admin/puppet/files/puppet.init | 44 | ||||
-rwxr-xr-x | app-admin/puppet/files/puppetmaster.init | 11 | ||||
-rw-r--r-- | app-admin/puppet/metadata.xml | 24 | ||||
-rw-r--r-- | app-admin/puppet/puppet-0.24.5-r2.ebuild | 129 |
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 +} |