Hello community, here is the log from the commit of package rubygem-puppet for openSUSE:Factory checked in at 2016-09-21 18:47:53 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/rubygem-puppet (Old) and /work/SRC/openSUSE:Factory/.rubygem-puppet.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "rubygem-puppet" Changes: -------- --- /work/SRC/openSUSE:Factory/rubygem-puppet/rubygem-puppet.changes 2016-04-22 16:24:38.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.rubygem-puppet.new/rubygem-puppet.changes 2016-09-21 18:47:55.000000000 +0200 @@ -1,0 +2,26 @@ +Tue Aug 16 15:01:32 UTC 2016 - tampak...@opensuse.org + +- set the perms of the unicorn.conf to 644 + +------------------------------------------------------------------- +Wed Aug 3 10:51:14 UTC 2016 - tampak...@opensuse.org + +- Replace the greps with fillup-template to update the sysconfig files. + Fixes properly boo#916005 + +------------------------------------------------------------------- +Fri Jul 29 18:08:33 UTC 2016 - jeng...@inai.de + +- Run fdupes over practically everything that was installed, + fixing "files-duplicate /usr/lib64/ruby/gems/2.2.0/doc/ + /puppet-3.8.7/ri/Puppet/Pops/Types/TypeFactory/any-c.ri" etc. + +------------------------------------------------------------------- +Mon Jul 25 13:08:46 UTC 2016 - tampak...@opensuse.org + +- Update to 3.8.7: + https://docs.puppetlabs.com/puppet/3.8/reference/release_notes.html#puppet-386 + https://docs.puppetlabs.com/puppet/3.8/reference/release_notes.html#puppet-387 +- Add -master-unicorn subpackage with unicorn systemd unit file and config + +------------------------------------------------------------------- Old: ---- puppet-3.8.5.gem New: ---- puppet-3.8.7.gem puppetmaster-unicorn.service rubygem-puppet-rpmlintrc unicorn.conf ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ rubygem-puppet.spec ++++++ --- /var/tmp/diff_new_pack.Jnv2dw/_old 2016-09-21 18:47:57.000000000 +0200 +++ /var/tmp/diff_new_pack.Jnv2dw/_new 2016-09-21 18:47:57.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package rubygem-puppet # -# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -24,7 +24,7 @@ # Name: rubygem-puppet -Version: 3.8.5 +Version: 3.8.7 Release: 0 %define mod_name puppet %define mod_full_name %{mod_name}-%{version} @@ -43,6 +43,7 @@ BuildRequires: fdupes Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd +Requires(pre): %fillup_prereq Requires: tar %if 0%{?suse_version} >= 1210 BuildRequires: systemd @@ -62,7 +63,10 @@ Source: http://rubygems.org/gems/%{mod_full_name}.gem Source1: puppetmaster.fw Source2: puppet.fw -Source3: gem2rpm.yml +Source3: puppetmaster-unicorn.service +Source4: unicorn.conf +Source5: %{name}-rpmlintrc +Source6: gem2rpm.yml # MANUAL Patch0: %{mod_name}-zypper-lu.patch Patch1: %{mod_name}-systemd-default.patch @@ -88,6 +92,7 @@ %patch2 -p1 %patch3 -p1 %patch4 -p1 +find -type f -print0 | xargs -0 touch -r %{S:0} %gem_build %build @@ -108,9 +113,17 @@ for config_file in auth fileserver tagmail ; do install -m0644 $gemdir/conf/$config_file.conf %{buildroot}%{_sysconfdir}/%{mod_name}/$config_file.conf done +install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/%{mod_name}/unicorn.conf +mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates +cp $gemdir/ext/redhat/client.sysconfig %{buildroot}/%{_localstatedir}/adm/fillup-templates/sysconfig.puppet +cp $gemdir/ext/redhat/server.sysconfig %{buildroot}/%{_localstatedir}/adm/fillup-templates/sysconfig.puppetmaster %if 0%{?has_systemd} ln -sf service %{buildroot}/%{_sbindir}/rcpuppet ln -sf service %{buildroot}/%{_sbindir}/rcpuppetmaster +ln -sf service %{buildroot}/%{_sbindir}/rcpuppetmaster-unicorn +install -m 644 $gemdir/ext/systemd/puppet.service %{buildroot}%{_unitdir}/system/puppet.service +install -m 644 $gemdir/ext/systemd/puppetmaster.service %{buildroot}%{_unitdir}/system/puppetmaster.service +install -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/system/puppetmaster-unicorn.service %else mkdir -p %{buildroot}%_initddir # fix old port arg @@ -123,9 +136,6 @@ install -m 644 %{SOURCE1} %{buildroot}/%{_fwdefdir}/puppetmasterd install -m 644 %{SOURCE2} %{buildroot}/%{_fwdefdir}/puppet -# Latest git calls the service for agent puppet again -install -m 644 $gemdir/ext/systemd/puppet.service %{buildroot}%{_unitdir}/system/puppet.service -install -m 644 $gemdir/ext/systemd/puppetmaster.service %{buildroot}%{_unitdir}/system/puppetmaster.service for mandirX in $(ls $gemdir/man); do for manpage in $(ls $gemdir/man/$mandirX); do @@ -133,7 +143,7 @@ done done -%fdupes -s %{buildroot}%{_mandir} +%fdupes %{buildroot}%{_prefix} # Install vim syntax files install -Dp -m0644 $gemdir/ext/vim/ftdetect/%{mod_name}.vim %{buildroot}%{vim_data_dir}/ftdetect/%{mod_name}.vim @@ -163,12 +173,12 @@ %config(noreplace) %{_fwdefdir}/%{mod_name} %{_mandir}/man?/* %{_sbindir}/rcpuppet +%if 0%{?has_systemd} %{_unitdir}/system/%{mod_name}.service -%if 0%{?suse_version} == 1110 +%else %_initddir/%{mod_name} -%dir /usr/lib/systemd -%dir /usr/lib/systemd/system %endif +%{_localstatedir}/adm/fillup-templates/sysconfig.puppet %pre getent group puppet >/dev/null || /usr/sbin/groupadd -r puppet @@ -180,29 +190,21 @@ %preun %if 0%{?has_systemd} %service_del_preun puppet.service -%endif - -%if 0%{?suse_version} == 1110 +%else %stop_on_removal %{name} %endif %postun %if 0%{?has_systemd} %service_del_postun puppet.service -%endif - -%if 0%{?suse_version} == 1110 +%else %insserv_cleanup %endif %post +%fillup_only -n puppetmaster %if 0%{?has_systemd} %service_add_post puppet.service -%else -# Compatibility with old setups -if [ -f /etc/sysconfig/puppet ] && [ -z "`grep 'PUPPET_EXTRA_OPTS="' /etc/sysconfig/puppet | grep ' --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG}"'`" ]; then - echo 'PUPPET_EXTRA_OPTS=" --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG} ${PUPPET_EXTRA_OPTS}"' >> /etc/sysconfig/puppet -fi %endif %package master @@ -212,11 +214,11 @@ Obsoletes: puppet-server <= 3.7.3 Provides: puppet-master = %{version}-%{release} Provides: puppetmaster = %{version}-%{release} -%if 0%{?suse_version} > 1210 +%if 0%{?has_systemd} %{?systemd_requires} %endif -# Requires: rubygem-puppet = 3.8.4 +# Requires: rubygem-puppet = 3.8.7 %description master Puppet lets you centrally manage every important aspect of your system using a cross-platform specification language that manages all the @@ -231,12 +233,12 @@ %config(noreplace) %{_sysconfdir}/%{mod_name}/auth.conf %config(noreplace) %{_sysconfdir}/%{mod_name}/fileserver.conf %config(noreplace) %{_sysconfdir}/%{mod_name}/tagmail.conf +%if 0%{?has_systemd} %{_unitdir}/system/puppetmaster.service -%if 0%{?suse_version} == 1110 +%else %_initddir/puppetmaster -%dir /usr/lib/systemd -%dir /usr/lib/systemd/system %endif +%{_localstatedir}/adm/fillup-templates/sysconfig.puppetmaster %pretrans master if [ -x /usr/bin/puppet ] && [ "`/usr/bin/puppet --version | grep '^3.3.1'`" ]; then @@ -254,27 +256,20 @@ %preun master %if 0%{?has_systemd} %service_del_preun puppetmaster.service -%endif - -%if 0%{?suse_version} == 1110 +%else %stop_on_removal %{name} %endif %postun master %if 0%{?has_systemd} %service_del_postun puppetmaster.service -%endif - -%if 0%{?suse_version} == 1110 +%else %insserv_cleanup %endif %post master # Compatibility with old setups -if [ -f /etc/sysconfig/puppetmasterd ] && [ -z "`grep 'PUPPETMASTER_EXTRA_OPTS="' /etc/sysconfig/puppetmasterd | grep ' --manifest=${PUPPETMASTER_MANIFEST} --masterport=${PUPPETMASTER_PORTS[0]} --logdest ${PUPPETMASTER_LOG}"'`" ]; then - echo 'PUPPETMASTER_EXTRA_OPTS=" --manifest=${PUPPETMASTER_MANIFEST} --masterport=${PUPPETMASTER_PORTS[0]} --logdest ${PUPPETMASTER_LOG} ${PUPPETMASTER_EXTRA_OPTS}' >> /etc/sysconfig/puppet -fi - +%fillup_only %if 0%{?has_systemd} %service_add_post puppetmaster.service %endif @@ -289,6 +284,49 @@ fi +%package master-unicorn +Summary: Unicorn files for puppetmaster +Group: Productivity/Networking/System +Requires: rubygem-puppet-master = %{version} +Requires: rubygem(unicorn) +BuildArch: noarch +%if 0%{?has_systemd} > 1210 +%{?systemd_requires} +%endif + +# Requires: rubygem-puppet = 3.8.7 +%description master-unicorn +Unicorn config and systemd files for puppetmaster + +%files master-unicorn +%defattr(-,root,root,-) +%config(noreplace) %{_sysconfdir}/%{mod_name}/unicorn.conf +%if 0%{?has_systemd} +%{_sbindir}/rcpuppetmaster-unicorn +%{_unitdir}/system/puppetmaster-unicorn.service +%endif + +%pre master-unicorn +%if 0%{?has_systemd} +%service_add_pre puppetmaster-unicorn.service +%endif + +%preun master-unicorn +%if 0%{?has_systemd} +%service_del_preun puppetmaster-unicorn.service +%endif + +%postun master-unicorn +%if 0%{?has_systemd} +%service_del_postun puppetmaster-unicorn.service +%endif + +%post master-unicorn +%if 0%{?has_systemd} +%service_add_post puppetmaster-unicorn.service +%endif + + %package vim Summary: Vim syntax files for Puppet manifests Group: Productivity/Text/Editors @@ -300,7 +338,7 @@ Provides: puppet-vim = %{version}-%{release} Obsoletes: puppet-vim < %{version}-%{release} -# Requires: rubygem-puppet = 3.8.4 +# Requires: rubygem-puppet = 3.8.7 %description vim Vim ftdetect and syntax files for Puppet manifests @@ -323,7 +361,7 @@ Supplements: packageand(emacs:%{name}) Provides: puppet-emacs = %{version}-%{release} -# Requires: rubygem-puppet = 3.8.4 +# Requires: rubygem-puppet = 3.8.7 %description emacs Emacs syntax files for Puppet manifests @@ -331,7 +369,7 @@ %defattr(-,root,root,-) # emacs-mode files %if 0%{?suse_version} <= 1230 -%{_datadir}/emacs/site-lisp/site-start.d +%dir %{_datadir}/emacs/site-lisp/site-start.d %endif %{_datadir}/emacs/site-lisp/puppet-mode.el %{_datadir}/emacs/site-lisp/site-start.d/puppet-mode-init.el ++++++ gem2rpm.yml ++++++ --- /var/tmp/diff_new_pack.Jnv2dw/_old 2016-09-21 18:47:57.000000000 +0200 +++ /var/tmp/diff_new_pack.Jnv2dw/_new 2016-09-21 18:47:57.000000000 +0200 @@ -2,6 +2,9 @@ :sources: - puppetmaster.fw - puppet.fw + - puppetmaster-unicorn.service + - unicorn.conf + - '%{name}-rpmlintrc' :summary: A network tool for managing many disparate systems :description: |- Puppet lets you centrally manage every important aspect of your system @@ -14,6 +17,7 @@ '%{mod_name}-systemd-default.patch': -p1 '%{mod_name}-ruby-2_2.patch': -p1 '%{mod_name}-systemd-default-on-new-suse.patch': -p1 + '%{mod_name}-non_ASCII_user_comment.patch': -p1 :main: :preamble: |- Provides: %{mod_name} = %{version}-%{release} @@ -39,6 +43,7 @@ BuildRequires: fdupes Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd + Requires(pre): %fillup_prereq Requires: tar %if 0%{?suse_version} >= 1210 BuildRequires: systemd @@ -58,9 +63,17 @@ for config_file in auth fileserver tagmail ; do install -m0644 $gemdir/conf/$config_file.conf %{buildroot}%{_sysconfdir}/%{mod_name}/$config_file.conf done + install -m 644 %{SOURCE4} %{buildroot}%{_sysconfdir}/%{mod_name}/unicorn.conf + mkdir -p %{buildroot}%{_localstatedir}/adm/fillup-templates + cp $gemdir/ext/redhat/client.sysconfig %{buildroot}/%{_localstatedir}/adm/fillup-templates/sysconfig.puppet + cp $gemdir/ext/redhat/server.sysconfig %{buildroot}/%{_localstatedir}/adm/fillup-templates/sysconfig.puppetmaster %if 0%{?has_systemd} ln -sf service %{buildroot}/%{_sbindir}/rcpuppet ln -sf service %{buildroot}/%{_sbindir}/rcpuppetmaster + ln -sf service %{buildroot}/%{_sbindir}/rcpuppetmaster-unicorn + install -m 644 $gemdir/ext/systemd/puppet.service %{buildroot}%{_unitdir}/system/puppet.service + install -m 644 $gemdir/ext/systemd/puppetmaster.service %{buildroot}%{_unitdir}/system/puppetmaster.service + install -m 644 %{SOURCE3} %{buildroot}%{_unitdir}/system/puppetmaster-unicorn.service %else mkdir -p %{buildroot}%_initddir # fix old port arg @@ -73,9 +86,6 @@ install -m 644 %{SOURCE1} %{buildroot}/%{_fwdefdir}/puppetmasterd install -m 644 %{SOURCE2} %{buildroot}/%{_fwdefdir}/puppet - # Latest git calls the service for agent puppet again - install -m 644 $gemdir/ext/systemd/puppet.service %{buildroot}%{_unitdir}/system/puppet.service - install -m 644 $gemdir/ext/systemd/puppetmaster.service %{buildroot}%{_unitdir}/system/puppetmaster.service for mandirX in $(ls $gemdir/man); do for manpage in $(ls $gemdir/man/$mandirX); do @@ -83,7 +93,7 @@ done done - %fdupes -s %{buildroot}%{_mandir} + %fdupes %{buildroot}%{_prefix} # Install vim syntax files install -Dp -m0644 $gemdir/ext/vim/ftdetect/%{mod_name}.vim %{buildroot}%{vim_data_dir}/ftdetect/%{mod_name}.vim @@ -111,27 +121,19 @@ :preun: |- %if 0%{?has_systemd} %service_del_preun puppet.service - %endif - - %if 0%{?suse_version} == 1110 + %else %stop_on_removal %{name} %endif :postun: |- %if 0%{?has_systemd} %service_del_postun puppet.service - %endif - - %if 0%{?suse_version} == 1110 + %else %insserv_cleanup %endif :post: |- + %fillup_only -n puppetmaster %if 0%{?has_systemd} %service_add_post puppet.service - %else - # Compatibility with old setups - if [ -f /etc/sysconfig/puppet ] && [ -z "`grep 'PUPPET_EXTRA_OPTS="' /etc/sysconfig/puppet | grep ' --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG}"'`" ]; then - echo 'PUPPET_EXTRA_OPTS=" --server=${PUPPET_SERVER} --masterport=${PUPPET_PORT} --logdest=${PUPPET_LOG} ${PUPPET_EXTRA_OPTS}"' >> /etc/sysconfig/puppet - fi %endif :filelist: |- %attr(0750,%{mod_name},%{mod_name}) %dir %{_localstatedir}/lib/%{mod_name} @@ -141,12 +143,12 @@ %config(noreplace) %{_fwdefdir}/%{mod_name} %{_mandir}/man?/* %{_sbindir}/rcpuppet + %if 0%{?has_systemd} %{_unitdir}/system/%{mod_name}.service - %if 0%{?suse_version} == 1110 + %else %_initddir/%{mod_name} - %dir /usr/lib/systemd - %dir /usr/lib/systemd/system %endif + %{_localstatedir}/adm/fillup-templates/sysconfig.puppet :custom_pkgs: :master: :preamble: |- @@ -156,7 +158,7 @@ Obsoletes: puppet-server <= 3.7.3 Provides: puppet-master = %{version}-%{release} Provides: puppetmaster = %{version}-%{release} - %if 0%{?suse_version} > 1210 + %if 0%{?has_systemd} %{?systemd_requires} %endif :description: |- @@ -180,25 +182,18 @@ :preun: |- %if 0%{?has_systemd} %service_del_preun puppetmaster.service - %endif - - %if 0%{?suse_version} == 1110 + %else %stop_on_removal %{name} %endif :postun: |- %if 0%{?has_systemd} %service_del_postun puppetmaster.service - %endif - - %if 0%{?suse_version} == 1110 + %else %insserv_cleanup %endif :post: |- # Compatibility with old setups - if [ -f /etc/sysconfig/puppetmasterd ] && [ -z "`grep 'PUPPETMASTER_EXTRA_OPTS="' /etc/sysconfig/puppetmasterd | grep ' --manifest=${PUPPETMASTER_MANIFEST} --masterport=${PUPPETMASTER_PORTS[0]} --logdest ${PUPPETMASTER_LOG}"'`" ]; then - echo 'PUPPETMASTER_EXTRA_OPTS=" --manifest=${PUPPETMASTER_MANIFEST} --masterport=${PUPPETMASTER_PORTS[0]} --logdest ${PUPPETMASTER_LOG} ${PUPPETMASTER_EXTRA_OPTS}' >> /etc/sysconfig/puppet - fi - + %fillup_only %if 0%{?has_systemd} %service_add_post puppetmaster.service %endif @@ -217,11 +212,46 @@ %config(noreplace) %{_sysconfdir}/%{mod_name}/auth.conf %config(noreplace) %{_sysconfdir}/%{mod_name}/fileserver.conf %config(noreplace) %{_sysconfdir}/%{mod_name}/tagmail.conf + %if 0%{?has_systemd} %{_unitdir}/system/puppetmaster.service - %if 0%{?suse_version} == 1110 + %else %_initddir/puppetmaster - %dir /usr/lib/systemd - %dir /usr/lib/systemd/system + %endif + %{_localstatedir}/adm/fillup-templates/sysconfig.puppetmaster + :master-unicorn: + :preamble: |- + Summary: Unicorn files for puppetmaster + Group: Productivity/Networking/System + Requires: rubygem-puppet-master = %{version} + Requires: rubygem(unicorn) + BuildArch: noarch + %if 0%{?has_systemd} > 1210 + %{?systemd_requires} + %endif + :description: |- + Unicorn config and systemd files for puppetmaster + :scripts: + :pre: |- + %if 0%{?has_systemd} + %service_add_pre puppetmaster-unicorn.service + %endif + :preun: |- + %if 0%{?has_systemd} + %service_del_preun puppetmaster-unicorn.service + %endif + :postun: |- + %if 0%{?has_systemd} + %service_del_postun puppetmaster-unicorn.service + %endif + :post: |- + %if 0%{?has_systemd} + %service_add_post puppetmaster-unicorn.service + %endif + :filelist: |- + %config(noreplace) %{_sysconfdir}/%{mod_name}/unicorn.conf + %if 0%{?has_systemd} + %{_sbindir}/rcpuppetmaster-unicorn + %{_unitdir}/system/puppetmaster-unicorn.service %endif :vim: :preamble: |- @@ -255,7 +285,7 @@ :filelist: |- # emacs-mode files %if 0%{?suse_version} <= 1230 - %{_datadir}/emacs/site-lisp/site-start.d + %dir %{_datadir}/emacs/site-lisp/site-start.d %endif %{_datadir}/emacs/site-lisp/puppet-mode.el %{_datadir}/emacs/site-lisp/site-start.d/puppet-mode-init.el ++++++ puppet-3.8.5.gem -> puppet-3.8.7.gem ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ext/build_defaults.yaml new/ext/build_defaults.yaml --- old/ext/build_defaults.yaml 1970-01-01 01:00:00.000000000 +0100 +++ new/ext/build_defaults.yaml 1970-01-01 01:00:00.000000000 +0100 @@ -26,8 +26,8 @@ repo: 'git://github.com/puppetlabs/hiera.git' sys: ref: - x86: 'refs/tags/1.9.3-p551.8' - x64: 'refs/tags/2.0.0.11-x64' + x86: 'refs/tags/1.9.3-p551.10' + x64: 'refs/tags/2.0.0.13-x64' repo: 'git://github.com/puppetlabs/puppet-win32-ruby.git' apt_signing_server: 'apt.puppetlabs.com' apt_repo_url: 'http://apt.puppetlabs.com' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ext/nagios/check_puppet.rb new/ext/nagios/check_puppet.rb --- old/ext/nagios/check_puppet.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/ext/nagios/check_puppet.rb 1970-01-01 01:00:00.000000000 +0100 @@ -27,17 +27,17 @@ o.on( "-s", "--statefile=statefile", String, "The state file", - "Default: #{OPTIONS[:statefile]}") { |OPTIONS[:statefile]| } + "Default: #{OPTIONS[:statefile]}") { |op| OPTIONS[:statefile] = op } o.on( "-p", "--process=processname", String, "The process to check", - "Default: #{OPTIONS[:process]}") { |OPTIONS[:process]| } + "Default: #{OPTIONS[:process]}") { |op| OPTIONS[:process] = op } o.on( "-i", "--interval=value", Integer, - "Default: #{OPTIONS[:interval]} minutes") { |OPTIONS[:interval]| } + "Default: #{OPTIONS[:interval]} minutes") { |op| OPTIONS[:interval] = op } o.separator "" o.on_tail("-h", "--help", "Show this help message.") do diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ext/puppet-nm-dispatcher new/ext/puppet-nm-dispatcher --- old/ext/puppet-nm-dispatcher 1970-01-01 01:00:00.000000000 +0100 +++ new/ext/puppet-nm-dispatcher 1970-01-01 01:00:00.000000000 +0100 @@ -1,13 +0,0 @@ -#!/bin/bash -# -# Restart puppet on network changes to pickup changes to /etc/resolv.conf -# -# https://projects.puppetlabs.com/issues/2776 -# https://bugzilla.redhat.com/532085 - - -if [ -f "/bin/systemctl" ] ; then - [[ $2 =~ ^(up|down)$ ]] && /bin/systemctl try-restart puppet.service || : -else - [[ $2 =~ ^(up|down)$ ]] && /sbin/service puppet condrestart || : -fi diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ext/redhat/puppet.spec.erb new/ext/redhat/puppet.spec.erb --- old/ext/redhat/puppet.spec.erb 1970-01-01 01:00:00.000000000 +0100 +++ new/ext/redhat/puppet.spec.erb 1970-01-01 01:00:00.000000000 +0100 @@ -181,22 +181,12 @@ # Create puppet modules directory for puppet module tool mkdir -p %{buildroot}%{_sysconfdir}/%{name}/modules - -# Install a NetworkManager dispatcher script to pickup changes to -# # /etc/resolv.conf and such (https://bugzilla.redhat.com/532085). -mkdir -p %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d -cp -pr ext/puppet-nm-dispatcher \ - %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d/98-%{name} - %files %defattr(-, root, root, 0755) %doc LICENSE README.md examples %{_bindir}/puppet %{_bindir}/extlookup2hiera %{puppet_libdir}/* -%dir %{_sysconfdir}/NetworkManager -%dir %{_sysconfdir}/NetworkManager/dispatcher.d -%{_sysconfdir}/NetworkManager/dispatcher.d/98-puppet %if 0%{?_with_systemd} %{_unitdir}/puppet.service %{_unitdir}/puppetagent.service diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/ext/systemd/puppet.service new/ext/systemd/puppet.service --- old/ext/systemd/puppet.service 1970-01-01 01:00:00.000000000 +0100 +++ new/ext/systemd/puppet.service 1970-01-01 01:00:00.000000000 +0100 @@ -7,6 +7,7 @@ EnvironmentFile=-/etc/sysconfig/puppetagent EnvironmentFile=-/etc/sysconfig/puppet ExecStart=/usr/bin/puppet agent $PUPPET_EXTRA_OPTS --no-daemonize +ExecReload=/bin/kill -HUP $MAINPID KillMode=process [Install] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/module_tool/tar/mini.rb new/lib/puppet/module_tool/tar/mini.rb --- old/lib/puppet/module_tool/tar/mini.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/module_tool/tar/mini.rb 1970-01-01 01:00:00.000000000 +0100 @@ -31,7 +31,7 @@ Archive::Tar::Minitar.open(tarfile).collect do |entry| flag = entry.typeflag if flag.nil? || flag =~ /[[:digit:]]/ && (0..7).include?(flag.to_i) - entry.name + entry.full_name else Puppet.debug "Invalid tar flag '#{flag}' will not be extracted: #{entry.name}" next diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/pops/evaluator/runtime3_support.rb new/lib/puppet/pops/evaluator/runtime3_support.rb --- old/lib/puppet/pops/evaluator/runtime3_support.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/pops/evaluator/runtime3_support.rb 1970-01-01 01:00:00.000000000 +0100 @@ -304,6 +304,15 @@ # a proper Issue. Now the result is "Error while evaluating a Resource Statement" with the message # from the raised exception. (It may be good enough). + + # In 3.x scope does not resolve classes as absolute names. + # In 4.x it does. This comment, and the conditional logic in the if below + # should be removed when merged to 4.x + # + if type_name == CLASS_STRING + resource_titles = resource_titles.map {|s| s.index('::') != 0 ? "::#{s}" : s } + end + # resolve in scope. fully_qualified_type, resource_titles = scope.resolve_type_and_titles(type_name, resource_titles) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/pops/issues.rb new/lib/puppet/pops/issues.rb --- old/lib/puppet/pops/issues.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/pops/issues.rb 1970-01-01 01:00:00.000000000 +0100 @@ -73,19 +73,30 @@ instance_eval &block end - # Returns the label provider given as a key in the hash passed to #format. - # If given an argument, calls #label on the label provider (caller would otherwise have to - # call label.label(it) + # Obtains the label provider given as a key `:label` in the hash passed to #format. The label provider is + # return if no arguments are given. If given an argument, returns the result of calling #label on the label + # provider. # - def label(it = nil) - raise "Label provider key :label must be set to produce the text of the message!" unless @data[:label] - it.nil? ? @data[:label] : @data[:label].label(it) + # @param args [Object] one object to obtain a label for or zero arguments to obtain the label provider + # @return [Puppet::Pops::LabelProvider,String] the label provider or label depending on if an argument is given or not + # @raise [Puppet::Error] if no label provider is found + def label(*args) + args.empty? ? label_provider : label_provider.label(args[0]) + end + + # Returns the label provider given as key `:label` in the hash passed to #format. + # @return [Puppet::Pops::LabelProvider] the label provider + # @raise [Puppet::Error] if no label provider is found + def label_provider + label_provider = @data[:label] + raise Puppet::Error, 'Label provider key :label must be set to produce the text of the message!' unless label_provider + label_provider end # Returns the label provider given as a key in the hash passed to #format. # def semantic - raise "Label provider key :semantic must be set to produce the text of the message!" unless @data[:semantic] + raise Puppet::Error, 'Label provider key :semantic must be set to produce the text of the message!' unless @data[:semantic] @data[:semantic] end end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/pops/types/type_calculator.rb new/lib/puppet/pops/types/type_calculator.rb --- old/lib/puppet/pops/types/type_calculator.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/pops/types/type_calculator.rb 1970-01-01 01:00:00.000000000 +0100 @@ -886,6 +886,8 @@ case o when :default Types::PDefaultType.new() + when :undef + Types::PUndefType.new() else infer_Object(o) end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/provider/service/launchd.rb new/lib/puppet/provider/service/launchd.rb --- old/lib/puppet/provider/service/launchd.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/provider/service/launchd.rb 1970-01-01 01:00:00.000000000 +0100 @@ -206,7 +206,7 @@ def self.read_plist(path) begin return Plist::parse_xml(path) - rescue ArgumentError => detail + rescue ArgumentError, NoMethodError => detail Puppet.debug("Error reading #{path}: #{detail}. Retrying with plutil.") end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/provider/user/user_role_add.rb new/lib/puppet/provider/user/user_role_add.rb --- old/lib/puppet/provider/user/user_role_add.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/provider/user/user_role_add.rb 1970-01-01 01:00:00.000000000 +0100 @@ -167,10 +167,12 @@ end def password - shadow_entry[1] if shadow_entry + return :absent unless shadow_entry + shadow_entry[1] end def password_min_age + return :absent unless shadow_entry shadow_entry[3].empty? ? -1 : shadow_entry[3] end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lib/puppet/version.rb new/lib/puppet/version.rb --- old/lib/puppet/version.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/lib/puppet/version.rb 1970-01-01 01:00:00.000000000 +0100 @@ -7,7 +7,7 @@ module Puppet - PUPPETVERSION = '3.8.5' + PUPPETVERSION = '3.8.7' ## # version is a public API method intended to always provide a fast and diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/metadata new/metadata --- old/metadata 1970-01-01 01:00:00.000000000 +0100 +++ new/metadata 1970-01-01 01:00:00.000000000 +0100 @@ -1,7 +1,7 @@ --- !ruby/object:Gem::Specification name: puppet version: !ruby/object:Gem::Version - version: 3.8.5 + version: 3.8.7 prerelease: platform: ruby authors: @@ -9,7 +9,7 @@ autorequire: bindir: bin cert_chain: [] -date: 2016-01-21 00:00:00.000000000 Z +date: 2016-04-25 00:00:00.000000000 Z dependencies: - !ruby/object:Gem::Dependency name: facter @@ -1415,7 +1415,6 @@ - ext/upload_facts.rb - ext/nagios/naggen - ext/nagios/check_puppet.rb -- ext/puppet-nm-dispatcher - ext/freebsd/puppetmasterd - ext/freebsd/puppetd - ext/dbfix.sql @@ -1783,6 +1782,7 @@ - spec/fixtures/releases/jamtur01-apache/manifests/ssl.pp - spec/fixtures/releases/jamtur01-apache/manifests/params.pp - spec/fixtures/hiera.yaml +- spec/fixtures/module.tar.gz - spec/fixtures/manifests/site.pp - spec/fixtures/java.tgz - spec/integration/environments/default_manifest_spec.rb @@ -1840,6 +1840,7 @@ - spec/integration/parser/conditionals_spec.rb - spec/integration/parser/parser_spec.rb - spec/integration/parser/collector_spec.rb +- spec/integration/parser/dynamic_scoping_spec.rb - spec/integration/parser/catalog_spec.rb - spec/integration/parser/compiler_spec.rb - spec/integration/parser/environment_spec.rb @@ -1847,6 +1848,7 @@ - spec/integration/parser/functions/require_spec.rb - spec/integration/parser/scope_spec.rb - spec/integration/parser/undef_param_spec.rb +- spec/integration/module_tool/tar/mini_spec.rb - spec/integration/type_spec.rb - spec/integration/agent/logging_spec.rb - spec/integration/ssl/certificate_request_spec.rb @@ -2880,6 +2882,7 @@ - spec/fixtures/releases/jamtur01-apache/manifests/ssl.pp - spec/fixtures/releases/jamtur01-apache/manifests/params.pp - spec/fixtures/hiera.yaml +- spec/fixtures/module.tar.gz - spec/fixtures/manifests/site.pp - spec/fixtures/java.tgz - spec/integration/environments/default_manifest_spec.rb @@ -2937,6 +2940,7 @@ - spec/integration/parser/conditionals_spec.rb - spec/integration/parser/parser_spec.rb - spec/integration/parser/collector_spec.rb +- spec/integration/parser/dynamic_scoping_spec.rb - spec/integration/parser/catalog_spec.rb - spec/integration/parser/compiler_spec.rb - spec/integration/parser/environment_spec.rb @@ -2944,6 +2948,7 @@ - spec/integration/parser/functions/require_spec.rb - spec/integration/parser/scope_spec.rb - spec/integration/parser/undef_param_spec.rb +- spec/integration/module_tool/tar/mini_spec.rb - spec/integration/type_spec.rb - spec/integration/agent/logging_spec.rb - spec/integration/ssl/certificate_request_spec.rb Files old/spec/fixtures/module.tar.gz and new/spec/fixtures/module.tar.gz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec/integration/module_tool/tar/mini_spec.rb new/spec/integration/module_tool/tar/mini_spec.rb --- old/spec/integration/module_tool/tar/mini_spec.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/spec/integration/module_tool/tar/mini_spec.rb 1970-01-01 01:00:00.000000000 +0100 @@ -0,0 +1,28 @@ +require 'spec_helper' +require 'puppet/module_tool' +require 'puppet_spec/files' + +describe Puppet::ModuleTool::Tar::Mini, :if => (Puppet.features.minitar? && Puppet.features.zlib?) do + let(:minitar) { described_class.new } + + describe "Extracts tars with long and short pathnames" do + let (:sourcetar) { File.expand_path('../../../../fixtures/module.tar.gz', __FILE__) } + + let (:longfilepath) { "puppetlabs-dsc-1.0.0/lib/puppet_x/dsc_resources/xWebAdministration/DSCResources/MSFT_xWebAppPoolDefaults/MSFT_xWebAppPoolDefaults.schema.mof" } + let (:shortfilepath) { "puppetlabs-dsc-1.0.0/README.md" } + + it "unpacks a tar with a short path length" do + extractdir = PuppetSpec::Files.tmpdir('minitar') + + minitar.unpack(sourcetar,extractdir,'module') + expect(File).to exist(File.expand_path("#{extractdir}/#{shortfilepath}")) + end + + it "unpacks a tar with a long path length" do + extractdir = PuppetSpec::Files.tmpdir('minitar') + + minitar.unpack(sourcetar,extractdir,'module') + expect(File).to exist(File.expand_path("#{extractdir}/#{longfilepath}")) + end + end +end \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec/integration/parser/dynamic_scoping_spec.rb new/spec/integration/parser/dynamic_scoping_spec.rb --- old/spec/integration/parser/dynamic_scoping_spec.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/spec/integration/parser/dynamic_scoping_spec.rb 1970-01-01 01:00:00.000000000 +0100 @@ -0,0 +1,131 @@ +require 'spec_helper' +require 'puppet/pops' +require 'puppet/parser/parser_factory' +require 'puppet_spec/compiler' +require 'puppet_spec/pops' +require 'puppet_spec/scope' +require 'matchers/resource' +require 'rgen/metamodel_builder' + +# These tests are in a separate file since othr compiler related tests have +# been dramatically changed between 3.x and 4.x and it is a pain to merge +# them. +# +describe "Puppet::Parser::Compiler when dealing with relative naming" do + include PuppetSpec::Compiler + include Matchers::Resource + + describe "the compiler when using 4.x parser and evaluator" do + # this before-clause should be removed when merging to 4.x + before :each do + Puppet[:parser] = 'future' + end + + it "should use absolute references even if references are not anchored" do + node = Puppet::Node.new("testnodex") + catalog = compile_to_catalog(<<-PP, node) + class foo::thing { + notify {"from foo::thing":} + } + + class thing { + notify {"from ::thing":} + } + + class foo { + # include thing + class {'thing':} + } + + include foo + PP + + catalog = Puppet::Parser::Compiler.compile(node) + + expect(catalog).to have_resource("Notify[from ::thing]") + end + + it "should use absolute references when references are absolute" do + node = Puppet::Node.new("testnodex") + catalog = compile_to_catalog(<<-PP, node) + class foo::thing { + notify {"from foo::thing":} + } + + class thing { + notify {"from ::thing":} + } + + class foo { + # include thing + class {'::thing':} + } + + include foo + PP + + catalog = Puppet::Parser::Compiler.compile(node) + + expect(catalog).to have_resource("Notify[from ::thing]") + end + end + + # This entire describe should be removed when merged to 4.x + # + describe "the compiler when using 3.x parser and evaluator" do + # this before-clause should be removed when merging to 4.x + before :each do + Puppet[:parser] = 'current' + end + + it "should use relative references when they are not anchored" do + node = Puppet::Node.new("testnodex") + catalog = compile_to_catalog(<<-PP, node) + class foo::thing { + notify {"from foo::thing":} + } + + class thing { + notify {"from ::thing":} + } + + class foo { + # include thing + class {'thing':} + } + + include foo + PP + + catalog = Puppet::Parser::Compiler.compile(node) + + expect(catalog).to have_resource("Notify[from foo::thing]") + end + + it "should use absolute references when references are absolute" do + node = Puppet::Node.new("testnodex") + catalog = compile_to_catalog(<<-PP, node) + class foo::thing { + notify {"from foo::thing":} + } + + class thing { + notify {"from ::thing":} + } + + class foo { + # include thing + class {'::thing':} + } + + include foo + PP + + catalog = Puppet::Parser::Compiler.compile(node) + + expect(catalog).to have_resource("Notify[from ::thing]") + end + + end # End 3.x only case + +end diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec/unit/pops/evaluator/comparison_ops_spec.rb new/spec/unit/pops/evaluator/comparison_ops_spec.rb --- old/spec/unit/pops/evaluator/comparison_ops_spec.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/spec/unit/pops/evaluator/comparison_ops_spec.rb 1970-01-01 01:00:00.000000000 +0100 @@ -86,6 +86,9 @@ it "'1.0' < 1.1 == true" do expect{evaluate(literal('1.0') < literal(1.1))}.to raise_error(/String < Float/) end + it "undef < 1.1 == true" do + expect{evaluate(literal(nil) < literal(1.1))}.to raise_error(/Undef Value < Float/) + end end context "of regular expressions" do diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/spec/unit/pops/types/type_calculator_spec.rb new/spec/unit/pops/types/type_calculator_spec.rb --- old/spec/unit/pops/types/type_calculator_spec.rb 1970-01-01 01:00:00.000000000 +0100 +++ new/spec/unit/pops/types/type_calculator_spec.rb 1970-01-01 01:00:00.000000000 +0100 @@ -241,8 +241,8 @@ calculator.infer(nil).class.should == Puppet::Pops::Types::PUndefType end - it ':undef translates to PRuntimeType' do - calculator.infer(:undef).class.should == Puppet::Pops::Types::PRuntimeType + it ':undef translates to PUndefType' do + calculator.infer(:undef).class.should == Puppet::Pops::Types::PUndefType end it 'an instance of class Foo translates to PRuntimeType[ruby, Foo]' do @@ -1359,8 +1359,8 @@ end end - it "should consider :undef to be instance of Runtime['ruby', 'Symbol]" do - calculator.instance?(Puppet::Pops::Types::PRuntimeType.new(:runtime => :ruby, :runtime_type_name => 'Symbol'), :undef).should == true + it "should consider :undef to be instance of Undef" do + calculator.instance?(Puppet::Pops::Types::PUndefType.new(), :undef).should == true end it "should consider :undef to be instance of an Optional type" do ++++++ puppetmaster-unicorn.service ++++++ [Unit] Description=Puppet Master Unicorn [Service] Type=simple User=puppet Group=puppet WorkingDirectory=/etc/puppet/rack ExecStart=/usr/bin/unicorn -E production -c /etc/puppet/unicorn.conf Restart=on-failure [Install] WantedBy=multi-user.target ++++++ rubygem-puppet-rpmlintrc ++++++ # "#!" is (also) used to nudge editors into loading certain colors addFilter("non-executable-script") ++++++ unicorn.conf ++++++ worker_processes 8 working_directory "/etc/puppet" listen '/var/run/puppet/puppetmaster_unicorn.sock', :backlog => 512 timeout 120 pid "/var/run/puppet/puppetmaster_unicorn.pid" stderr_path '/var/log/puppet/stderr.log' stdout_path '/var/log/puppet/stdout.log' preload_app true if GC.respond_to?(:copy_on_write_friendly=) GC.copy_on_write_friendly = true end before_fork do |server, worker| old_pid = "#{server.config[:pid]}.oldbin" if File.exists?(old_pid) && server.pid != old_pid begin Process.kill("QUIT", File.read(old_pid).to_i) rescue Errno::ENOENT, Errno::ESRCH # someone else did our job for us end end end