summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Thode <prometheanfire@gentoo.org>2012-09-10 15:39:00 +0000
committerMatthew Thode <prometheanfire@gentoo.org>2012-09-10 15:39:00 +0000
commit8339a46fb8689c01e0fb0eda329131214743b969 (patch)
tree84998a9356b189175b6e33b744b3cf94a2a1af55 /app-admin/puppet
parentStable for HPPA (bug #433603). (diff)
downloadgentoo-2-8339a46fb8689c01e0fb0eda329131214743b969.tar.gz
gentoo-2-8339a46fb8689c01e0fb0eda329131214743b969.tar.bz2
gentoo-2-8339a46fb8689c01e0fb0eda329131214743b969.zip
fixes bug 429648 (eix-update issue)
(Portage version: 2.1.11.9/cvs/Linux x86_64)
Diffstat (limited to 'app-admin/puppet')
-rw-r--r--app-admin/puppet/ChangeLog8
-rw-r--r--app-admin/puppet/files/puppet-2.7.18-eix_fix.patch23
-rw-r--r--app-admin/puppet/puppet-2.7.18-r1.ebuild182
3 files changed, 212 insertions, 1 deletions
diff --git a/app-admin/puppet/ChangeLog b/app-admin/puppet/ChangeLog
index ccb8f8d9385b..6dff75c8a6e8 100644
--- a/app-admin/puppet/ChangeLog
+++ b/app-admin/puppet/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-admin/puppet
# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/ChangeLog,v 1.121 2012/08/26 14:32:00 armin76 Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/ChangeLog,v 1.122 2012/09/10 15:38:59 prometheanfire Exp $
+
+*puppet-2.7.18-r1 (10 Sep 2012)
+
+ 10 Sep 2012; Matthew Thode <prometheanfire@gentoo.org>
+ +puppet-2.7.18-r1.ebuild, +files/puppet-2.7.18-eix_fix.patch:
+ fixing for bug 429648
26 Aug 2012; Raúl Porcel <armin76@gentoo.org> puppet-2.7.18.ebuild:
sparc stable wrt #425112
diff --git a/app-admin/puppet/files/puppet-2.7.18-eix_fix.patch b/app-admin/puppet/files/puppet-2.7.18-eix_fix.patch
new file mode 100644
index 000000000000..f0766a87b766
--- /dev/null
+++ b/app-admin/puppet/files/puppet-2.7.18-eix_fix.patch
@@ -0,0 +1,23 @@
+diff -Naur puppet-2.7.18.orig/lib/puppet/provider/package/portage.rb puppet-2.7.18/lib/puppet/provider/package/portage.rb
+--- puppet-2.7.18.orig/lib/puppet/provider/package/portage.rb 2012-08-26 03:32:53.646824966 -0400
++++ puppet-2.7.18/lib/puppet/provider/package/portage.rb 2012-08-26 03:37:25.333824967 -0400
+@@ -20,7 +20,8 @@
+ search_format = "<category> <name> [<installedversions:LASTVERSION>] [<bestversion:LASTVERSION>] <homepage> <description>\n"
+
+ begin
+- update_eix if !FileUtils.uptodate?("/var/cache/eix", %w{/usr/bin/eix /usr/portage/metadata/timestamp})
++ eix_file = File.directory?("/var/cache/eix") ? "/var/cache/eix/portage.eix" : "/var/cache/eix"
++ update_eix if !FileUtils.uptodate?(eix_file, %w{/usr/bin/eix /usr/portage/metadata/timestamp})
+
+ search_output = nil
+ Puppet::Util::Execution.withenv :LASTVERSION => version_format do
+@@ -81,7 +82,8 @@
+ search_value = package_name
+
+ begin
+- update_eix if !FileUtils.uptodate?("/var/cache/eix", %w{/usr/bin/eix /usr/portage/metadata/timestamp})
++ eix_file = File.directory?("/var/cache/eix") ? "/var/cache/eix/portage.eix" : "/var/cache/eix"
++ update_eix if !FileUtils.uptodate?(eix_file, %w{/usr/bin/eix /usr/portage/metadata/timestamp})
+
+ search_output = nil
+ Puppet::Util::Execution.withenv :LASTVERSION => version_format do
diff --git a/app-admin/puppet/puppet-2.7.18-r1.ebuild b/app-admin/puppet/puppet-2.7.18-r1.ebuild
new file mode 100644
index 000000000000..0877b347f2b1
--- /dev/null
+++ b/app-admin/puppet/puppet-2.7.18-r1.ebuild
@@ -0,0 +1,182 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-admin/puppet/puppet-2.7.18-r1.ebuild,v 1.1 2012/09/10 15:38:59 prometheanfire Exp $
+
+EAPI="4"
+# ruby19: dev-ruby/ruby-ldap has no ruby19
+#USE_RUBY="ruby18 ruby19 ree18"
+USE_RUBY="ruby18"
+
+RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_TASK_TEST="test"
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG* README*"
+
+inherit elisp-common xemacs-elisp-common eutils ruby-fakegem user
+
+DESCRIPTION="A system automation and configuration management software"
+HOMEPAGE="http://puppetlabs.com/"
+
+LICENSE="Apache-2.0 GPL-2"
+SLOT="0"
+IUSE="augeas diff doc emacs ldap minimal rrdtool selinux shadow sqlite3 vim-syntax xemacs"
+KEYWORDS="~amd64 ~hppa ~ppc ~sparc ~x86"
+
+ruby_add_rdepend "
+ >=dev-ruby/facter-1.5.6
+ augeas? ( dev-ruby/ruby-augeas )
+ diff? ( dev-ruby/diff-lcs )
+ doc? ( dev-ruby/rdoc )
+ ldap? ( dev-ruby/ruby-ldap )
+ shadow? ( dev-ruby/ruby-shadow )
+ sqlite3? ( dev-ruby/sqlite3 )
+ virtual/ruby-ssl"
+# couchdb? ( dev-ruby/couchrest )
+# mongrel? ( www-servers/mongrel )
+# rack? ( >=dev-ruby/rack-1 )
+# rails? (
+# dev-ruby/rails
+# >=dev-ruby/activerecord-2.1
+# )
+# stomp? ( dev-ruby/stomp )
+
+DEPEND="${DEPEND}
+ emacs? ( virtual/emacs )
+ xemacs? ( app-editors/xemacs )
+ selinux? ( sec-policy/selinux-puppet )"
+RDEPEND="${RDEPEND}
+ emacs? ( virtual/emacs )
+ xemacs? ( app-editors/xemacs )
+ rrdtool? ( >=net-analyzer/rrdtool-1.2.23[ruby] )
+ selinux? (
+ sys-libs/libselinux[ruby]
+ sec-policy/selinux-puppet
+ )
+ >=app-portage/eix-0.18.0"
+
+SITEFILE="50${PN}-mode-gentoo.el"
+
+RUBY_PATCHES=(
+ "${P}-eix_fix.patch"
+)
+
+pkg_setup() {
+ enewgroup puppet
+ enewuser puppet -1 -1 /var/lib/puppet puppet
+}
+
+all_ruby_compile() {
+ all_fakegem_compile
+
+ if use emacs ; then
+ elisp-compile ext/emacs/puppet-mode.el
+ fi
+
+ if use xemacs ; then
+ # Create a separate version for xemacs to be able to install
+ # emacs and xemacs in parallel.
+ mkdir ext/xemacs
+ cp ext/emacs/* ext/xemacs/
+ xemacs-elisp-compile ext/xemacs/puppet-mode.el
+ fi
+}
+
+each_fakegem_install() {
+ ${RUBY} install.rb --destdir="${D}" install
+}
+
+all_ruby_install() {
+ all_fakegem_install
+
+ newinitd "${FILESDIR}"/puppet.init puppet
+ doconfd conf/gentoo/conf.d/puppet
+
+ # Initial configuration files
+ insinto /etc/puppet
+ # Bug #338439
+ #doins conf/gentoo/puppet/*
+ doins conf/redhat/puppet.conf
+
+ # Location of log and data files
+ keepdir /var/{run,log}/puppet
+ fowners -R puppet:puppet /var/{run,log}/puppet
+
+ if use minimal ; then
+ rm "${ED}/usr/bin/puppetmasterd"
+ rm "${ED}/etc/puppet/auth.conf"
+ else
+ newinitd "${FILESDIR}"/puppetmaster-2.7.6.init puppetmaster
+ newconfd "${FILESDIR}"/puppetmaster-2.7.6.confd puppetmaster
+
+ insinto /etc/puppet
+ doins conf/redhat/fileserver.conf
+
+ keepdir /etc/puppet/manifests
+ keepdir /etc/puppet/modules
+
+ keepdir /var/lib/puppet/ssl
+ keepdir /var/lib/puppet/facts
+ keepdir /var/lib/puppet/files
+ fowners -R puppet:puppet /var/{run,log,lib}/puppet
+ fi
+
+ if use emacs ; then
+ elisp-install ${PN} ext/emacs/puppet-mode.el*
+ elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+
+ if use xemacs ; then
+ xemacs-elisp-install ${PN} ext/xemacs/puppet-mode.el*
+ xemacs-elisp-site-file-install "${FILESDIR}/${SITEFILE}"
+ fi
+
+ if use ldap ; then
+ insinto /etc/openldap/schema; doins ext/ldap/puppet.schema
+ fi
+
+ if use vim-syntax ; then
+ insinto /usr/share/vim/vimfiles/ftdetect; doins ext/vim/ftdetect/puppet.vim
+ insinto /usr/share/vim/vimfiles/syntax; doins ext/vim/syntax/puppet.vim
+ fi
+
+ # ext and examples files
+ for f in $(find ext examples -type f) ; do
+ docinto "$(dirname ${f})"; dodoc "${f}"
+ done
+ docinto conf; dodoc conf/namespaceauth.conf
+}
+
+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 "${EPREFIX}/etc/puppet/puppetd.conf" -o \
+ -f "${EPREFIX}/etc/puppet/puppetmaster.conf" -o \
+ -f "${EPREFIX}/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
+ use xemacs && xemacs-elisp-site-regen
+}
+
+pkg_postrm() {
+ use emacs && elisp-site-regen
+ use xemacs && xemacs-elisp-site-regen
+}