diff options
author | Matthew Thode <prometheanfire@gentoo.org> | 2018-02-06 11:01:49 -0600 |
---|---|---|
committer | Matthew Thode <prometheanfire@gentoo.org> | 2018-02-06 11:05:28 -0600 |
commit | b3899e9de8dd54d1bbf75b86d43efe2a5cae788d (patch) | |
tree | b03d1bc9978255175a3478ea3419efee043894d5 /app-admin/puppet | |
parent | dev-ruby/facter: 3.9.4 bup (diff) | |
download | gentoo-b3899e9de8dd54d1bbf75b86d43efe2a5cae788d.tar.gz gentoo-b3899e9de8dd54d1bbf75b86d43efe2a5cae788d.tar.bz2 gentoo-b3899e9de8dd54d1bbf75b86d43efe2a5cae788d.zip |
app-admin/puppet: 5.3.4 and 4.10.10 bup
Package-Manager: Portage-2.3.19, Repoman-2.3.6
Diffstat (limited to 'app-admin/puppet')
-rw-r--r-- | app-admin/puppet/Manifest | 2 | ||||
-rw-r--r-- | app-admin/puppet/puppet-4.10.10.ebuild | 199 | ||||
-rw-r--r-- | app-admin/puppet/puppet-5.3.4.ebuild | 147 |
3 files changed, 348 insertions, 0 deletions
diff --git a/app-admin/puppet/Manifest b/app-admin/puppet/Manifest index 0f9d3ec3436e..debadaeb92de 100644 --- a/app-admin/puppet/Manifest +++ b/app-admin/puppet/Manifest @@ -1,4 +1,6 @@ +DIST puppet-4.10.10.tar.gz 2995864 BLAKE2B c01e6a7529d70a4481e64b4119cfd9d05e79d655ef17495a98e2ab800ea527ef09f234782e7362b25bf1b1ed11d7c2a48e40815ac6dccc5a2d460886beb604e7 SHA512 e517ee349ead56932c9ff54f910d10842c1cd6b6f28673223a65fb72334662d4eabeccc1c7c7603e17aa712c356edbc27fe53d6e7dd7ba042cc0616d0076d755 DIST puppet-4.10.8.tar.gz 2979824 BLAKE2B 802b65d48ff7d8303e3cc847a9f753a5e19c0ada6ee02dc1fc9c748da8d69462c34bdfeddeedf0057179ff1133665439c41e970c41ca1728463292ef26e996ab SHA512 9f3384702dd4938e1e00aeceb0745b760de32000e0dd59d5b846d1120a46026499176a51d0409e3a0ae414efc0872854c204d1941385695a4c57c209fbd1f28d DIST puppet-4.10.9.tar.gz 2981668 BLAKE2B 315c39953c2ba70b547fd7a393c7be0bd3c387bd52e3f383a932ebc03f9d96c17d988d53b15bcb8d08bc22ebcaf1c9c5cff00f9c34d730e231417565aad5311f SHA512 0ac70f716a602b15d28504cc594c5a0d4f8005083de6751c682dc9180feca68148d942353a63e16aaa2e783e6ebe90b8f77b0b033c671a5134bcbcdff36a3204 DIST puppet-5.1.0.tar.gz 2734018 BLAKE2B d4169fee328710b7685de2606196de68e21ca31f9a9945bdd84255f5185fd2d95c6543a7b88b5130f1f01e60e04294664de71a8ccd1319c2e0bebf4d031e6225 SHA512 07019f40c5b7f18243f13abb899c2ff2ea4b135895ab98c13da3df50f8e720e2759f8eb39e349ff04286da7de504cffea3df8acf9711e8591b25001a2a3f9c15 DIST puppet-5.3.3.tar.gz 2843386 BLAKE2B dc96282ff2d6bb6719362cd9b2e856537019bd888af8ba897e37fc97584cd76c1d4179b3b629d2bb20d1dade0f84ec88ab41dd0d66cccd2c850a87f96ccf4b65 SHA512 b5bb9ac4059855c7cac624ea0fdc2c3366cea82bf07bee195a179a0a709fa53e7fffe883e581c1e07a64705a638b156288301227f7334226ddc401a9bf770afe +DIST puppet-5.3.4.tar.gz 2889645 BLAKE2B f1f4e2d9dfe457f89aa7d99724eaa9368ea50027747e2506b5cbfa176c1a9060bf87ce8c037b78f3c86c2e2974087f9ab4fc76cb7374f1a348ff410e9cfa83e1 SHA512 f24008651be15cf5c915f7a03dc0319eb2d076ddfb06c44fd846421fe29baba27ea43b29134077e1dc7c14a48b44104dcaaefe73bfdb00d7667c1c25a1b871fd diff --git a/app-admin/puppet/puppet-4.10.10.ebuild b/app-admin/puppet/puppet-4.10.10.ebuild new file mode 100644 index 000000000000..c404e787afc1 --- /dev/null +++ b/app-admin/puppet/puppet-4.10.10.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +USE_RUBY="ruby22 ruby23 ruby24" + +#RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_EXTRAINSTALL="locales" + +inherit xemacs-elisp-common eutils user ruby-fakegem versionator + +DESCRIPTION="A system automation and configuration management software." +HOMEPAGE="http://puppetlabs.com/" +SRC_URI="http://downloads.puppetlabs.com/puppet/${P}.tar.gz" + +LICENSE="Apache-2.0 GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86" +IUSE="augeas diff doc emacs experimental ldap rrdtool selinux shadow sqlite vim-syntax xemacs" +RESTRICT="test" + +ruby_add_rdepend " + >=dev-ruby/gettext-setup-0.10:0 + >=dev-ruby/hiera-2.0 + >=dev-ruby/locale-2.1 + >=dev-ruby/rgen-0.6.5 + dev-ruby/json:= + >=dev-ruby/facter-3.0.0 + augeas? ( dev-ruby/ruby-augeas ) + diff? ( dev-ruby/diff-lcs ) + doc? ( dev-ruby/rdoc ) + ldap? ( dev-ruby/ruby-ldap ) + shadow? ( dev-ruby/ruby-shadow ) + sqlite? ( dev-ruby/sqlite3 ) + virtual/ruby-ssl" + +# ruby_add_bdepend " +# test? ( +# dev-ruby/mocha:0.14 +# =dev-ruby/rack-1* +# dev-ruby/rspec-its +# dev-ruby/rspec-collection_matchers +# >=dev-ruby/vcr-2.9:2 +# >=dev-ruby/webmock-1.24:0 +# )" + +DEPEND+=" ${DEPEND} + xemacs? ( app-editors/xemacs )" +RDEPEND+=" ${RDEPEND} + rrdtool? ( >=net-analyzer/rrdtool-1.2.23[ruby] ) + selinux? ( + sys-libs/libselinux[ruby] + sec-policy/selinux-puppet + ) + vim-syntax? ( >=app-vim/puppet-syntax-3.0.1 ) + >=app-portage/eix-0.18.0" +PDEPEND="emacs? ( >=app-emacs/puppet-mode-0.3-r1 )" + +SITEFILE="50${PN}-mode-gentoo.el" + +pkg_setup() { + enewgroup puppet + enewuser puppet -1 -1 /var/lib/puppet puppet +} + +all_ruby_prepare() { + # Avoid spec that require unpackaged json-schema. + rm spec/lib/matchers/json.rb $( grep -Rl matchers/json spec) || die + + # can't be run within portage. + epatch "${FILESDIR}/puppet-fix-tests-4.7.0.patch" + + # fix systemd path + epatch "${FILESDIR}/puppet-systemd.patch" + + if use experimental; then + epatch "${FILESDIR}/43e2c935252b995134ce353e5e6312cf77aea480.patch" + fi + + # fix compatibility with ruby 2.3.6/2.4.3 webrick + epatch "${FILESDIR}/puppet-4-webrick-ruby.patch" + + # Use working version of mocha + sed -i -e '1igem "mocha", "~>0.14.0"; gem "rack", "~>1.0"' spec/spec_helper.rb || die + + # Avoid specs that can only run in the puppet.git repository. This + # should be narrowed down to the specific specs. + rm spec/integration/parser/compiler_spec.rb || die + + # Avoid failing specs that need further investigation. + sed -i -e '/should resolve external facts/,/^ end/ s:^:#:' \ + spec/integration/indirector/facts/facter_spec.rb || die + sed -i -e "/describe 'cfacter'/,/^ end/ s:^:#:" spec/unit/defaults_spec.rb || die + rm -f spec/unit/indirector/ldap_spec.rb \ + spec/unit/parser/functions/create_resources_spec.rb || die + + # Avoid specs that rely on tools from other OSs + rm -f spec/unit/provider/package/{dnf,tdnf,yum}_spec.rb \ + spec/unit/provider/user/directoryservice_spec.rb || die + + # Avoid specs that depend on hiera-eyaml to avoid circular + # dependencies + rm -f spec/unit/functions/lookup_spec.rb || die + + # Avoid specs that fail due to an unpackaged file + sed -i -e '/when loading pp resource types using auto loading/,/^ end/ s:^:#:' spec/unit/pops/loaders/loaders_spec.rb || die +} + +all_ruby_compile() { + 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_ruby_install() { + each_fakegem_install +# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}" +} + +all_ruby_install() { + all_fakegem_install + + # systemd stuffs + insinto /usr/lib/systemd/system + doins "${WORKDIR}/all/${P}/ext/systemd/puppet.service" + + # tmpfiles stuff + insinto /usr/lib/tmpfiles.d + newins "${FILESDIR}/tmpfiles.d" "puppet.conf" + + # openrc init stuff + newinitd "${FILESDIR}"/puppet.init-4.x puppet + newinitd "${FILESDIR}"/puppetmaster.init-4.x puppetmaster + newconfd "${FILESDIR}"/puppetmaster.confd puppetmaster + + keepdir /etc/puppetlabs/puppet/ssl + + keepdir /var/lib/puppet/facts + keepdir /var/lib/puppet/files + fowners -R puppet:puppet /var/lib/puppet + + fperms 0750 /var/lib/puppet + + fperms 0750 /etc/puppetlabs + fperms 0750 /etc/puppetlabs/puppet + fperms 0750 /etc/puppetlabs/puppet/ssl + fowners -R :puppet /etc/puppetlabs + fowners -R :puppet /var/lib/puppet + + 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 + + # 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 "Portage Puppet module with Gentoo-specific resources:" + elog "http://forge.puppetlabs.com/gentoo/portage" + elog + + local v + for v in ${REPLACING_VERSIONS}; do + if [ "$(get_major_version $v)" = "3" ]; then + elog + elog "If you're upgrading from 3.x then please move everything in /etc/puppet to" + elog "/etc/puppetlabs/puppet" + elog "Also, puppet now uses config directories for modules and manifests." + elog "See https://docs.puppetlabs.com/puppet/4.0/reference/upgrade_agent.html" + elog "and https://docs.puppetlabs.com/puppet/4.0/reference/upgrade_server.html" + elog "for more information." + elog + fi + done + + use xemacs && xemacs-elisp-site-regen +} + +pkg_postrm() { + use xemacs && xemacs-elisp-site-regen +} diff --git a/app-admin/puppet/puppet-5.3.4.ebuild b/app-admin/puppet/puppet-5.3.4.ebuild new file mode 100644 index 000000000000..1f8461b191db --- /dev/null +++ b/app-admin/puppet/puppet-5.3.4.ebuild @@ -0,0 +1,147 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +USE_RUBY="ruby22 ruby23 ruby24" + +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_TASK_DOC="doc:all" + +RUBY_FAKEGEM_EXTRAINSTALL="locales" + +inherit eutils user ruby-fakegem versionator + +DESCRIPTION="A system automation and configuration management software." +HOMEPAGE="http://puppetlabs.com/" +SRC_URI="http://downloads.puppetlabs.com/puppet/${P}.tar.gz" + +LICENSE="Apache-2.0 GPL-2" +SLOT="0" +KEYWORDS="~amd64 ~hppa ~ppc ~x86" +IUSE="augeas diff doc emacs ldap rrdtool selinux shadow sqlite vim-syntax" +RESTRICT="test" + +ruby_add_rdepend " + dev-ruby/hiera + dev-ruby/json:= + >=dev-ruby/facter-3.0.0 + augeas? ( dev-ruby/ruby-augeas ) + diff? ( dev-ruby/diff-lcs ) + doc? ( dev-ruby/rdoc ) + ldap? ( dev-ruby/ruby-ldap ) + shadow? ( dev-ruby/ruby-shadow ) + sqlite? ( dev-ruby/sqlite3 ) + virtual/ruby-ssl + dev-ruby/hocon" + +ruby_add_bdepend " + doc? ( dev-ruby/yard ) + test? ( + dev-ruby/mocha + dev-ruby/rack + dev-ruby/rspec-its + )" +# this should go in the above lists, but isn't because of test deps not being keyworded +# dev-ruby/rspec-collection_matchers + +RDEPEND+=" ${RDEPEND} + rrdtool? ( >=net-analyzer/rrdtool-1.2.23[ruby] ) + selinux? ( + sys-libs/libselinux[ruby] + sec-policy/selinux-puppet + ) + vim-syntax? ( >=app-vim/puppet-syntax-3.0.1 ) + >=app-portage/eix-0.18.0" +PDEPEND="emacs? ( >=app-emacs/puppet-mode-0.3-r1 )" + +pkg_setup() { + enewgroup puppet + enewuser puppet -1 -1 /var/lib/puppet puppet +} + +all_ruby_prepare() { + # Avoid spec that require unpackaged json-schema. + rm spec/lib/matchers/json.rb $( grep -Rl matchers/json spec) || die + + # can't be run within portage. + epatch "${FILESDIR}/puppet-fix-tests-4.7.0.patch" + + # fix systemd path + epatch "${FILESDIR}/puppet-systemd.patch" + + # backport upstream fix for ruby 2.3.6 compatibility + epatch "${FILESDIR}/puppet-4-webrick-ruby.patch" + + # Avoid specs that can only run in the puppet.git repository. This + # should be narrowed down to the specific specs. + rm spec/integration/parser/compiler_spec.rb || die + + # Avoid failing spec that need further investigation. + rm spec/unit/module_tool/metadata_spec.rb || die +} + +each_ruby_install() { + each_fakegem_install +# dosym "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${P}" "/usr/$(get_libdir)/ruby/gems/$(ruby_get_version)/gems/${PN}" +} + +all_ruby_install() { + all_fakegem_install + + # systemd stuffs + insinto /usr/lib/systemd/system + doins "${WORKDIR}/all/${P}/ext/systemd/puppet.service" + + # tmpfiles stuff + insinto /usr/lib/tmpfiles.d + newins "${FILESDIR}/tmpfiles.d" "puppet.conf" + + # openrc init stuff + newinitd "${FILESDIR}"/puppet.init-4.x puppet + newinitd "${FILESDIR}"/puppetmaster.init-4.x puppetmaster + newconfd "${FILESDIR}"/puppetmaster.confd puppetmaster + + keepdir /etc/puppetlabs/puppet/ssl + + keepdir /var/lib/puppet/facts + keepdir /var/lib/puppet/files + fowners -R puppet:puppet /var/lib/puppet + + fperms 0750 /var/lib/puppet + + fperms 0750 /etc/puppetlabs + fperms 0750 /etc/puppetlabs/puppet + fperms 0750 /etc/puppetlabs/puppet/ssl + fowners -R :puppet /etc/puppetlabs + fowners -R :puppet /var/lib/puppet + + if use ldap ; then + insinto /etc/openldap/schema; doins ext/ldap/puppet.schema + 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 "Portage Puppet module with Gentoo-specific resources:" + elog "http://forge.puppetlabs.com/gentoo/portage" + elog + + for v in ${REPLACING_VERSIONS}; do + if [ "$(get_major_version $v)" = "4" ]; then + elog + elog "Please see the following url for the release notes for puppet-5" + elog "https://docs.puppet.com/puppet/5.0/release_notes.html#if-youre-upgrading-from-puppet-4x" + elog + fi + done +} |