From 33474cf1c7a8b9b15380542086087112dfdfb576 Mon Sep 17 00:00:00 2001 From: Will Benton Date: Fri, 10 Feb 2012 10:43:37 -0600 Subject: [PATCH 01/17] Updated to 0.13.0-2: Ruby 1.9.3 compatibility, improved functionality, packaging fixes. --- .gitignore | 1 + 0001-updated-spec-for-0.12.4.patch | 26 ----- 0001-updated-spec-for-0.13.0-2.patch | 152 +++++++++++++++++++++++++++ sources | 2 +- wallaby.spec | 74 ++++++++----- 5 files changed, 201 insertions(+), 54 deletions(-) delete mode 100644 0001-updated-spec-for-0.12.4.patch create mode 100644 0001-updated-spec-for-0.13.0-2.patch diff --git a/.gitignore b/.gitignore index 4149120..8e0fc8a 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /wallaby-0.12.4.tar.gz +/wallaby-0.13.0.tar.gz diff --git a/0001-updated-spec-for-0.12.4.patch b/0001-updated-spec-for-0.12.4.patch deleted file mode 100644 index 5e0f667..0000000 --- a/0001-updated-spec-for-0.12.4.patch +++ /dev/null @@ -1,26 +0,0 @@ -From fcc1044e270f4580eef1828ab3d09d209999fd60 Mon Sep 17 00:00:00 2001 -From: Will Benton -Date: Fri, 9 Dec 2011 15:18:27 -0600 -Subject: [PATCH] updated spec for 0.12.4 - ---- - wallaby.spec.in | 3 +++ - 1 files changed, 3 insertions(+), 0 deletions(-) - -diff --git a/wallaby.spec.in b/wallaby.spec.in -index c22e8ba..8f861c4 100644 ---- a/wallaby.spec.in -+++ b/wallaby.spec.in -@@ -274,6 +274,9 @@ fi - - %changelog - -+* Fri Dec 9 2011 willb - 0.12.4-1 -+- fixes for minor tool problems that came up in 0.12 development -+ - * Wed Nov 23 2011 willb - 0.12.3-1 - - fix for bz 756402 - --- -1.7.4.4 - diff --git a/0001-updated-spec-for-0.13.0-2.patch b/0001-updated-spec-for-0.13.0-2.patch new file mode 100644 index 0000000..cd62d49 --- /dev/null +++ b/0001-updated-spec-for-0.13.0-2.patch @@ -0,0 +1,152 @@ +From 5e714586307e88f3e0ec7f3516db9a54b5233aac Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Fri, 10 Feb 2012 10:38:19 -0600 +Subject: [PATCH] updated spec for 0.13.0-2 + +--- + wallaby.spec.in | 56 +++++++++++++++++++++++++++++++++++------------------- + 1 files changed, 36 insertions(+), 20 deletions(-) + +diff --git a/wallaby.spec.in b/wallaby.spec.in +index 9c40b4c..17f9d6f 100644 +--- a/wallaby.spec.in ++++ b/wallaby.spec.in +@@ -1,5 +1,3 @@ +-%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} +- + %if 0%{?fedora} >= 15 + %global want_systemd 1 + %global wallaby_agent_environment sysconfig/wallaby-agent-env +@@ -20,6 +18,15 @@ + %global has_sinatra 0 + %endif + ++%if (0%{?fedora} >= 17) ++%global ruby_abi 1.9.1 ++%global ruby_appropriate_install_dir %{ruby_vendorlibdir} ++%else ++%global ruby_abi 1.8 ++%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} ++%global ruby_appropriate_install_dir %{ruby_sitelib} ++%endif ++ + %if %{building_for_el5} == 1 + %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} + %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} +@@ -38,7 +45,7 @@ Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz + BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + %endif + BuildRequires: python2-devel +-Requires: ruby(abi) = 1.8 ++Requires: ruby(abi) = %{?ruby_abi} + BuildRequires: ruby + Requires: ruby-qmf >= 0.7.929717 + Requires: ruby-spqr >= 0.3.6 +@@ -70,7 +77,7 @@ and manages multiple versions of configurations. + %package utils + Summary: Utilities to interact with the Wallaby service + Group: Applications/System +-Requires: ruby(abi) = 1.8 ++Requires: ruby(abi) = %{?ruby_abi} + Requires: ruby-qmf >= 0.7.929717 + Requires: ruby-wallaby = %{version} + +@@ -81,7 +88,7 @@ and node configurations and interacting with the Wallaby service. + %package -n ruby-wallaby + Summary: Wallaby implementation libraries, API, and client library + Group: Applications/System +-Requires: ruby(abi) = 1.8 ++Requires: ruby(abi) = %{?ruby_abi} + Requires: ruby-irb + Requires: ruby-qmf >= 0.7.929717 + Requires: ruby-spqr >= 0.3.5 +@@ -103,7 +110,7 @@ that interact with the Wallaby configuration service over QMF. + %package -n wallaby-http-server + Summary: Wallaby web service interface + Group: Applications/System +-Requires: ruby(abi) = 1.8 ++Requires: ruby(abi) = %{?ruby_abi} + Requires: ruby-irb + Requires: ruby-qmf >= 0.7.929717 + Requires: ruby-wallaby = %{version}-%{release} +@@ -135,9 +142,9 @@ sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-e + rm -rf %{buildroot} + %endif + mkdir -p %{buildroot}/%{_unitdir} +-mkdir -p %{buildroot}/%{ruby_sitelib}/mrg/grid/config/dbmigrate +-mkdir -p %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell +-mkdir -p %{buildroot}/%{ruby_sitelib}/mrg/grid/util ++mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate ++mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell ++mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util + mkdir -p %{buildroot}/%{_bindir} + mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby + mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby/patches +@@ -149,18 +156,18 @@ mkdir -p %{buildroot}/%{_localstatedir}/log/wallaby + mkdir -p %{buildroot}/%{python_sitelib}/wallaby + cp -p -f bin/wallaby %{buildroot}/%{_bindir} + cp -p -f bin/wallaby-agent %{buildroot}/%{_bindir} +-cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid +-cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/util +-cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/config +-cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell ++cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid ++cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util ++cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config ++cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell + # These aren't packaged +-rm -f %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell/cmd_force_pull.rb +-rm -f %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell/cmd_force_restart.rb ++rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_pull.rb ++rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_restart.rb + # We only want the http server if we have sinatra available + %if %{has_sinatra} == 0 +-rm -f %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell/cmd_http_server.rb ++rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb + %endif +-cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/config/dbmigrate ++cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate + + %if %{want_systemd} == 0 + cp -p -f etc/wallaby %{buildroot}/%{_initrddir}/wallaby +@@ -264,25 +271,34 @@ fi + %if %{building_for_el5} + %defattr(-, root, root, -) + %endif +-%{ruby_sitelib}/mrg/grid/ ++%{ruby_appropriate_install_dir}/mrg/grid/ + %if %{has_sinatra} +-%exclude %{ruby_sitelib}/mrg/grid/config/shell/cmd_http_server.rb ++%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb + + %files -n wallaby-http-server +-%{ruby_sitelib}/mrg/grid/config/shell/cmd_http_server.rb ++%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb + %endif + + %changelog + ++* Fri Feb 10 2012 willb - 0.13.0-2 ++- specfile fixes ++ + * Fri Feb 10 2012 willb - 0.13.0-1 + - conditional assignment of parameter values ("?=" operator) + - fix for bz 748507 + - compatibility with Ruby 1.9 + ++* Fri Feb 10 2012 Vít Ondruch - 0.12.4-3 ++- Rebuilt for Ruby 1.9.3. ++ + * Wed Jan 18 2012 willb - 0.12.5-2 + - minor usability fixes to "wallaby inventory -c" + - fix for bz 782816 + ++* Sat Jan 14 2012 Fedora Release Engineering - 0.12.4-2 ++- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild ++ + * Tue Jan 10 2012 willb - 0.12.5-1 + - the Wallaby shell no longer a priori rejects certain valid SASL authentication mechanisms + +-- +1.7.7.5 + diff --git a/sources b/sources index b7e4c28..61dc69f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -185b2513e552960f84c0eebaea0f3e72 wallaby-0.12.4.tar.gz +8058c9647f68f8cc3ab818931b28b524 wallaby-0.13.0.tar.gz diff --git a/wallaby.spec b/wallaby.spec index 0e9fa67..094b388 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -1,4 +1,3 @@ - %if 0%{?fedora} >= 15 %global want_systemd 1 %global wallaby_agent_environment sysconfig/wallaby-agent-env @@ -19,32 +18,38 @@ %global has_sinatra 0 %endif +%if (0%{?fedora} >= 17) +%global ruby_abi 1.9.1 +%global ruby_appropriate_install_dir %{ruby_vendorlibdir} +%else +%global ruby_abi 1.8 +%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} +%global ruby_appropriate_install_dir %{ruby_sitelib} +%endif + %if %{building_for_el5} == 1 %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} %endif -%global rubyabi 1.9.1 - Summary: Condor pool configuration service with QMF interface Name: wallaby -Version: 0.12.4 -Release: 3%{?dist} +Version: 0.13.0 +Release: 2%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz -Patch0: 0001-updated-spec-for-0.12.4.patch +Patch0: 0001-updated-spec-for-0.13.0-2.patch %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif BuildRequires: python2-devel -BuildRequires: ruby-devel -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} BuildRequires: ruby Requires: ruby-qmf >= 0.7.929717 -Requires: ruby-spqr >= 0.3.5 -Requires: ruby-rhubarb >= 0.2.6 +Requires: ruby-spqr >= 0.3.6 +Requires: ruby-rhubarb >= 0.4.3 Requires: ruby-wallaby = %{version}-%{release} Requires: logrotate >= 0.3 %if %{want_systemd} @@ -72,7 +77,7 @@ and manages multiple versions of configurations. %package utils Summary: Utilities to interact with the Wallaby service Group: Applications/System -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} Requires: ruby-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version} @@ -83,7 +88,7 @@ and node configurations and interacting with the Wallaby service. %package -n ruby-wallaby Summary: Wallaby implementation libraries, API, and client library Group: Applications/System -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.5 @@ -105,7 +110,7 @@ that interact with the Wallaby configuration service over QMF. %package -n wallaby-http-server Summary: Wallaby web service interface Group: Applications/System -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version}-%{release} @@ -137,9 +142,9 @@ sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-e rm -rf %{buildroot} %endif mkdir -p %{buildroot}/%{_unitdir} -mkdir -p %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/dbmigrate -mkdir -p %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell -mkdir -p %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/util +mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate +mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell +mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util mkdir -p %{buildroot}/%{_bindir} mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby/patches @@ -151,18 +156,18 @@ mkdir -p %{buildroot}/%{_localstatedir}/log/wallaby mkdir -p %{buildroot}/%{python_sitelib}/wallaby cp -p -f bin/wallaby %{buildroot}/%{_bindir} cp -p -f bin/wallaby-agent %{buildroot}/%{_bindir} -cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid -cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/util -cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config -cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell +cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid +cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util +cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config +cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell # These aren't packaged -rm -f %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_force_pull.rb -rm -f %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_force_restart.rb +rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_pull.rb +rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_restart.rb # We only want the http server if we have sinatra available %if %{has_sinatra} == 0 -rm -f %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_http_server.rb +rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %endif -cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/dbmigrate +cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate %if %{want_systemd} == 0 cp -p -f etc/wallaby %{buildroot}/%{_initrddir}/wallaby @@ -266,21 +271,36 @@ fi %if %{building_for_el5} %defattr(-, root, root, -) %endif -%{ruby_vendorlibdir}/mrg/grid/ +%{ruby_appropriate_install_dir}/mrg/grid/ %if %{has_sinatra} -%exclude %{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_http_server.rb +%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %files -n wallaby-http-server -%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_http_server.rb +%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %endif %changelog + +* Fri Feb 10 2012 willb - 0.13.0-2 +- specfile fixes + +* Fri Feb 10 2012 willb - 0.13.0-1 +- conditional assignment of parameter values ("?=" operator) +- fix for bz 748507 +- compatibility with Ruby 1.9 + * Fri Feb 10 2012 Vít Ondruch - 0.12.4-3 - Rebuilt for Ruby 1.9.3. +* Wed Jan 18 2012 willb - 0.12.5-2 +- minor usability fixes to "wallaby inventory -c" +- fix for bz 782816 + * Sat Jan 14 2012 Fedora Release Engineering - 0.12.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild +* Tue Jan 10 2012 willb - 0.12.5-1 +- the Wallaby shell no longer a priori rejects certain valid SASL authentication mechanisms * Fri Dec 9 2011 willb - 0.12.4-1 - fixes for minor tool problems that came up in 0.12 development From c491b33005e7e61972bb63b14d5f1307cea38d18 Mon Sep 17 00:00:00 2001 From: Will Benton Date: Fri, 10 Feb 2012 11:51:51 -0600 Subject: [PATCH 02/17] Fixed missing initial '/' in %files listing on F17 --- wallaby.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/wallaby.spec b/wallaby.spec index 094b388..ee19248 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -271,12 +271,12 @@ fi %if %{building_for_el5} %defattr(-, root, root, -) %endif -%{ruby_appropriate_install_dir}/mrg/grid/ +/%{ruby_appropriate_install_dir}/mrg/grid/ %if %{has_sinatra} -%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb +%exclude /%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %files -n wallaby-http-server -%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb +/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %endif %changelog From f073cb571f6b25fe3e7b1e2d5b17be6ba948ee32 Mon Sep 17 00:00:00 2001 From: Will Benton Date: Tue, 27 Mar 2012 00:02:17 -0500 Subject: [PATCH 03/17] updated BuildRequires on F17 --- .gitignore | 1 + ...-will-blank-a-field-if-no-list-is-pr.patch | 149 +++++++++++++++++ 0001-updated-spec-for-0.13.0-2.patch | 152 ------------------ 0002-Added-command-to-remove-a-snapshot.patch | 46 ++++++ ...ng-and-failsafe-in-Parameter-default.patch | 35 ++++ ...angeParams-to-Store-in-config-client.patch | 27 ++++ ...lanking-non-param-type-relationships.patch | 25 +++ sources | 2 +- wallaby.spec | 30 +++- 9 files changed, 309 insertions(+), 158 deletions(-) create mode 100644 0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch delete mode 100644 0001-updated-spec-for-0.13.0-2.patch create mode 100644 0002-Added-command-to-remove-a-snapshot.patch create mode 100644 0003-additional-logging-and-failsafe-in-Parameter-default.patch create mode 100644 0004-Added-getMustChangeParams-to-Store-in-config-client.patch create mode 100644 0005-Fixed-issue-blanking-non-param-type-relationships.patch diff --git a/.gitignore b/.gitignore index 8e0fc8a..7ce12ca 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /wallaby-0.12.4.tar.gz /wallaby-0.13.0.tar.gz +/wallaby-0.13.1.tar.gz diff --git a/0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch b/0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch new file mode 100644 index 0000000..83d307b --- /dev/null +++ b/0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch @@ -0,0 +1,149 @@ +From 11f90714b98ec5133d1863e9e693834470145efa Mon Sep 17 00:00:00 2001 +From: Robert Rati +Date: Thu, 9 Feb 2012 13:47:44 -0600 +Subject: [PATCH 1/5] replace-* commands will blank a field if no list is + provided + +--- + lib/mrg/grid/config/shell/cmd_relationships.rb | 89 +++++++++++------------ + 1 files changed, 43 insertions(+), 46 deletions(-) + +diff --git a/lib/mrg/grid/config/shell/cmd_relationships.rb b/lib/mrg/grid/config/shell/cmd_relationships.rb +index 4186d8a..d9dc57b 100644 +--- a/lib/mrg/grid/config/shell/cmd_relationships.rb ++++ b/lib/mrg/grid/config/shell/cmd_relationships.rb +@@ -18,24 +18,28 @@ module Mrg + module Grid + module Config + module Shell +- module GroupMembershipOps +- def act +- result = 0 +- +- cname = Mrg::Grid::Config.constants.grep(/^#{target_type.capitalize}/).select {|x| Mrg::Grid::Config.const_get(x).ancestors.include?(::SPQR::Manageable) }[0] ++ module VerifyOps ++ def verify_input + bad_target = verify_target + bad_names = verify_names +- if (bad_target != []) || (bad_names != []) +- puts "Invalid #{options[0][:opt_name]}: #{bad_target.inspect}" if bad_target != [] +- puts "Invalid #{options[1][:opt_name].split("[")[0]}: #{bad_names.inspect}" if bad_names != [] +- result = 1 +- else +- @names.each do |n| +- obj = store.getNode(n) +- obj.modifyMemberships(command, [@target], {}) +- end ++ if (not bad_target.empty?) || (not bad_names.empty?) ++ bad_target.each {|n| puts "#{options[0][:opt_name].split('-')[0].downcase} '#{n}' does not exist"} ++ bad_names.each {|n| puts "#{options[1][:opt_name].split('-')[0].downcase} '#{n}' does not exist"} ++ exit!(1, "Invalid input") + end +- result ++ end ++ end ++ ++ module GroupMembershipOps ++ include VerifyOps ++ ++ def act ++ verify_input ++ @names.each do |n| ++ obj = store.getNode(n) ++ obj.modifyMemberships(command, [@target], {}) ++ end ++ return 0 + end + end + +@@ -70,6 +74,8 @@ module Mrg + end + + module RelationshipOps ++ include VerifyOps ++ + def supports_options + false + end +@@ -113,7 +119,7 @@ module Mrg + opts = 0 + self.options.each do |opt| + input = args.shift +- if input == nil ++ if input == nil and command != "REPLACE" + exit!(1, "you must specify a #{opt[:opt_name]}") + elsif opts < (self.options.length-1) + @target = input +@@ -128,9 +134,9 @@ module Mrg + end + else + @names = [] +- @names << input ++ @names << input if input and not input.empty? + args.each do |a| +- @names << a ++ @names << a if not a.empty? + end + @names.uniq! + end +@@ -179,38 +185,29 @@ module Mrg + end + + def act +- result = 0 +- ++ verify_input + cname = Mrg::Grid::Config.constants.grep(/^#{target_type.capitalize}/).select {|x| Mrg::Grid::Config.const_get(x).ancestors.include?(::SPQR::Manageable) }[0] +- bad_target = verify_target +- bad_names = verify_names +- if (bad_target != []) || (bad_names != []) +- puts "Invalid #{options[0][:opt_name]}: #{bad_target.inspect}" if bad_target != [] +- puts "Invalid #{options[1][:opt_name].split("[")[0]}: #{bad_names.inspect}" if bad_names != [] +- result = 1 ++ smethod = Mrg::Grid::MethodUtils.find_store_method("get#{cname.slice(0,5)}") ++ obj = store.send(smethod, @target) ++ if cname == "Node" and sub_group_for_node ++ obj = obj.identity_group ++ cname = "Group" ++ end ++ cmethod = Mrg::Grid::MethodUtils.find_method(name_type.slice(0,5).capitalize, cname).select {|m| m if m.index("modify") != nil}[0] ++ if (@priority == nil) || (command != "ADD") ++ obj.send(cmethod, command, @names, {}) + else +- smethod = Mrg::Grid::MethodUtils.find_store_method("get#{cname.slice(0,5)}") +- obj = store.send(smethod, @target) +- if cname == "Node" and sub_group_for_node +- obj = obj.identity_group +- cname = "Group" +- end +- cmethod = Mrg::Grid::MethodUtils.find_method(name_type.slice(0,5).capitalize, cname).select {|m| m if m.index("modify") != nil}[0] +- if (@priority == nil) || (command != "ADD") +- obj.send(cmethod, command, @names, {}) +- else +- get = Mrg::Grid::Config.const_get(cname).get_from_set(cmethod.to_sym) +- cur = obj.send(get) +- cnt = 0 +- @names.select {|x| cur.include?(x)}.each {|y| cnt += 1 if cur.index(y) < @priority} +- cur = cur - @names +- if command == "ADD" +- cur.insert(@priority - cnt, *@names).compact! +- end +- obj.send(cmethod, "REPLACE", cur, {}) ++ get = Mrg::Grid::Config.const_get(cname).get_from_set(cmethod.to_sym) ++ cur = obj.send(get) ++ cnt = 0 ++ @names.select {|x| cur.include?(x)}.each {|y| cnt += 1 if cur.index(y) < @priority} ++ cur = cur - @names ++ if command == "ADD" ++ cur.insert(@priority - cnt, *@names).compact! + end ++ obj.send(cmethod, "REPLACE", cur, {}) + end +- result ++ return 0 + end + end + +-- +1.7.7.6 + diff --git a/0001-updated-spec-for-0.13.0-2.patch b/0001-updated-spec-for-0.13.0-2.patch deleted file mode 100644 index cd62d49..0000000 --- a/0001-updated-spec-for-0.13.0-2.patch +++ /dev/null @@ -1,152 +0,0 @@ -From 5e714586307e88f3e0ec7f3516db9a54b5233aac Mon Sep 17 00:00:00 2001 -From: Will Benton -Date: Fri, 10 Feb 2012 10:38:19 -0600 -Subject: [PATCH] updated spec for 0.13.0-2 - ---- - wallaby.spec.in | 56 +++++++++++++++++++++++++++++++++++------------------- - 1 files changed, 36 insertions(+), 20 deletions(-) - -diff --git a/wallaby.spec.in b/wallaby.spec.in -index 9c40b4c..17f9d6f 100644 ---- a/wallaby.spec.in -+++ b/wallaby.spec.in -@@ -1,5 +1,3 @@ --%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} -- - %if 0%{?fedora} >= 15 - %global want_systemd 1 - %global wallaby_agent_environment sysconfig/wallaby-agent-env -@@ -20,6 +18,15 @@ - %global has_sinatra 0 - %endif - -+%if (0%{?fedora} >= 17) -+%global ruby_abi 1.9.1 -+%global ruby_appropriate_install_dir %{ruby_vendorlibdir} -+%else -+%global ruby_abi 1.8 -+%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} -+%global ruby_appropriate_install_dir %{ruby_sitelib} -+%endif -+ - %if %{building_for_el5} == 1 - %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} - %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} -@@ -38,7 +45,7 @@ Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz - BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) - %endif - BuildRequires: python2-devel --Requires: ruby(abi) = 1.8 -+Requires: ruby(abi) = %{?ruby_abi} - BuildRequires: ruby - Requires: ruby-qmf >= 0.7.929717 - Requires: ruby-spqr >= 0.3.6 -@@ -70,7 +77,7 @@ and manages multiple versions of configurations. - %package utils - Summary: Utilities to interact with the Wallaby service - Group: Applications/System --Requires: ruby(abi) = 1.8 -+Requires: ruby(abi) = %{?ruby_abi} - Requires: ruby-qmf >= 0.7.929717 - Requires: ruby-wallaby = %{version} - -@@ -81,7 +88,7 @@ and node configurations and interacting with the Wallaby service. - %package -n ruby-wallaby - Summary: Wallaby implementation libraries, API, and client library - Group: Applications/System --Requires: ruby(abi) = 1.8 -+Requires: ruby(abi) = %{?ruby_abi} - Requires: ruby-irb - Requires: ruby-qmf >= 0.7.929717 - Requires: ruby-spqr >= 0.3.5 -@@ -103,7 +110,7 @@ that interact with the Wallaby configuration service over QMF. - %package -n wallaby-http-server - Summary: Wallaby web service interface - Group: Applications/System --Requires: ruby(abi) = 1.8 -+Requires: ruby(abi) = %{?ruby_abi} - Requires: ruby-irb - Requires: ruby-qmf >= 0.7.929717 - Requires: ruby-wallaby = %{version}-%{release} -@@ -135,9 +142,9 @@ sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-e - rm -rf %{buildroot} - %endif - mkdir -p %{buildroot}/%{_unitdir} --mkdir -p %{buildroot}/%{ruby_sitelib}/mrg/grid/config/dbmigrate --mkdir -p %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell --mkdir -p %{buildroot}/%{ruby_sitelib}/mrg/grid/util -+mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate -+mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell -+mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util - mkdir -p %{buildroot}/%{_bindir} - mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby - mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby/patches -@@ -149,18 +156,18 @@ mkdir -p %{buildroot}/%{_localstatedir}/log/wallaby - mkdir -p %{buildroot}/%{python_sitelib}/wallaby - cp -p -f bin/wallaby %{buildroot}/%{_bindir} - cp -p -f bin/wallaby-agent %{buildroot}/%{_bindir} --cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid --cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/util --cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/config --cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell -+cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid -+cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util -+cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config -+cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell - # These aren't packaged --rm -f %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell/cmd_force_pull.rb --rm -f %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell/cmd_force_restart.rb -+rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_pull.rb -+rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_restart.rb - # We only want the http server if we have sinatra available - %if %{has_sinatra} == 0 --rm -f %{buildroot}/%{ruby_sitelib}/mrg/grid/config/shell/cmd_http_server.rb -+rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb - %endif --cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_sitelib}/mrg/grid/config/dbmigrate -+cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate - - %if %{want_systemd} == 0 - cp -p -f etc/wallaby %{buildroot}/%{_initrddir}/wallaby -@@ -264,25 +271,34 @@ fi - %if %{building_for_el5} - %defattr(-, root, root, -) - %endif --%{ruby_sitelib}/mrg/grid/ -+%{ruby_appropriate_install_dir}/mrg/grid/ - %if %{has_sinatra} --%exclude %{ruby_sitelib}/mrg/grid/config/shell/cmd_http_server.rb -+%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb - - %files -n wallaby-http-server --%{ruby_sitelib}/mrg/grid/config/shell/cmd_http_server.rb -+%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb - %endif - - %changelog - -+* Fri Feb 10 2012 willb - 0.13.0-2 -+- specfile fixes -+ - * Fri Feb 10 2012 willb - 0.13.0-1 - - conditional assignment of parameter values ("?=" operator) - - fix for bz 748507 - - compatibility with Ruby 1.9 - -+* Fri Feb 10 2012 Vít Ondruch - 0.12.4-3 -+- Rebuilt for Ruby 1.9.3. -+ - * Wed Jan 18 2012 willb - 0.12.5-2 - - minor usability fixes to "wallaby inventory -c" - - fix for bz 782816 - -+* Sat Jan 14 2012 Fedora Release Engineering - 0.12.4-2 -+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild -+ - * Tue Jan 10 2012 willb - 0.12.5-1 - - the Wallaby shell no longer a priori rejects certain valid SASL authentication mechanisms - --- -1.7.7.5 - diff --git a/0002-Added-command-to-remove-a-snapshot.patch b/0002-Added-command-to-remove-a-snapshot.patch new file mode 100644 index 0000000..2d55fc4 --- /dev/null +++ b/0002-Added-command-to-remove-a-snapshot.patch @@ -0,0 +1,46 @@ +From 8bf41ed6c4330c90966f10ff7096bbe67167c221 Mon Sep 17 00:00:00 2001 +From: Robert Rati +Date: Thu, 8 Mar 2012 22:14:40 -0600 +Subject: [PATCH 2/5] Added command to remove a snapshot + +--- + lib/mrg/grid/config/shell/cmd_snapshot.rb | 23 +++++++++++++++++++++++ + 1 files changed, 23 insertions(+), 0 deletions(-) + +diff --git a/lib/mrg/grid/config/shell/cmd_snapshot.rb b/lib/mrg/grid/config/shell/cmd_snapshot.rb +index 942310b..7fe035d 100644 +--- a/lib/mrg/grid/config/shell/cmd_snapshot.rb ++++ b/lib/mrg/grid/config/shell/cmd_snapshot.rb +@@ -65,6 +65,29 @@ module Mrg + :makeSnapshot + end + end ++ ++ class RemoveSnapshot < Command ++ include SnapshotBase ++ ++ def self.opname ++ "remove-snapshot" ++ end ++ ++ def self.opargs ++ " SNAPNAME" ++ end ++ ++ def self.description ++ "Removes a snapshot with a given name." ++ end ++ ++ register_callback :after_option_parsing, :check_name ++ ++ private ++ def storeop ++ :removeSnapshot ++ end ++ end + + class LoadSnapshot < Command + include SnapshotBase +-- +1.7.7.6 + diff --git a/0003-additional-logging-and-failsafe-in-Parameter-default.patch b/0003-additional-logging-and-failsafe-in-Parameter-default.patch new file mode 100644 index 0000000..c0693b4 --- /dev/null +++ b/0003-additional-logging-and-failsafe-in-Parameter-default.patch @@ -0,0 +1,35 @@ +From 2e4dafae57f2e47ae9d94de08691daa9edaf3235 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Tue, 13 Mar 2012 18:03:47 -0500 +Subject: [PATCH 3/5] additional logging and failsafe in Parameter#default + +--- + lib/mrg/grid/config/Parameter.rb | 8 ++++++-- + 1 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/lib/mrg/grid/config/Parameter.rb b/lib/mrg/grid/config/Parameter.rb +index 530a513..327bca3 100644 +--- a/lib/mrg/grid/config/Parameter.rb ++++ b/lib/mrg/grid/config/Parameter.rb +@@ -92,12 +92,16 @@ module Mrg + # default + # * default (lstr/O) + def default +- log.debug "getDefault called on param #{self.inspect}" ++ log.debug "default called on param #{self.inspect}" + log.warn "param #{self.name} is a must_change parameter; its default value is meaningless by definition" if self.must_change ++ + # Assign values to output parameters + self.default_val ||= "" ++ ++ log.warn "param #{self.name} does not have a String value; it has a #{self.default_val.class} value" unless self.default_val.is_a?(String) ++ + # Return value +- return self.default_val ++ return (self.default_val.to_s) + end + + # setDefault +-- +1.7.7.6 + diff --git a/0004-Added-getMustChangeParams-to-Store-in-config-client.patch b/0004-Added-getMustChangeParams-to-Store-in-config-client.patch new file mode 100644 index 0000000..d753939 --- /dev/null +++ b/0004-Added-getMustChangeParams-to-Store-in-config-client.patch @@ -0,0 +1,27 @@ +From 66fc917646a355d2ef7a563933d517aa77be412f Mon Sep 17 00:00:00 2001 +From: Robert Rati +Date: Wed, 21 Mar 2012 10:05:03 -0500 +Subject: [PATCH 4/5] Added getMustChangeParams to Store in config-client + +--- + lib/mrg/grid/config-client.rb | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/lib/mrg/grid/config-client.rb b/lib/mrg/grid/config-client.rb +index b4cba82..0604eb8 100644 +--- a/lib/mrg/grid/config-client.rb ++++ b/lib/mrg/grid/config-client.rb +@@ -437,6 +437,10 @@ module Mrg + get_object(check_result(@qmfo.getParam(name)).obj, Parameter) + end + ++ def getMustChangeParams ++ check_result(@qmfo.getMustChangeParams).params ++ end ++ + def removeParam(name) + check_result(@qmfo.removeParam(name)) + nil +-- +1.7.7.6 + diff --git a/0005-Fixed-issue-blanking-non-param-type-relationships.patch b/0005-Fixed-issue-blanking-non-param-type-relationships.patch new file mode 100644 index 0000000..0b67938 --- /dev/null +++ b/0005-Fixed-issue-blanking-non-param-type-relationships.patch @@ -0,0 +1,25 @@ +From 91c5fdb80be5a3687678613e57e77d28e3b9016b Mon Sep 17 00:00:00 2001 +From: Robert Rati +Date: Wed, 21 Mar 2012 14:26:22 -0500 +Subject: [PATCH 5/5] Fixed issue blanking non-param type relationships + +--- + lib/mrg/grid/config/shell/cmd_relationships.rb | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/lib/mrg/grid/config/shell/cmd_relationships.rb b/lib/mrg/grid/config/shell/cmd_relationships.rb +index d9dc57b..5478116 100644 +--- a/lib/mrg/grid/config/shell/cmd_relationships.rb ++++ b/lib/mrg/grid/config/shell/cmd_relationships.rb +@@ -126,7 +126,7 @@ module Mrg + else + if (name_type == "param") && (target_type != "subsystem") && (command != "REMOVE") + @names = {} +- args.unshift(input) ++ args.unshift(input) if input + args.each do |a| + tmp = a.split("=", 2) + @names[tmp[0]] = 0 if tmp.length == 1 +-- +1.7.7.6 + diff --git a/sources b/sources index 61dc69f..db464ac 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -8058c9647f68f8cc3ab818931b28b524 wallaby-0.13.0.tar.gz +7e5b7133453c920d8c99944d29d1d22a wallaby-0.13.1.tar.gz diff --git a/wallaby.spec b/wallaby.spec index ee19248..5e99c66 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -21,7 +21,9 @@ %if (0%{?fedora} >= 17) %global ruby_abi 1.9.1 %global ruby_appropriate_install_dir %{ruby_vendorlibdir} +%global requires_ruby_devel 1 %else +%global requires_ruby_devel 0 %global ruby_abi 1.8 %{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} %global ruby_appropriate_install_dir %{ruby_sitelib} @@ -34,13 +36,17 @@ Summary: Condor pool configuration service with QMF interface Name: wallaby -Version: 0.13.0 +Version: 0.13.1 Release: 2%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz -Patch0: 0001-updated-spec-for-0.13.0-2.patch +Patch0: 0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch +Patch1: 0002-Added-command-to-remove-a-snapshot.patch +Patch2: 0003-additional-logging-and-failsafe-in-Parameter-default.patch +Patch3: 0004-Added-getMustChangeParams-to-Store-in-config-client.patch +Patch4: 0005-Fixed-issue-blanking-non-param-type-relationships.patch %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif @@ -93,6 +99,9 @@ Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.5 Requires: ruby-rhubarb >= 0.2.6 +%if %{requires_ruby_devel} +BuildRequires: ruby-devel +%endif Provides: ruby(mrg/grid/config) = %{version} %package -n python-wallaby @@ -133,6 +142,10 @@ Wallaby. %setup -q %patch0 -p1 +%patch1 -p1 +%patch2 -p1 +%patch3 -p1 +%patch4 -p1 %build sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-env @@ -271,16 +284,23 @@ fi %if %{building_for_el5} %defattr(-, root, root, -) %endif -/%{ruby_appropriate_install_dir}/mrg/grid/ +%{ruby_appropriate_install_dir}/mrg/grid/ %if %{has_sinatra} -%exclude /%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb +%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %files -n wallaby-http-server -/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb +%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %endif %changelog +* Mon Mar 26 2012 willb - 0.13.1-2 +- F17 fixes + +* Fri Mar 9 2012 willb - 0.13.1-1 +- Fixes BZs 786801 and 796406 +- specfile updates from Fedora work + * Fri Feb 10 2012 willb - 0.13.0-2 - specfile fixes From b85fb3a7ce4654b89c5dcf42d374064139b244f4 Mon Sep 17 00:00:00 2001 From: Will Benton Date: Fri, 29 Jun 2012 15:13:58 -0500 Subject: [PATCH 04/17] updated to wallaby-0.15.1-3 --- .gitignore | 1 + 0001-Fixes-to-skeleton-group-support.patch | 74 +++++++++ ...-will-blank-a-field-if-no-list-is-pr.patch | 149 ------------------ 0002-Added-command-to-remove-a-snapshot.patch | 46 ------ 0002-updated-spec-for-0.15.1-2.patch | 26 +++ 0003-More-resilient-activation-on-F17.patch | 42 +++++ ...ng-and-failsafe-in-Parameter-default.patch | 35 ---- ...angeParams-to-Store-in-config-client.patch | 27 ---- ...configuration-removal-off-by-default.patch | 32 ++++ ...lanking-non-param-type-relationships.patch | 25 --- ...c-again-in-advance-of-0.15.1-2-build.patch | 25 +++ ...case-duplicating-Matt-s-failure-case.patch | 66 ++++++++ ...d-more-assertions-to-prior-test-case.patch | 74 +++++++++ ...rtifacts-of-type-sniffing-errors-in-.patch | 44 ++++++ ...used-versioned-config-implementation.patch | 73 +++++++++ ...ed-oldstyle-versioned-configurations.patch | 111 +++++++++++++ 0011-spec-file-for-v0.15.1-3.patch | 26 +++ sources | 2 +- wallaby.spec | 74 +++++++-- 19 files changed, 659 insertions(+), 293 deletions(-) create mode 100644 0001-Fixes-to-skeleton-group-support.patch delete mode 100644 0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch delete mode 100644 0002-Added-command-to-remove-a-snapshot.patch create mode 100644 0002-updated-spec-for-0.15.1-2.patch create mode 100644 0003-More-resilient-activation-on-F17.patch delete mode 100644 0003-additional-logging-and-failsafe-in-Parameter-default.patch delete mode 100644 0004-Added-getMustChangeParams-to-Store-in-config-client.patch create mode 100644 0004-Spurious-configuration-removal-off-by-default.patch delete mode 100644 0005-Fixed-issue-blanking-non-param-type-relationships.patch create mode 100644 0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch create mode 100644 0006-Added-test-case-duplicating-Matt-s-failure-case.patch create mode 100644 0007-Added-more-assertions-to-prior-test-case.patch create mode 100644 0008-Workaround-for-artifacts-of-type-sniffing-errors-in-.patch create mode 100644 0009-Removed-unused-versioned-config-implementation.patch create mode 100644 0010-Removed-oldstyle-versioned-configurations.patch create mode 100644 0011-spec-file-for-v0.15.1-3.patch diff --git a/.gitignore b/.gitignore index 7ce12ca..e435748 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /wallaby-0.12.4.tar.gz /wallaby-0.13.0.tar.gz /wallaby-0.13.1.tar.gz +/wallaby-0.15.1.tar.gz diff --git a/0001-Fixes-to-skeleton-group-support.patch b/0001-Fixes-to-skeleton-group-support.patch new file mode 100644 index 0000000..6f281f0 --- /dev/null +++ b/0001-Fixes-to-skeleton-group-support.patch @@ -0,0 +1,74 @@ +From 2c584644a5fc8e0dd0b1bc0e3919c27a112fd9ff Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Thu, 21 Jun 2012 16:18:07 -0500 +Subject: [PATCH 01/11] Fixes to skeleton group support. + +In older versions of Wallaby, the default group configuration +could take precedence over the skeleton group configuration +for walk-in nodes. This commit fixes that behavior and adds +regression tests to identify it in the future. +--- + lib/mrg/grid/config/Configuration.rb | 4 ++-- + spec/skeleton_group_spec.rb | 17 ++++++++++++++++- + 2 files changed, 18 insertions(+), 3 deletions(-) + +diff --git a/lib/mrg/grid/config/Configuration.rb b/lib/mrg/grid/config/Configuration.rb +index 4adc725..36629e7 100644 +--- a/lib/mrg/grid/config/Configuration.rb ++++ b/lib/mrg/grid/config/Configuration.rb +@@ -425,7 +425,7 @@ module Mrg + + return 0 if version == 0 + +- groups = Store::ENABLE_SKELETON_GROUP ? [skel, default] : [default] ++ groups = Store::ENABLE_SKELETON_GROUP ? [default, skel] : [default] + toc, = VersionedNodeConfig.find_freshest(:select_by=>{:node=>VersionedNode[to]}, :group_by=>[:node], :version=>ver) + + unless toc +@@ -448,7 +448,7 @@ module Mrg + + def internal_set_node_config(node, config) + node_obj = VersionedNode[node] +- vnc = VersionedNodeConfig.create(:version=>self, :node=>node_obj, :config=>config) ++ vnc = VersionedNodeConfig.create(:version=>self, :node=>node_obj, :config=>config) + # vnc.send(:update, :created, self.version) + end + end +diff --git a/spec/skeleton_group_spec.rb b/spec/skeleton_group_spec.rb +index b423bcd..838b9a5 100644 +--- a/spec/skeleton_group_spec.rb ++++ b/spec/skeleton_group_spec.rb +@@ -27,7 +27,7 @@ module Mrg + end + + ["when another node exists at activation", "when no other nodes exist at activation"].each do |dowhen| +- it "should give new #{kind} nodes the last-activated configuration for the skeleton group #{dowhen}" do ++ it "should give new #{kind} nodes the last-activated configuration for the skeleton group #{dowhen} and there is no default group" do + @store.addParam("FOO") + n_expected = @store.addNode("blah") if dowhen == "when another node exists at activation" + g = @store.getGroupByName(Group::SKELETON_GROUP_NAME) +@@ -38,6 +38,21 @@ module Mrg + n = @store.send(msg, "fake") + n.getConfig("version"=>::Rhubarb::Util::timestamp)["FOO"].should == "BAR" + end ++ ++ it "should give new #{kind} nodes the last-activated configuration for the skeleton group #{dowhen} and there is a default group" do ++ @store.addParam("FOO") ++ @store.getDefaultGroup.modifyParams("REPLACE", {"FOO"=>"ARGH"}, {}) ++ @store.activateConfiguration ++ n_expected = @store.addNode("blah") if dowhen == "when another node exists at activation" ++ g = @store.getGroupByName(Group::SKELETON_GROUP_NAME) ++ g.modifyParams("REPLACE", {"FOO"=>"BAR"}) ++ @store.activateConfiguration ++ g.modifyParams("REPLACE", {"FOO"=>"BLAH"}) ++ ++ n = @store.send(msg, "fake") ++ ++ n.getConfig("version"=>::Rhubarb::Util::timestamp)["FOO"].should == "BAR" ++ end + end + end + +-- +1.7.7.6 + diff --git a/0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch b/0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch deleted file mode 100644 index 83d307b..0000000 --- a/0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch +++ /dev/null @@ -1,149 +0,0 @@ -From 11f90714b98ec5133d1863e9e693834470145efa Mon Sep 17 00:00:00 2001 -From: Robert Rati -Date: Thu, 9 Feb 2012 13:47:44 -0600 -Subject: [PATCH 1/5] replace-* commands will blank a field if no list is - provided - ---- - lib/mrg/grid/config/shell/cmd_relationships.rb | 89 +++++++++++------------ - 1 files changed, 43 insertions(+), 46 deletions(-) - -diff --git a/lib/mrg/grid/config/shell/cmd_relationships.rb b/lib/mrg/grid/config/shell/cmd_relationships.rb -index 4186d8a..d9dc57b 100644 ---- a/lib/mrg/grid/config/shell/cmd_relationships.rb -+++ b/lib/mrg/grid/config/shell/cmd_relationships.rb -@@ -18,24 +18,28 @@ module Mrg - module Grid - module Config - module Shell -- module GroupMembershipOps -- def act -- result = 0 -- -- cname = Mrg::Grid::Config.constants.grep(/^#{target_type.capitalize}/).select {|x| Mrg::Grid::Config.const_get(x).ancestors.include?(::SPQR::Manageable) }[0] -+ module VerifyOps -+ def verify_input - bad_target = verify_target - bad_names = verify_names -- if (bad_target != []) || (bad_names != []) -- puts "Invalid #{options[0][:opt_name]}: #{bad_target.inspect}" if bad_target != [] -- puts "Invalid #{options[1][:opt_name].split("[")[0]}: #{bad_names.inspect}" if bad_names != [] -- result = 1 -- else -- @names.each do |n| -- obj = store.getNode(n) -- obj.modifyMemberships(command, [@target], {}) -- end -+ if (not bad_target.empty?) || (not bad_names.empty?) -+ bad_target.each {|n| puts "#{options[0][:opt_name].split('-')[0].downcase} '#{n}' does not exist"} -+ bad_names.each {|n| puts "#{options[1][:opt_name].split('-')[0].downcase} '#{n}' does not exist"} -+ exit!(1, "Invalid input") - end -- result -+ end -+ end -+ -+ module GroupMembershipOps -+ include VerifyOps -+ -+ def act -+ verify_input -+ @names.each do |n| -+ obj = store.getNode(n) -+ obj.modifyMemberships(command, [@target], {}) -+ end -+ return 0 - end - end - -@@ -70,6 +74,8 @@ module Mrg - end - - module RelationshipOps -+ include VerifyOps -+ - def supports_options - false - end -@@ -113,7 +119,7 @@ module Mrg - opts = 0 - self.options.each do |opt| - input = args.shift -- if input == nil -+ if input == nil and command != "REPLACE" - exit!(1, "you must specify a #{opt[:opt_name]}") - elsif opts < (self.options.length-1) - @target = input -@@ -128,9 +134,9 @@ module Mrg - end - else - @names = [] -- @names << input -+ @names << input if input and not input.empty? - args.each do |a| -- @names << a -+ @names << a if not a.empty? - end - @names.uniq! - end -@@ -179,38 +185,29 @@ module Mrg - end - - def act -- result = 0 -- -+ verify_input - cname = Mrg::Grid::Config.constants.grep(/^#{target_type.capitalize}/).select {|x| Mrg::Grid::Config.const_get(x).ancestors.include?(::SPQR::Manageable) }[0] -- bad_target = verify_target -- bad_names = verify_names -- if (bad_target != []) || (bad_names != []) -- puts "Invalid #{options[0][:opt_name]}: #{bad_target.inspect}" if bad_target != [] -- puts "Invalid #{options[1][:opt_name].split("[")[0]}: #{bad_names.inspect}" if bad_names != [] -- result = 1 -+ smethod = Mrg::Grid::MethodUtils.find_store_method("get#{cname.slice(0,5)}") -+ obj = store.send(smethod, @target) -+ if cname == "Node" and sub_group_for_node -+ obj = obj.identity_group -+ cname = "Group" -+ end -+ cmethod = Mrg::Grid::MethodUtils.find_method(name_type.slice(0,5).capitalize, cname).select {|m| m if m.index("modify") != nil}[0] -+ if (@priority == nil) || (command != "ADD") -+ obj.send(cmethod, command, @names, {}) - else -- smethod = Mrg::Grid::MethodUtils.find_store_method("get#{cname.slice(0,5)}") -- obj = store.send(smethod, @target) -- if cname == "Node" and sub_group_for_node -- obj = obj.identity_group -- cname = "Group" -- end -- cmethod = Mrg::Grid::MethodUtils.find_method(name_type.slice(0,5).capitalize, cname).select {|m| m if m.index("modify") != nil}[0] -- if (@priority == nil) || (command != "ADD") -- obj.send(cmethod, command, @names, {}) -- else -- get = Mrg::Grid::Config.const_get(cname).get_from_set(cmethod.to_sym) -- cur = obj.send(get) -- cnt = 0 -- @names.select {|x| cur.include?(x)}.each {|y| cnt += 1 if cur.index(y) < @priority} -- cur = cur - @names -- if command == "ADD" -- cur.insert(@priority - cnt, *@names).compact! -- end -- obj.send(cmethod, "REPLACE", cur, {}) -+ get = Mrg::Grid::Config.const_get(cname).get_from_set(cmethod.to_sym) -+ cur = obj.send(get) -+ cnt = 0 -+ @names.select {|x| cur.include?(x)}.each {|y| cnt += 1 if cur.index(y) < @priority} -+ cur = cur - @names -+ if command == "ADD" -+ cur.insert(@priority - cnt, *@names).compact! - end -+ obj.send(cmethod, "REPLACE", cur, {}) - end -- result -+ return 0 - end - end - --- -1.7.7.6 - diff --git a/0002-Added-command-to-remove-a-snapshot.patch b/0002-Added-command-to-remove-a-snapshot.patch deleted file mode 100644 index 2d55fc4..0000000 --- a/0002-Added-command-to-remove-a-snapshot.patch +++ /dev/null @@ -1,46 +0,0 @@ -From 8bf41ed6c4330c90966f10ff7096bbe67167c221 Mon Sep 17 00:00:00 2001 -From: Robert Rati -Date: Thu, 8 Mar 2012 22:14:40 -0600 -Subject: [PATCH 2/5] Added command to remove a snapshot - ---- - lib/mrg/grid/config/shell/cmd_snapshot.rb | 23 +++++++++++++++++++++++ - 1 files changed, 23 insertions(+), 0 deletions(-) - -diff --git a/lib/mrg/grid/config/shell/cmd_snapshot.rb b/lib/mrg/grid/config/shell/cmd_snapshot.rb -index 942310b..7fe035d 100644 ---- a/lib/mrg/grid/config/shell/cmd_snapshot.rb -+++ b/lib/mrg/grid/config/shell/cmd_snapshot.rb -@@ -65,6 +65,29 @@ module Mrg - :makeSnapshot - end - end -+ -+ class RemoveSnapshot < Command -+ include SnapshotBase -+ -+ def self.opname -+ "remove-snapshot" -+ end -+ -+ def self.opargs -+ " SNAPNAME" -+ end -+ -+ def self.description -+ "Removes a snapshot with a given name." -+ end -+ -+ register_callback :after_option_parsing, :check_name -+ -+ private -+ def storeop -+ :removeSnapshot -+ end -+ end - - class LoadSnapshot < Command - include SnapshotBase --- -1.7.7.6 - diff --git a/0002-updated-spec-for-0.15.1-2.patch b/0002-updated-spec-for-0.15.1-2.patch new file mode 100644 index 0000000..538f602 --- /dev/null +++ b/0002-updated-spec-for-0.15.1-2.patch @@ -0,0 +1,26 @@ +From a263c2f088be209adfca853d856667aa7c637ab7 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Thu, 21 Jun 2012 16:20:08 -0500 +Subject: [PATCH 02/11] updated spec for 0.15.1-2 + +--- + wallaby.spec.in | 3 +++ + 1 files changed, 3 insertions(+), 0 deletions(-) + +diff --git a/wallaby.spec.in b/wallaby.spec.in +index 8358ead..5683094 100644 +--- a/wallaby.spec.in ++++ b/wallaby.spec.in +@@ -292,6 +292,9 @@ fi + + %changelog + ++* Thu Jun 21 2012 willb - 0.15.1-2 ++- fixes to skeleton group support for walk-in nodes ++ + * Wed Jun 20 2012 willb - 0.15.1-1 + - fixes bz 834141 + - packaging improvements +-- +1.7.7.6 + diff --git a/0003-More-resilient-activation-on-F17.patch b/0003-More-resilient-activation-on-F17.patch new file mode 100644 index 0000000..50de843 --- /dev/null +++ b/0003-More-resilient-activation-on-F17.patch @@ -0,0 +1,42 @@ +From 4eb89e810d9b174c1d995f070cbf947fac04bdce Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Thu, 21 Jun 2012 22:51:23 -0500 +Subject: [PATCH 03/11] More resilient activation on F17. + +This is both a workaround for a problem with QMF on F17 (viz., +we can't send events) and a general improvement to configuration +activation. Specifically, configuration events are a performance +optimization but are not required for correctness. Before this +commit, failure to send a configuration event would result in failure +of the Store#activateConfiguration API method. (It would also leave +node metadata in an inconsistent state.) Now, failure to send a +configuration event merely results in a warning. +--- + lib/mrg/grid/config/Store.rb | 8 ++++++-- + 1 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/lib/mrg/grid/config/Store.rb b/lib/mrg/grid/config/Store.rb +index 279c44a..efe0296 100644 +--- a/lib/mrg/grid/config/Store.rb ++++ b/lib/mrg/grid/config/Store.rb +@@ -718,11 +718,15 @@ module Mrg + unless explicit_nodelist + validate_and_activate(false, [Group.DEFAULT_GROUP], this_version) unless ConfigVersion.hasVersionedNodeConfig(Group::DEFAULT_GROUP_NAME, this_version) + end +- DirtyElement.delete_all + + log.debug "in validate_and_activate; just deleted dirty elements; count is #{DirtyElement.count}" ++ DirtyElement.delete_all + +- config_events_to(dirty_nodes, this_version, all_nodes) unless explicit_nodelist ++ begin ++ config_events_to(dirty_nodes, this_version, all_nodes) unless explicit_nodelist ++ rescue Exception=>ex ++ warnings << "Couldn't send configuration events: #{ex.inspect}" ++ end + + dirty_nodes.each {|dn| dn.last_updated_version = this_version if dn.respond_to? :last_updated_version } + +-- +1.7.7.6 + diff --git a/0003-additional-logging-and-failsafe-in-Parameter-default.patch b/0003-additional-logging-and-failsafe-in-Parameter-default.patch deleted file mode 100644 index c0693b4..0000000 --- a/0003-additional-logging-and-failsafe-in-Parameter-default.patch +++ /dev/null @@ -1,35 +0,0 @@ -From 2e4dafae57f2e47ae9d94de08691daa9edaf3235 Mon Sep 17 00:00:00 2001 -From: Will Benton -Date: Tue, 13 Mar 2012 18:03:47 -0500 -Subject: [PATCH 3/5] additional logging and failsafe in Parameter#default - ---- - lib/mrg/grid/config/Parameter.rb | 8 ++++++-- - 1 files changed, 6 insertions(+), 2 deletions(-) - -diff --git a/lib/mrg/grid/config/Parameter.rb b/lib/mrg/grid/config/Parameter.rb -index 530a513..327bca3 100644 ---- a/lib/mrg/grid/config/Parameter.rb -+++ b/lib/mrg/grid/config/Parameter.rb -@@ -92,12 +92,16 @@ module Mrg - # default - # * default (lstr/O) - def default -- log.debug "getDefault called on param #{self.inspect}" -+ log.debug "default called on param #{self.inspect}" - log.warn "param #{self.name} is a must_change parameter; its default value is meaningless by definition" if self.must_change -+ - # Assign values to output parameters - self.default_val ||= "" -+ -+ log.warn "param #{self.name} does not have a String value; it has a #{self.default_val.class} value" unless self.default_val.is_a?(String) -+ - # Return value -- return self.default_val -+ return (self.default_val.to_s) - end - - # setDefault --- -1.7.7.6 - diff --git a/0004-Added-getMustChangeParams-to-Store-in-config-client.patch b/0004-Added-getMustChangeParams-to-Store-in-config-client.patch deleted file mode 100644 index d753939..0000000 --- a/0004-Added-getMustChangeParams-to-Store-in-config-client.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 66fc917646a355d2ef7a563933d517aa77be412f Mon Sep 17 00:00:00 2001 -From: Robert Rati -Date: Wed, 21 Mar 2012 10:05:03 -0500 -Subject: [PATCH 4/5] Added getMustChangeParams to Store in config-client - ---- - lib/mrg/grid/config-client.rb | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/lib/mrg/grid/config-client.rb b/lib/mrg/grid/config-client.rb -index b4cba82..0604eb8 100644 ---- a/lib/mrg/grid/config-client.rb -+++ b/lib/mrg/grid/config-client.rb -@@ -437,6 +437,10 @@ module Mrg - get_object(check_result(@qmfo.getParam(name)).obj, Parameter) - end - -+ def getMustChangeParams -+ check_result(@qmfo.getMustChangeParams).params -+ end -+ - def removeParam(name) - check_result(@qmfo.removeParam(name)) - nil --- -1.7.7.6 - diff --git a/0004-Spurious-configuration-removal-off-by-default.patch b/0004-Spurious-configuration-removal-off-by-default.patch new file mode 100644 index 0000000..f96450b --- /dev/null +++ b/0004-Spurious-configuration-removal-off-by-default.patch @@ -0,0 +1,32 @@ +From 82e6ef71c2fad1d448a34e9458f5d79c6b6e69c8 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Thu, 21 Jun 2012 22:55:16 -0500 +Subject: [PATCH 04/11] Spurious configuration removal off by default. + +The Wallaby agent no longer removes possibly-spurious versioned +configurations on startup. (This is a cleanup measure from a bug +in a very old version of Wallaby; it is unlikely necessary any more.) +To enable this behavior, set WALLABY_REMOVE_SPURIOUS_CONFIGS to yes +or true in the environment in which wallaby-agent runs. +--- + bin/wallaby-agent | 4 +++- + 1 files changed, 3 insertions(+), 1 deletions(-) + +diff --git a/bin/wallaby-agent b/bin/wallaby-agent +index 5bef195..f596f8b 100755 +--- a/bin/wallaby-agent ++++ b/bin/wallaby-agent +@@ -165,7 +165,9 @@ begin + $wallaby_log = Mrg::Grid::Config::Store.log + + begin +- Mrg::Grid::Config::Store.find_by_id(0).storeinit("remove-spurious"=>"yes") ++ options = {} ++ options["remove-spurious"] = "yes" if (ENV["WALLABY_REMOVE_SPURIOUS_CONFIGS"] && ENV["WALLABY_REMOVE_SPURIOUS_CONFIGS"] =~ /^(true|yes)/i) ++ Mrg::Grid::Config::Store.find_by_id(0).storeinit(options) + [:default, :snapshot].each do |which| + Rhubarb::Persistence::dbs[which].execute("vacuum") + end +-- +1.7.7.6 + diff --git a/0005-Fixed-issue-blanking-non-param-type-relationships.patch b/0005-Fixed-issue-blanking-non-param-type-relationships.patch deleted file mode 100644 index 0b67938..0000000 --- a/0005-Fixed-issue-blanking-non-param-type-relationships.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 91c5fdb80be5a3687678613e57e77d28e3b9016b Mon Sep 17 00:00:00 2001 -From: Robert Rati -Date: Wed, 21 Mar 2012 14:26:22 -0500 -Subject: [PATCH 5/5] Fixed issue blanking non-param type relationships - ---- - lib/mrg/grid/config/shell/cmd_relationships.rb | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/lib/mrg/grid/config/shell/cmd_relationships.rb b/lib/mrg/grid/config/shell/cmd_relationships.rb -index d9dc57b..5478116 100644 ---- a/lib/mrg/grid/config/shell/cmd_relationships.rb -+++ b/lib/mrg/grid/config/shell/cmd_relationships.rb -@@ -126,7 +126,7 @@ module Mrg - else - if (name_type == "param") && (target_type != "subsystem") && (command != "REMOVE") - @names = {} -- args.unshift(input) -+ args.unshift(input) if input - args.each do |a| - tmp = a.split("=", 2) - @names[tmp[0]] = 0 if tmp.length == 1 --- -1.7.7.6 - diff --git a/0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch b/0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch new file mode 100644 index 0000000..3cdb16e --- /dev/null +++ b/0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch @@ -0,0 +1,25 @@ +From 109a79b246858b79344c04ee80950b4d6004d0a4 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Thu, 21 Jun 2012 23:05:01 -0500 +Subject: [PATCH 05/11] updated spec again in advance of 0.15.1-2 build + +--- + wallaby.spec.in | 2 ++ + 1 files changed, 2 insertions(+), 0 deletions(-) + +diff --git a/wallaby.spec.in b/wallaby.spec.in +index 5683094..61cefc8 100644 +--- a/wallaby.spec.in ++++ b/wallaby.spec.in +@@ -294,6 +294,8 @@ fi + + * Thu Jun 21 2012 willb - 0.15.1-2 + - fixes to skeleton group support for walk-in nodes ++- more resilient Store#activateConfiguration in the face of event failure/workaround for QMF event problems on F17 ++- wallaby-agent no longer deletes potentially-spurious configurations by default + + * Wed Jun 20 2012 willb - 0.15.1-1 + - fixes bz 834141 +-- +1.7.7.6 + diff --git a/0006-Added-test-case-duplicating-Matt-s-failure-case.patch b/0006-Added-test-case-duplicating-Matt-s-failure-case.patch new file mode 100644 index 0000000..d7e0098 --- /dev/null +++ b/0006-Added-test-case-duplicating-Matt-s-failure-case.patch @@ -0,0 +1,66 @@ +From 6b275fe08d44cd86131cfe0bcdc2c91b607c8b03 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Fri, 22 Jun 2012 19:00:58 -0500 +Subject: [PATCH 06/11] Added test case duplicating Matt's failure case. + +--- + spec/skeleton_group_spec.rb | 43 ++++++++++++++++++++++++++++++++++++++++++- + 1 files changed, 42 insertions(+), 1 deletions(-) + +diff --git a/spec/skeleton_group_spec.rb b/spec/skeleton_group_spec.rb +index 838b9a5..839eda6 100644 +--- a/spec/skeleton_group_spec.rb ++++ b/spec/skeleton_group_spec.rb +@@ -63,7 +63,48 @@ module Mrg + n.memberships.should_not include(Group::SKELETON_GROUP_NAME) + end + +- ++ it "should not exhibit Matt's failure case with walkin nodes not getting the skeleton group config" do ++ default = @store.getDefaultGroup ++ skel = @store.getSkeletonGroup ++ ++ # wallaby add-features-to-group +++DEFAULT Master NodeAccess SharedPort ++ default.modifyFeatures("ADD", %w{Master NodeAccess SharedPort}, {}) ++ ++ # wallaby add-params-to-group +++DEFAULT 'SHARED_PORT_ARGS=-p 9620' 'CONDOR_HOST=$(QMF_BROKER_HOST)' 'ALLOW_WRITE=*' 'ALLOW_READ=*' 'ALLOW_NEGOTIATOR=$(ALLOW_WRITE)' 'ALLOW_NEGOTIATOR_SCHEDD=$(ALLOW_WRITE)' UID_DOMAIN=central-manager ++ default.modifyParams("ADD", {'SHARED_PORT_ARGS'=>'-p 9620', 'CONDOR_HOST'=>'$(QMF_BROKER_HOST)', 'ALLOW_WRITE'=>'*', 'ALLOW_READ'=>'*', 'ALLOW_NEGOTIATOR'=>'$(ALLOW_WRITE)', 'ALLOW_NEGOTIATOR_SCHEDD'=>'$(ALLOW_WRITE)', 'UID_DOMAIN'=>'central-manager'}, {}) ++ ++ # wallaby add-features-to-group +++SKEL ExecuteNode ++ skel.modifyFeatures("ADD", %w{ExecuteNode}, {}) ++ ++ # wallaby add-params-to-group +++SKEL START=TRUE SUSPEND=FALSE ++ skel.modifyParams("ADD", {'START'=>'TRUE', 'SUSPEND'=>'FALSE'}, {}) ++ ++ # wallaby add-node central-manager ++ cm = @store.addNode('central-manager') ++ ++ # wallaby add-param COLLECTOR_UPDATE_INTERVAL (needs to go to base DB) ++ @store.addParam('COLLECTOR_UPDATE_INTERVAL') ++ ++ # wallaby remove-nodes-from-group +++SKEL central-manager ++ cm.modifyMemberships("REPLACE", cm.memberships - %w{+++SKEL}, {}) ++ ++ # wallaby add-features-to-node central-manager CentralManager Scheduler (maybe: JobServer) ++ cm.identity_group.modifyFeatures("ADD", %w{CentralManager Scheduler JobServer}, {}) ++ ++ # wallaby add-params-to-node central-manager COLLECTOR_UPDATE_INTERVAL=15 ++ cm.identity_group.modifyParams("ADD", {"COLLECTOR_UPDATE_INTERVAL"=>15}) ++ ++ # wallaby activate ++ @store.activateConfiguration.should == [{}, []] ++ ++ # newly checked-in nodes should get skeleton group configuration ++ wi = @store.getNode("walk-in") ++ wi_config = wi.getConfig("version"=>::Rhubarb::Util::timestamp) ++ daemons = wi_config["DAEMON_LIST"].split(",").map {|s| s.strip} ++ daemons.should include("STARTD") ++ wi_config["START"].should == "TRUE" ++ wi_config["SUSPEND"].should == "FALSE" ++ end + + it "should publish the skeleton group over the API" do + @store.getSkeletonGroup.name.should == Group::SKELETON_GROUP_NAME +-- +1.7.7.6 + diff --git a/0007-Added-more-assertions-to-prior-test-case.patch b/0007-Added-more-assertions-to-prior-test-case.patch new file mode 100644 index 0000000..19bcd47 --- /dev/null +++ b/0007-Added-more-assertions-to-prior-test-case.patch @@ -0,0 +1,74 @@ +From 031f6d977a1b73e40bb6b583de0fa13705b40e7f Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Fri, 22 Jun 2012 20:34:22 -0500 +Subject: [PATCH 07/11] Added more assertions to prior test case. + +--- + spec/skeleton_group_spec.rb | 37 +++++++++++++++++++++++++++++-------- + 1 files changed, 29 insertions(+), 8 deletions(-) + +diff --git a/spec/skeleton_group_spec.rb b/spec/skeleton_group_spec.rb +index 839eda6..d6816fc 100644 +--- a/spec/skeleton_group_spec.rb ++++ b/spec/skeleton_group_spec.rb +@@ -66,6 +66,13 @@ module Mrg + it "should not exhibit Matt's failure case with walkin nodes not getting the skeleton group config" do + default = @store.getDefaultGroup + skel = @store.getSkeletonGroup ++ ++ # nodes checked in before the activate should get the updated skeleton group ++ # configuration after activate ++ old_wi = @store.getNode("old-walk-in") ++ ++ # wallaby load /var/lib/condor-wallaby-base-db/condor-base-db.snapshot ++ # (handled by the "before" clause above) + + # wallaby add-features-to-group +++DEFAULT Master NodeAccess SharedPort + default.modifyFeatures("ADD", %w{Master NodeAccess SharedPort}, {}) +@@ -89,21 +96,35 @@ module Mrg + cm.modifyMemberships("REPLACE", cm.memberships - %w{+++SKEL}, {}) + + # wallaby add-features-to-node central-manager CentralManager Scheduler (maybe: JobServer) +- cm.identity_group.modifyFeatures("ADD", %w{CentralManager Scheduler JobServer}, {}) ++ cm.identity_group.modifyFeatures("ADD", %w{CentralManager Scheduler}, {}) + + # wallaby add-params-to-node central-manager COLLECTOR_UPDATE_INTERVAL=15 + cm.identity_group.modifyParams("ADD", {"COLLECTOR_UPDATE_INTERVAL"=>15}) +- ++ + # wallaby activate + @store.activateConfiguration.should == [{}, []] + +- # newly checked-in nodes should get skeleton group configuration ++ # newly checked-in nodes should get the most recently activated skeleton group configuration + wi = @store.getNode("walk-in") +- wi_config = wi.getConfig("version"=>::Rhubarb::Util::timestamp) +- daemons = wi_config["DAEMON_LIST"].split(",").map {|s| s.strip} +- daemons.should include("STARTD") +- wi_config["START"].should == "TRUE" +- wi_config["SUSPEND"].should == "FALSE" ++ ++ # check nodes created before and after activation ++ [old_wi, wi].each do |wi_node| ++ ++ # check activated and current configs for each ++ [wi_node.getConfig("version"=>::Rhubarb::Util::timestamp), wi_node.getConfig].each do |wi_config| ++ ++ daemons = wi_config["DAEMON_LIST"].split(",").map {|s| s.strip} ++ ++ # checks for ExecuteNode ++ daemons.should include("STARTD") ++ ++ # checks for +++SKEL param settings ++ wi_config["START"].should == "TRUE" ++ wi_config["SUSPEND"].should == "FALSE" ++ end ++ ++ wi_node.memberships.should include("+++SKEL") ++ end + end + + it "should publish the skeleton group over the API" do +-- +1.7.7.6 + diff --git a/0008-Workaround-for-artifacts-of-type-sniffing-errors-in-.patch b/0008-Workaround-for-artifacts-of-type-sniffing-errors-in-.patch new file mode 100644 index 0000000..69cce42 --- /dev/null +++ b/0008-Workaround-for-artifacts-of-type-sniffing-errors-in-.patch @@ -0,0 +1,44 @@ +From f3d8b317a29e0c76690e75aca9e5fadaf5ce0766 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Mon, 25 Jun 2012 17:43:00 -0500 +Subject: [PATCH 08/11] Workaround for artifacts of type-sniffing errors in + serialized objects. + +--- + lib/mrg/grid/config/ConfigValidating.rb | 5 ++++- + lib/mrg/grid/config/Configuration.rb | 3 ++- + 2 files changed, 6 insertions(+), 2 deletions(-) + +diff --git a/lib/mrg/grid/config/ConfigValidating.rb b/lib/mrg/grid/config/ConfigValidating.rb +index a01e097..da7f8c4 100644 +--- a/lib/mrg/grid/config/ConfigValidating.rb ++++ b/lib/mrg/grid/config/ConfigValidating.rb +@@ -133,7 +133,10 @@ module Mrg + end + + def getConfig +- @__my_config ||= original_object.getConfig ++ @__my_config ||= begin ++ cnf = original_object.getConfig ++ cnf.inject({}) {|acc,(k,v)| acc[k]=v.to_s ; acc} ++ end + end + + def config=(cfg) +diff --git a/lib/mrg/grid/config/Configuration.rb b/lib/mrg/grid/config/Configuration.rb +index 36629e7..fd82cf1 100644 +--- a/lib/mrg/grid/config/Configuration.rb ++++ b/lib/mrg/grid/config/Configuration.rb +@@ -98,7 +98,8 @@ module Mrg + end + + # applies the value supplied to the config, appending if necessary +- def self.apply!(config, param, value, use_ssp=false) ++ def self.apply!(config, param, supplied_value, use_ssp=false) ++ value = supplied_value.to_s + if (value && match = append_match(value)) + supplied_value = value + value = value_string(match) +-- +1.7.7.6 + diff --git a/0009-Removed-unused-versioned-config-implementation.patch b/0009-Removed-unused-versioned-config-implementation.patch new file mode 100644 index 0000000..ab3eb33 --- /dev/null +++ b/0009-Removed-unused-versioned-config-implementation.patch @@ -0,0 +1,73 @@ +From d5abc85784581603ac18239b50ee4c48ed73ea64 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Mon, 25 Jun 2012 21:31:25 -0500 +Subject: [PATCH 09/11] Removed unused versioned-config implementation. + +This commit removes the 'normalized' versioned-configuration +implementation. It was never very fast, never fully tested, and +only ever available as an experimental alternative to the +oldstyle serialized versioned-configuration implementation. +--- + lib/mrg/grid/config/Configuration.rb | 32 -------------------------------- + lib/mrg/grid/config/dbmeta.rb | 2 +- + 2 files changed, 1 insertions(+), 33 deletions(-) + +diff --git a/lib/mrg/grid/config/Configuration.rb b/lib/mrg/grid/config/Configuration.rb +index fd82cf1..61f1de3 100644 +--- a/lib/mrg/grid/config/Configuration.rb ++++ b/lib/mrg/grid/config/Configuration.rb +@@ -527,38 +527,6 @@ module Mrg + end + end + +- class VersionedParam +- include ::Rhubarb::Persisting +- +- declare_column :name, :text +- +- def self.[](nm) +- find_first_by_name(nm) || create(:name=>nm) +- end +- end +- +- # (mostly-)normalized model of versioned config +- class VersionedNodeParamMapping +- include ::Rhubarb::Persisting +- +- declare_column :version, :integer, references(ConfigVersion, :on_delete=>:cascade) +- declare_column :node, :integer, references(VersionedNode, :on_delete=>:cascade) +- declare_column :param, :integer, references(VersionedParam, :on_delete=>:cascade) +- declare_column :val, :text +- +- declare_index_on :node +- declare_index_on :version +- +- alias :rhubarb_initialize :initialize +- +- def initialize(tup) +- rhubarb_initialize(tup) +- update(:created, self.version.version) +- self +- end +- +- end +- + # "serialized object" model of versioned config + class VersionedNodeConfig + include ::Rhubarb::Persisting +diff --git a/lib/mrg/grid/config/dbmeta.rb b/lib/mrg/grid/config/dbmeta.rb +index 6e5b7eb..44cba83 100644 +--- a/lib/mrg/grid/config/dbmeta.rb ++++ b/lib/mrg/grid/config/dbmeta.rb +@@ -18,7 +18,7 @@ module Mrg + module Grid + module Config + MAIN_DB_TABLES=[Mrg::Grid::Config::Feature, Mrg::Grid::Config::Group, Mrg::Grid::Config::Parameter, Mrg::Grid::Config::Subsystem, Mrg::Grid::Config::Node, Mrg::Grid::Config::ArcLabel, Mrg::Grid::Config::ParameterArc, Mrg::Grid::Config::FeatureArc, Mrg::Grid::Config::FeatureParams, Mrg::Grid::Config::NodeMembership, Mrg::Grid::Config::GroupParams, Mrg::Grid::Config::GroupFeatures, Mrg::Grid::Config::SubsystemParams, Mrg::Grid::Config::DirtyElement] +- SNAP_DB_TABLES=[Mrg::Grid::Config::Snapshot, Mrg::Grid::Config::ConfigVersion, Mrg::Grid::Config::VersionedNode, Mrg::Grid::Config::VersionedParam, Mrg::Grid::Config::VersionedNodeConfig, Mrg::Grid::Config::VersionedNodeParamMapping] ++ SNAP_DB_TABLES=[Mrg::Grid::Config::Snapshot, Mrg::Grid::Config::ConfigVersion, Mrg::Grid::Config::VersionedNode, Mrg::Grid::Config::VersionedNodeConfig] + DBVERSION = 6 + DBMIGRATIONS = [] + +-- +1.7.7.6 + diff --git a/0010-Removed-oldstyle-versioned-configurations.patch b/0010-Removed-oldstyle-versioned-configurations.patch new file mode 100644 index 0000000..7b9f3e8 --- /dev/null +++ b/0010-Removed-oldstyle-versioned-configurations.patch @@ -0,0 +1,111 @@ +From 99cc17647e3dea7b4475e53bdfbfe89afc8e7c9c Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Mon, 25 Jun 2012 21:34:19 -0500 +Subject: [PATCH 10/11] Removed oldstyle versioned configurations. + +This commit removes the oldstyle versioned-configuration implementation. +This implementation was vastly slower (~10x on our torture tests) +than the new lightweight versioned-configuration implementation, +as well as being much less space-efficient in a number of +interesting use cases. Note that Wallaby can still read oldstyle +versioned configurations, but will not generate them any more. +--- + bin/wallaby-agent | 4 ++ + lib/mrg/grid/config/Configuration.rb | 54 +-------------------------------- + 2 files changed, 6 insertions(+), 52 deletions(-) + +diff --git a/bin/wallaby-agent b/bin/wallaby-agent +index f596f8b..3b92679 100755 +--- a/bin/wallaby-agent ++++ b/bin/wallaby-agent +@@ -164,6 +164,10 @@ begin + app.register Mrg::Grid::Config::Store,Mrg::Grid::Config::Node,Mrg::Grid::Config::ConfigVersion,Mrg::Grid::Config::Feature,Mrg::Grid::Config::Group,Mrg::Grid::Config::Parameter,Mrg::Grid::Config::Subsystem,Mrg::Grid::Config::Snapshot,Mrg::Grid::Config::NodeUpdatedNotice,Mrg::Grid::Config::ConfigVersion + $wallaby_log = Mrg::Grid::Config::Store.log + ++ if ENV['WALLABY_OLDSTYLE_VERSIONED_CONFIGS'] ++ Syslog.open {|s| s.warning "You have set WALLABY_OLDSTYLE_VERSIONED_CONFIGS in your environment, but this option is no longer supported. Old versioned configurations will continue to work, but new versioned configurations will be stored in the 'lightweight' style."} ++ end ++ + begin + options = {} + options["remove-spurious"] = "yes" if (ENV["WALLABY_REMOVE_SPURIOUS_CONFIGS"] && ENV["WALLABY_REMOVE_SPURIOUS_CONFIGS"] =~ /^(true|yes)/i) +diff --git a/lib/mrg/grid/config/Configuration.rb b/lib/mrg/grid/config/Configuration.rb +index 61f1de3..c152c63 100644 +--- a/lib/mrg/grid/config/Configuration.rb ++++ b/lib/mrg/grid/config/Configuration.rb +@@ -297,59 +297,12 @@ module Mrg + include ::Rhubarb::Persisting + include ::SPQR::Manageable + +- STORAGE_PLAN = ENV['WALLABY_OLDSTYLE_VERSIONED_CONFIGS'] ? :serialized : :lw_serialized ++ STORAGE_PLAN = :lw_serialized + + def self.whatchanged(node, old_version, new_version) + ConfigUtils.what_params_changed(getVersionedNodeConfig(node, old_version), getVersionedNodeConfig(node, new_version)) + end + +- module SerializedVersionedConfigLookup +- module ClassMethods +- def getVersionedNodeConfig(node, ver=nil) +- ver ||= ::Rhubarb::Util::timestamp +- vnc = VersionedNodeConfig.find_freshest(:select_by=>{:node=>VersionedNode[node]}, :group_by=>[:node], :version=>ver) +- vnc.size == 0 ? {"WALLABY_CONFIG_VERSION"=>"0"} : vnc[0].config +- end +- +- def hasVersionedNodeConfig(node, ver=nil) +- ver ||= ::Rhubarb::Util::timestamp +- vnc, = VersionedNodeConfig.find_freshest(:select_by=>{:node=>VersionedNode[node]}, :group_by=>[:node], :version=>ver) +- vnc && vnc.version.version +- end +- +- # NB: this will refuse to copy over an existing versioned config +- def dupVersionedNodeConfig(from, to, ver=nil) +- ver ||= ::Rhubarb::Util::timestamp +- vnc, = VersionedNodeConfig.find_freshest(:select_by=>{:node=>VersionedNode[from]}, :group_by=>[:node], :version=>ver) +- return 0 unless vnc +- toc, = VersionedNodeConfig.find_freshest(:select_by=>{:node=>VersionedNode[to]}, :group_by=>[:node], :version=>ver) +- toc = VersionedNodeConfig.create(:version=>vnc.version, :node=>VersionedNode[to], :config=>vnc.config.dup) unless toc +- toc.version.version +- end +- end +- +- module InstanceMethods +- def internal_get_node_config(node) +- node_obj = VersionedNode[node] +- cnfo = VersionedNodeConfig.find_by(:version=>self, :node=>node_obj) +- result = (cnfo && cnfo.size == 1 && cnfo[0].config) || {} +- fixed_result = ConfigUtils.fix_config_values(result) +- fixed_result +- end +- +- def internal_set_node_config(node, config) +- node_obj = VersionedNode[node] +- vnc = VersionedNodeConfig.create(:version=>self, :node=>node_obj, :config=>config) +- # vnc.send(:update, :created, self.version) +- end +- end +- +- def self.included(receiver) +- receiver.extend ClassMethods +- receiver.send :include, InstanceMethods +- end +- end +- + module LWSerializedVersionedConfigLookup + module ClassMethods + def getVersionedNodeConfig(node, ver=nil) +@@ -493,10 +446,7 @@ module Mrg + + private + +- case STORAGE_PLAN +- when :serialized then include SerializedVersionedConfigLookup +- when :lw_serialized then include LWSerializedVersionedConfigLookup +- end ++ include LWSerializedVersionedConfigLookup + end + + class VersionedNode +-- +1.7.7.6 + diff --git a/0011-spec-file-for-v0.15.1-3.patch b/0011-spec-file-for-v0.15.1-3.patch new file mode 100644 index 0000000..1320408 --- /dev/null +++ b/0011-spec-file-for-v0.15.1-3.patch @@ -0,0 +1,26 @@ +From 989533bc4e1bb4167dc1d663da57a73b6ae151b3 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Tue, 26 Jun 2012 23:08:25 -0500 +Subject: [PATCH 11/11] spec file for v0.15.1-3 + +--- + wallaby.spec.in | 3 +++ + 1 files changed, 3 insertions(+), 0 deletions(-) + +diff --git a/wallaby.spec.in b/wallaby.spec.in +index 61cefc8..9d4f4b4 100644 +--- a/wallaby.spec.in ++++ b/wallaby.spec.in +@@ -292,6 +292,9 @@ fi + + %changelog + ++* Tue Jun 26 2012 willb - 0.15.1-3 ++- fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) ++ + * Thu Jun 21 2012 willb - 0.15.1-2 + - fixes to skeleton group support for walk-in nodes + - more resilient Store#activateConfiguration in the face of event failure/workaround for QMF event problems on F17 +-- +1.7.7.6 + diff --git a/sources b/sources index db464ac..311ce39 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -7e5b7133453c920d8c99944d29d1d22a wallaby-0.13.1.tar.gz +db77431fccc3ddc201c5186f6fd1487e wallaby-0.15.1.tar.gz diff --git a/wallaby.spec b/wallaby.spec index 5e99c66..dcb4109 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -12,6 +12,11 @@ %global building_for_el5 0 %endif +%if (0%{?fedora} >= 17 && 0%{?rhel} >= 6) +%global +%global wallaby_uid -u 181 +%endif + %if (0%{?fedora} != 0) %global has_sinatra 1 %else @@ -34,19 +39,27 @@ %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} %endif + + Summary: Condor pool configuration service with QMF interface Name: wallaby -Version: 0.13.1 -Release: 2%{?dist} +Version: 0.15.1 +Release: 3%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz -Patch0: 0001-replace-commands-will-blank-a-field-if-no-list-is-pr.patch -Patch1: 0002-Added-command-to-remove-a-snapshot.patch -Patch2: 0003-additional-logging-and-failsafe-in-Parameter-default.patch -Patch3: 0004-Added-getMustChangeParams-to-Store-in-config-client.patch -Patch4: 0005-Fixed-issue-blanking-non-param-type-relationships.patch +Patch0: 0001-Fixes-to-skeleton-group-support.patch +Patch1: 0002-updated-spec-for-0.15.1-2.patch +Patch2: 0003-More-resilient-activation-on-F17.patch +Patch3: 0004-Spurious-configuration-removal-off-by-default.patch +Patch4: 0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch +Patch5: 0006-Added-test-case-duplicating-Matt-s-failure-case.patch +Patch6: 0007-Added-more-assertions-to-prior-test-case.patch +Patch7: 0008-Workaround-for-artifacts-of-type-sniffing-errors-in-.patch +Patch8: 0009-Removed-unused-versioned-config-implementation.patch +Patch9: 0010-Removed-oldstyle-versioned-configurations.patch +Patch10: 0011-spec-file-for-v0.15.1-3.patch %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif @@ -146,6 +159,12 @@ Wallaby. %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 +%patch6 -p1 +%patch7 -p1 +%patch8 -p1 +%patch9 -p1 +%patch10 -p1 %build sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-env @@ -216,15 +235,14 @@ rm -rf %{buildroot} %{_initrddir}/wallaby %endif -%pre +%pre -n ruby-wallaby getent group wallaby >/dev/null || groupadd -r wallaby getent group condor >/dev/null || groupadd -r condor getent passwd wallaby >/dev/null || \ - useradd -r -g condor -d %{_localstatedir}/lib/wallaby -s /sbin/nologin \ + useradd -r %{?wallaby_uid} -g condor -d %{_localstatedir}/lib/wallaby -s /sbin/nologin \ -c "Owner of Wallaby service" wallaby exit 0 - %if %{want_systemd} %post if [ $1 -eq 1 ] ; then @@ -294,6 +312,42 @@ fi %changelog +* Tue Jun 26 2012 willb - 0.15.1-3 +- fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) + +* Thu Jun 21 2012 willb - 0.15.1-2 +- fixes to skeleton group support for walk-in nodes +- more resilient Store#activateConfiguration in the face of event failure/workaround for QMF event problems on F17 +- wallaby-agent no longer deletes potentially-spurious configurations by default + +* Wed Jun 20 2012 willb - 0.15.1-1 +- fixes bz 834141 +- packaging improvements +- base-db documenter improvements from upstream (internal only; not packaged) + +* Wed Jun 13 2012 willb - 0.15.0-1 +- sensible/unified treatment of skeleton group and default group + +* Thu May 31 2012 willb - 0.14.3-1 +- fixes bz 748507 + +* Thu May 10 2012 willb - 0.14.2-2 +- fixes a trivial crashing bug that sneaked in to the prior package + +* Thu May 10 2012 willb - 0.14.2-1 +- packaging improvements: ruby-wallaby now creates the wallaby user, and it does so with a proper UID on F17+ and EL6+ +- base db documentation generator (non-end-user visible) +- shell support for inspecting node configs (non-end-user visible for now, but used by ruby implementations of ccs/ccp; BZ820419) + +* Thu Apr 19 2012 willb - 0.14.1-1 +- preliminary tool support for annotations +- affectedEntities and affectedNodes methods on Store objects +- API minor version bump; API is now 20101031.5 + +* Mon Apr 16 2012 willb - 0.14.0-1 +- "annotation" property and "setAnnotation" method on snapshots and all configuration entities +- API minor version bump + * Mon Mar 26 2012 willb - 0.13.1-2 - F17 fixes From 7dcf6063ecdf1410f1268c77f8f443203e95c5b6 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 21 Jul 2012 22:10:42 -0500 Subject: [PATCH 05/17] - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild --- wallaby.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wallaby.spec b/wallaby.spec index 0e9fa67..1b532e0 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -29,7 +29,7 @@ Summary: Condor pool configuration service with QMF interface Name: wallaby Version: 0.12.4 -Release: 3%{?dist} +Release: 4%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git @@ -275,6 +275,9 @@ fi %endif %changelog +* Sun Jul 22 2012 Fedora Release Engineering - 0.12.4-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + * Fri Feb 10 2012 Vít Ondruch - 0.12.4-3 - Rebuilt for Ruby 1.9.3. From 772d0cb4a447b2a23ee18a2af0cd1313747eebbc Mon Sep 17 00:00:00 2001 From: Will Benton Date: Tue, 14 Aug 2012 15:02:43 -0500 Subject: [PATCH 06/17] updated to wallaby-0.16.0-1 --- .gitignore | 1 + 0001-updated-spec-for-0.12.4.patch | 26 ------ 0001-updated-spec-for-0.16.0.patch | 27 ++++++ sources | 2 +- wallaby.spec | 137 ++++++++++++++++++++++------- 5 files changed, 135 insertions(+), 58 deletions(-) delete mode 100644 0001-updated-spec-for-0.12.4.patch create mode 100644 0001-updated-spec-for-0.16.0.patch diff --git a/.gitignore b/.gitignore index 4149120..8b64216 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /wallaby-0.12.4.tar.gz +/wallaby-0.16.0.tar.gz diff --git a/0001-updated-spec-for-0.12.4.patch b/0001-updated-spec-for-0.12.4.patch deleted file mode 100644 index 5e0f667..0000000 --- a/0001-updated-spec-for-0.12.4.patch +++ /dev/null @@ -1,26 +0,0 @@ -From fcc1044e270f4580eef1828ab3d09d209999fd60 Mon Sep 17 00:00:00 2001 -From: Will Benton -Date: Fri, 9 Dec 2011 15:18:27 -0600 -Subject: [PATCH] updated spec for 0.12.4 - ---- - wallaby.spec.in | 3 +++ - 1 files changed, 3 insertions(+), 0 deletions(-) - -diff --git a/wallaby.spec.in b/wallaby.spec.in -index c22e8ba..8f861c4 100644 ---- a/wallaby.spec.in -+++ b/wallaby.spec.in -@@ -274,6 +274,9 @@ fi - - %changelog - -+* Fri Dec 9 2011 willb - 0.12.4-1 -+- fixes for minor tool problems that came up in 0.12 development -+ - * Wed Nov 23 2011 willb - 0.12.3-1 - - fix for bz 756402 - --- -1.7.4.4 - diff --git a/0001-updated-spec-for-0.16.0.patch b/0001-updated-spec-for-0.16.0.patch new file mode 100644 index 0000000..dd14ddf --- /dev/null +++ b/0001-updated-spec-for-0.16.0.patch @@ -0,0 +1,27 @@ +From 716dba3f7586de04ce2919d93268c1764f9756b6 Mon Sep 17 00:00:00 2001 +From: Will Benton +Date: Tue, 7 Aug 2012 15:13:44 -0500 +Subject: [PATCH] updated spec for 0.16.0 + +--- + wallaby.spec.in | 4 ++++ + 1 files changed, 4 insertions(+), 0 deletions(-) + +diff --git a/wallaby.spec.in b/wallaby.spec.in +index 9d4f4b4..3c58731 100644 +--- a/wallaby.spec.in ++++ b/wallaby.spec.in +@@ -292,6 +292,10 @@ fi + + %changelog + ++* Tue Aug 7 2012 willb - 0.16.0-1 ++- per-method authentication support for wallaby API methods ++- API version bump to 20101031.6 ++ + * Tue Jun 26 2012 willb - 0.15.1-3 + - fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) + +-- +1.7.7.6 + diff --git a/sources b/sources index b7e4c28..21c8e44 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -185b2513e552960f84c0eebaea0f3e72 wallaby-0.12.4.tar.gz +4431cdef936097c079361957239d6f53 wallaby-0.16.0.tar.gz diff --git a/wallaby.spec b/wallaby.spec index 1b532e0..5091f35 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -1,4 +1,3 @@ - %if 0%{?fedora} >= 15 %global want_systemd 1 %global wallaby_agent_environment sysconfig/wallaby-agent-env @@ -13,38 +12,53 @@ %global building_for_el5 0 %endif +%if (0%{?fedora} >= 17 && 0%{?rhel} >= 6) +%global +%global wallaby_uid -u 181 +%endif + %if (0%{?fedora} != 0) %global has_sinatra 1 %else %global has_sinatra 0 %endif +%if (0%{?fedora} >= 17) +%global ruby_abi 1.9.1 +%global ruby_appropriate_install_dir %{ruby_vendorlibdir} +%global requires_ruby_devel 1 +%else +%global requires_ruby_devel 0 +%global ruby_abi 1.8 +%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} +%global ruby_appropriate_install_dir %{ruby_sitelib} +%endif + %if %{building_for_el5} == 1 %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} %endif -%global rubyabi 1.9.1 + Summary: Condor pool configuration service with QMF interface Name: wallaby -Version: 0.12.4 -Release: 4%{?dist} +Version: 0.16.0 +Release: 1%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz -Patch0: 0001-updated-spec-for-0.12.4.patch +Patch0: 0001-updated-spec-for-0.16.0.patch %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif BuildRequires: python2-devel -BuildRequires: ruby-devel -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} BuildRequires: ruby Requires: ruby-qmf >= 0.7.929717 -Requires: ruby-spqr >= 0.3.5 -Requires: ruby-rhubarb >= 0.2.6 +Requires: ruby-spqr >= 0.3.6 +Requires: ruby-rhubarb >= 0.4.3 Requires: ruby-wallaby = %{version}-%{release} Requires: logrotate >= 0.3 %if %{want_systemd} @@ -72,7 +86,7 @@ and manages multiple versions of configurations. %package utils Summary: Utilities to interact with the Wallaby service Group: Applications/System -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} Requires: ruby-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version} @@ -83,11 +97,14 @@ and node configurations and interacting with the Wallaby service. %package -n ruby-wallaby Summary: Wallaby implementation libraries, API, and client library Group: Applications/System -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.5 Requires: ruby-rhubarb >= 0.2.6 +%if %{requires_ruby_devel} +BuildRequires: ruby-devel +%endif Provides: ruby(mrg/grid/config) = %{version} %package -n python-wallaby @@ -105,7 +122,7 @@ that interact with the Wallaby configuration service over QMF. %package -n wallaby-http-server Summary: Wallaby web service interface Group: Applications/System -Requires: ruby(abi) = %{rubyabi} +Requires: ruby(abi) = %{?ruby_abi} Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version}-%{release} @@ -137,9 +154,9 @@ sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-e rm -rf %{buildroot} %endif mkdir -p %{buildroot}/%{_unitdir} -mkdir -p %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/dbmigrate -mkdir -p %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell -mkdir -p %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/util +mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate +mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell +mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util mkdir -p %{buildroot}/%{_bindir} mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby/patches @@ -151,18 +168,18 @@ mkdir -p %{buildroot}/%{_localstatedir}/log/wallaby mkdir -p %{buildroot}/%{python_sitelib}/wallaby cp -p -f bin/wallaby %{buildroot}/%{_bindir} cp -p -f bin/wallaby-agent %{buildroot}/%{_bindir} -cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid -cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/util -cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config -cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell +cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid +cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util +cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config +cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell # These aren't packaged -rm -f %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_force_pull.rb -rm -f %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_force_restart.rb +rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_pull.rb +rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_restart.rb # We only want the http server if we have sinatra available %if %{has_sinatra} == 0 -rm -f %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_http_server.rb +rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %endif -cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_vendorlibdir}/mrg/grid/config/dbmigrate +cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate %if %{want_systemd} == 0 cp -p -f etc/wallaby %{buildroot}/%{_initrddir}/wallaby @@ -198,15 +215,14 @@ rm -rf %{buildroot} %{_initrddir}/wallaby %endif -%pre +%pre -n ruby-wallaby getent group wallaby >/dev/null || groupadd -r wallaby getent group condor >/dev/null || groupadd -r condor getent passwd wallaby >/dev/null || \ - useradd -r -g condor -d %{_localstatedir}/lib/wallaby -s /sbin/nologin \ + useradd -r %{?wallaby_uid} -g condor -d %{_localstatedir}/lib/wallaby -s /sbin/nologin \ -c "Owner of Wallaby service" wallaby exit 0 - %if %{want_systemd} %post if [ $1 -eq 1 ] ; then @@ -266,24 +282,83 @@ fi %if %{building_for_el5} %defattr(-, root, root, -) %endif -%{ruby_vendorlibdir}/mrg/grid/ +%{ruby_appropriate_install_dir}/mrg/grid/ %if %{has_sinatra} -%exclude %{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_http_server.rb +%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %files -n wallaby-http-server -%{ruby_vendorlibdir}/mrg/grid/config/shell/cmd_http_server.rb +%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb %endif %changelog -* Sun Jul 22 2012 Fedora Release Engineering - 0.12.4-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Aug 7 2012 willb - 0.16.0-1 +- per-method authentication support for wallaby API methods +- API version bump to 20101031.6 + +* Tue Jun 26 2012 willb - 0.15.1-3 +- fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) + +* Thu Jun 21 2012 willb - 0.15.1-2 +- fixes to skeleton group support for walk-in nodes +- more resilient Store#activateConfiguration in the face of event failure/workaround for QMF event problems on F17 +- wallaby-agent no longer deletes potentially-spurious configurations by default + +* Wed Jun 20 2012 willb - 0.15.1-1 +- fixes bz 834141 +- packaging improvements +- base-db documenter improvements from upstream (internal only; not packaged) + +* Wed Jun 13 2012 willb - 0.15.0-1 +- sensible/unified treatment of skeleton group and default group + +* Thu May 31 2012 willb - 0.14.3-1 +- fixes bz 748507 + +* Thu May 10 2012 willb - 0.14.2-2 +- fixes a trivial crashing bug that sneaked in to the prior package + +* Thu May 10 2012 willb - 0.14.2-1 +- packaging improvements: ruby-wallaby now creates the wallaby user, and it does so with a proper UID on F17+ and EL6+ +- base db documentation generator (non-end-user visible) +- shell support for inspecting node configs (non-end-user visible for now, but used by ruby implementations of ccs/ccp; BZ820419) + +* Thu Apr 19 2012 willb - 0.14.1-1 +- preliminary tool support for annotations +- affectedEntities and affectedNodes methods on Store objects +- API minor version bump; API is now 20101031.5 + +* Mon Apr 16 2012 willb - 0.14.0-1 +- "annotation" property and "setAnnotation" method on snapshots and all configuration entities +- API minor version bump + +* Mon Mar 26 2012 willb - 0.13.1-2 +- F17 fixes + +* Fri Mar 9 2012 willb - 0.13.1-1 +- Fixes BZs 786801 and 796406 +- specfile updates from Fedora work + +* Fri Feb 10 2012 willb - 0.13.0-2 +- specfile fixes + +* Fri Feb 10 2012 willb - 0.13.0-1 +- conditional assignment of parameter values ("?=" operator) +- fix for bz 748507 +- compatibility with Ruby 1.9 * Fri Feb 10 2012 Vít Ondruch - 0.12.4-3 - Rebuilt for Ruby 1.9.3. +* Wed Jan 18 2012 willb - 0.12.5-2 +- minor usability fixes to "wallaby inventory -c" +- fix for bz 782816 + * Sat Jan 14 2012 Fedora Release Engineering - 0.12.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild +* Tue Jan 10 2012 willb - 0.12.5-1 +- the Wallaby shell no longer a priori rejects certain valid SASL authentication mechanisms * Fri Dec 9 2011 willb - 0.12.4-1 - fixes for minor tool problems that came up in 0.12 development From 97d258ceb36cbff11153793ed83363194d2121e2 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Thu, 14 Feb 2013 20:57:53 -0600 Subject: [PATCH 07/17] - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild --- wallaby.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wallaby.spec b/wallaby.spec index 5091f35..df0ba01 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -44,7 +44,7 @@ Summary: Condor pool configuration service with QMF interface Name: wallaby Version: 0.16.0 -Release: 1%{?dist} +Release: 2%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git @@ -291,6 +291,9 @@ fi %endif %changelog +* Fri Feb 15 2013 Fedora Release Engineering - 0.16.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + * Tue Aug 7 2012 willb - 0.16.0-1 - per-method authentication support for wallaby API methods From 035e56b815c55c5b45546cf54329c4b1694335fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ondruch?= Date: Fri, 29 Mar 2013 15:53:45 +0100 Subject: [PATCH 08/17] Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 --- wallaby.spec | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/wallaby.spec b/wallaby.spec index df0ba01..245b56c 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -23,7 +23,7 @@ %global has_sinatra 0 %endif -%if (0%{?fedora} >= 17) +%if (0%{?fedora} >= 17) || 0%{?rhel} >= 7 %global ruby_abi 1.9.1 %global ruby_appropriate_install_dir %{ruby_vendorlibdir} %global requires_ruby_devel 1 @@ -44,7 +44,7 @@ Summary: Condor pool configuration service with QMF interface Name: wallaby Version: 0.16.0 -Release: 2%{?dist} +Release: 3%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git @@ -54,7 +54,11 @@ Patch0: 0001-updated-spec-for-0.16.0.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif BuildRequires: python2-devel +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +Requires: ruby(release) +%else Requires: ruby(abi) = %{?ruby_abi} +%endif BuildRequires: ruby Requires: ruby-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.6 @@ -86,7 +90,11 @@ and manages multiple versions of configurations. %package utils Summary: Utilities to interact with the Wallaby service Group: Applications/System +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +Requires: ruby(release) +%else Requires: ruby(abi) = %{?ruby_abi} +%endif Requires: ruby-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version} @@ -97,7 +105,11 @@ and node configurations and interacting with the Wallaby service. %package -n ruby-wallaby Summary: Wallaby implementation libraries, API, and client library Group: Applications/System +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +Requires: ruby(release) +%else Requires: ruby(abi) = %{?ruby_abi} +%endif Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.5 @@ -122,7 +134,11 @@ that interact with the Wallaby configuration service over QMF. %package -n wallaby-http-server Summary: Wallaby web service interface Group: Applications/System +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +Requires: ruby(release) +%else Requires: ruby(abi) = %{?ruby_abi} +%endif Requires: ruby-irb Requires: ruby-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version}-%{release} @@ -291,6 +307,9 @@ fi %endif %changelog +* Fri Mar 29 2013 Vít Ondruch - 0.16.0-3 +- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 + * Fri Feb 15 2013 Fedora Release Engineering - 0.16.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild From 5c9b674508e13646dd974a76b34a362f1d60dbf0 Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sun, 4 Aug 2013 01:35:42 -0500 Subject: [PATCH 09/17] - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild --- wallaby.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wallaby.spec b/wallaby.spec index 245b56c..a2cad12 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -44,7 +44,7 @@ Summary: Condor pool configuration service with QMF interface Name: wallaby Version: 0.16.0 -Release: 3%{?dist} +Release: 4%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git @@ -307,6 +307,9 @@ fi %endif %changelog +* Sun Aug 04 2013 Fedora Release Engineering - 0.16.0-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + * Fri Mar 29 2013 Vít Ondruch - 0.16.0-3 - Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 From ae44935229501053406b511f21130bc9c4dfabe1 Mon Sep 17 00:00:00 2001 From: William Benton Date: Fri, 4 Oct 2013 10:19:38 -0500 Subject: [PATCH 10/17] 0.16.3-4 --- wallaby.spec | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/wallaby.spec b/wallaby.spec index a2cad12..98419df 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -12,7 +12,7 @@ %global building_for_el5 0 %endif -%if (0%{?fedora} >= 17 && 0%{?rhel} >= 6) +%if (0%{?fedora} >= 17 || 0%{?rhel} >= 6) %global %global wallaby_uid -u 181 %endif @@ -43,7 +43,7 @@ Summary: Condor pool configuration service with QMF interface Name: wallaby -Version: 0.16.0 +Version: 0.16.3 Release: 4%{?dist} Group: Applications/System License: ASL 2.0 @@ -60,7 +60,7 @@ Requires: ruby(release) Requires: ruby(abi) = %{?ruby_abi} %endif BuildRequires: ruby -Requires: ruby-qmf >= 0.7.929717 +Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.6 Requires: ruby-rhubarb >= 0.4.3 Requires: ruby-wallaby = %{version}-%{release} @@ -95,7 +95,7 @@ Requires: ruby(release) %else Requires: ruby(abi) = %{?ruby_abi} %endif -Requires: ruby-qmf >= 0.7.929717 +Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version} %description utils @@ -111,7 +111,7 @@ Requires: ruby(release) Requires: ruby(abi) = %{?ruby_abi} %endif Requires: ruby-irb -Requires: ruby-qmf >= 0.7.929717 +Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.5 Requires: ruby-rhubarb >= 0.2.6 %if %{requires_ruby_devel} @@ -140,7 +140,7 @@ Requires: ruby(release) Requires: ruby(abi) = %{?ruby_abi} %endif Requires: ruby-irb -Requires: ruby-qmf >= 0.7.929717 +Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version}-%{release} Requires: wallaby-utils = %{version}-%{release} Requires: rubygem-sinatra @@ -307,6 +307,13 @@ fi %endif %changelog +* Fri Oct 04 2013 willb - 0.16.3-4 +- Fixes broken ruby-qmf dependency +- Many fixes from upstream version 0.16.3, including: +- Fixes edge cases reported in BZ 802821 +- Fixes BZs 850205, 885787, 872663, 881366 +- specfile descriptions updated to reflect upstream naming changes + * Sun Aug 04 2013 Fedora Release Engineering - 0.16.0-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild From bf17d2519f71934958707b84cdb94a3710635f36 Mon Sep 17 00:00:00 2001 From: William Benton Date: Sat, 5 Oct 2013 15:20:30 -0500 Subject: [PATCH 11/17] updated sources --- .gitignore | 1 + sources | 1 + 2 files changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 8b64216..3f7fd5c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ /wallaby-0.12.4.tar.gz /wallaby-0.16.0.tar.gz +/wallaby-0.16.3.tar.gz diff --git a/sources b/sources index 21c8e44..9d57e96 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ 4431cdef936097c079361957239d6f53 wallaby-0.16.0.tar.gz +8ba1c34462593f61381269bacbd88047 wallaby-0.16.3.tar.gz From 82bc42ca1e9ea9187e50df1abe9ee10c889a29e1 Mon Sep 17 00:00:00 2001 From: William Benton Date: Sat, 5 Oct 2013 15:34:10 -0500 Subject: [PATCH 12/17] removed spurious patch line --- wallaby.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/wallaby.spec b/wallaby.spec index 98419df..2af985c 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -49,7 +49,6 @@ Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz -Patch0: 0001-updated-spec-for-0.16.0.patch %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif From 957a48d1a6660590c85ca7146b1b7e18a2d2a459 Mon Sep 17 00:00:00 2001 From: William Benton Date: Sat, 5 Oct 2013 15:51:28 -0500 Subject: [PATCH 13/17] removed spurious patch and sources --- sources | 1 - 1 file changed, 1 deletion(-) diff --git a/sources b/sources index 9d57e96..3631d42 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -4431cdef936097c079361957239d6f53 wallaby-0.16.0.tar.gz 8ba1c34462593f61381269bacbd88047 wallaby-0.16.3.tar.gz From 3e49ecfd67f9afb8c080ad02978b3d72bab3b2e0 Mon Sep 17 00:00:00 2001 From: William Benton Date: Sat, 5 Oct 2013 15:55:04 -0500 Subject: [PATCH 14/17] 0.16.4 --- .gitignore | 1 + 0001-updated-spec-for-0.16.0.patch | 27 -------- sources | 2 +- wallaby.spec | 106 ++++++++++++++++++----------- 4 files changed, 70 insertions(+), 66 deletions(-) delete mode 100644 0001-updated-spec-for-0.16.0.patch diff --git a/.gitignore b/.gitignore index 3f7fd5c..9876909 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /wallaby-0.12.4.tar.gz /wallaby-0.16.0.tar.gz /wallaby-0.16.3.tar.gz +/wallaby-0.16.4.tar.gz diff --git a/0001-updated-spec-for-0.16.0.patch b/0001-updated-spec-for-0.16.0.patch deleted file mode 100644 index dd14ddf..0000000 --- a/0001-updated-spec-for-0.16.0.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 716dba3f7586de04ce2919d93268c1764f9756b6 Mon Sep 17 00:00:00 2001 -From: Will Benton -Date: Tue, 7 Aug 2012 15:13:44 -0500 -Subject: [PATCH] updated spec for 0.16.0 - ---- - wallaby.spec.in | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) - -diff --git a/wallaby.spec.in b/wallaby.spec.in -index 9d4f4b4..3c58731 100644 ---- a/wallaby.spec.in -+++ b/wallaby.spec.in -@@ -292,6 +292,10 @@ fi - - %changelog - -+* Tue Aug 7 2012 willb - 0.16.0-1 -+- per-method authentication support for wallaby API methods -+- API version bump to 20101031.6 -+ - * Tue Jun 26 2012 willb - 0.15.1-3 - - fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) - --- -1.7.7.6 - diff --git a/sources b/sources index 3631d42..4323c78 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -8ba1c34462593f61381269bacbd88047 wallaby-0.16.3.tar.gz +4f5df69f3e1e8d69949a609eb5699807 wallaby-0.16.4.tar.gz diff --git a/wallaby.spec b/wallaby.spec index 2af985c..d047d9c 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -13,7 +13,6 @@ %endif %if (0%{?fedora} >= 17 || 0%{?rhel} >= 6) -%global %global wallaby_uid -u 181 %endif @@ -23,7 +22,7 @@ %global has_sinatra 0 %endif -%if (0%{?fedora} >= 17) || 0%{?rhel} >= 7 +%if (0%{?fedora} >= 17) %global ruby_abi 1.9.1 %global ruby_appropriate_install_dir %{ruby_vendorlibdir} %global requires_ruby_devel 1 @@ -34,6 +33,13 @@ %global ruby_appropriate_install_dir %{ruby_sitelib} %endif +%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 +%global ruby_runtime ruby(release) +%else +%global ruby_runtime ruby(abi) = %{?ruby_abi} +%endif + + %if %{building_for_el5} == 1 %{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} %{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} @@ -41,23 +47,22 @@ -Summary: Condor pool configuration service with QMF interface +Summary: HTCondor pool configuration service with QMF interface Name: wallaby -Version: 0.16.3 -Release: 4%{?dist} +Version: 0.16.4 +Release: 1%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz + %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif BuildRequires: python2-devel -%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 -Requires: ruby(release) -%else -Requires: ruby(abi) = %{?ruby_abi} -%endif + +Requires: %{ruby_runtime} + BuildRequires: ruby Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.6 @@ -78,8 +83,8 @@ Requires(postun): initscripts BuildArch: noarch %description -Wallaby is a configuration service for Condor pools. It provides a -semantic model of Condor configuration, enabling administrators to +Wallaby is a configuration service for HTCondor pools. It provides a +semantic model of HTCondor configurations, enabling administrators to apply high-level features to groups of nodes rather than set the values of low-level parameters in configuration files. Wallaby also validates configurations before deploying them, pushes out @@ -89,11 +94,7 @@ and manages multiple versions of configurations. %package utils Summary: Utilities to interact with the Wallaby service Group: Applications/System -%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 -Requires: ruby(release) -%else -Requires: ruby(abi) = %{?ruby_abi} -%endif +Requires: %{ruby_runtime} Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version} @@ -104,11 +105,7 @@ and node configurations and interacting with the Wallaby service. %package -n ruby-wallaby Summary: Wallaby implementation libraries, API, and client library Group: Applications/System -%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 -Requires: ruby(release) -%else -Requires: ruby(abi) = %{?ruby_abi} -%endif +Requires: %{ruby_runtime} Requires: ruby-irb Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-spqr >= 0.3.5 @@ -133,11 +130,7 @@ that interact with the Wallaby configuration service over QMF. %package -n wallaby-http-server Summary: Wallaby web service interface Group: Applications/System -%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 -Requires: ruby(release) -%else -Requires: ruby(abi) = %{?ruby_abi} -%endif +Requires: %{ruby_runtime} Requires: ruby-irb Requires: ruby-qpid-qmf >= 0.7.929717 Requires: ruby-wallaby = %{version}-%{release} @@ -159,7 +152,6 @@ Wallaby. %prep %setup -q -%patch0 -p1 %build sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-env @@ -306,27 +298,65 @@ fi %endif %changelog -* Fri Oct 04 2013 willb - 0.16.3-4 -- Fixes broken ruby-qmf dependency -- Many fixes from upstream version 0.16.3, including: + +* Sat Oct 5 2013 willb - 0.16.4-1 +- Fixes issues related to case-insensitivity of parameter names +- Fixes issues with inventory constraints on 32-bit systems +- Fixes packaging issues on contemporary Fedora releases + +* Mon Jan 7 2013 willb - 0.16.3-1 - Fixes edge cases reported in BZ 802821 + +* Fri Jan 4 2013 willb - 0.16.2-1 - Fixes BZs 850205, 885787, 872663, 881366 - specfile descriptions updated to reflect upstream naming changes -* Sun Aug 04 2013 Fedora Release Engineering - 0.16.0-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild +* Fri Oct 12 2012 willb - 0.16.1-2 +- Fixes BZs 820419, 825963, 802799, and 801632 (tool support and internal bugs) +- Fixes BZ 864091 (cosmetic issue: READ vs READ_ONLY role in list-users) +- Fixes BZ 864421 (cosmetic issue: authentication for snapshot commands) +- Store#storeinit now requires WRITE access +- This package now uses the designated Wallaby UID on EL6 (available since RHBA-2012:0778-1) +- Test suite fixes -* Fri Mar 29 2013 Vít Ondruch - 0.16.0-3 -- Rebuild for https://fedoraproject.org/wiki/Features/Ruby_2.0.0 +* Fri Oct 5 2012 willb - 0.16.1-1 +- Fixes BZs 786801, 796406, 802821, 850205, 851217, and incorporates all fixes from the 0.16.0 series. -* Fri Feb 15 2013 Fedora Release Engineering - 0.16.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild +* Fri Oct 5 2012 willb - 0.16.0-9 +- Fixes BZ 861055 +* Thu Oct 4 2012 willb - 0.16.0-8 +- Packaging fixes + +* Thu Oct 4 2012 willb - 0.16.0-7 +- 0.16.0-6 built without an updated changelog + +* Thu Oct 4 2012 willb - 0.16.0-6 +- Fixes for database migration errors coming from 0.12.5-10 (but not earlier releases); BZ 861081 +- Fixes for spurious error messages in agent failure cases related to the secret file +- Fixes for various API methods with incorrect or confusing permissions + +* Tue Sep 25 2012 willb - 0.16.0-5 +- Addresses more issues uncovered in authentication support (incorporates the "arno" patchset and revisions) +- Fixes for spurious test-suite failures + +* Tue Sep 18 2012 willb - 0.16.0-4 +- Addresses issues uncovered while testing authentication support (incorporates the "arno" patchset) + +* Thu Sep 6 2012 willb - 0.16.0-3 +- Minor fixes to client library crashing bugs exposed by authorization support + +* Wed Aug 15 2012 willb - 0.16.0-2 +- Added default value for WALLABY_USERDB_NAME to supplied environment file +- Minor fixes to authorization issues uncovered in development * Tue Aug 7 2012 willb - 0.16.0-1 -- per-method authentication support for wallaby API methods +- per-method authorization support for wallaby API methods - API version bump to 20101031.6 +* Thu Jun 28 2012 willb - 0.12.5-10 +- fixes BZs 748507, 834141, 807820, and 835525 (all backports from 0.15.x) + * Tue Jun 26 2012 willb - 0.15.1-3 - fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) From 574b0a134fd51a88675e5f09c587320e28049638 Mon Sep 17 00:00:00 2001 From: William Benton Date: Thu, 13 Feb 2014 08:21:59 -0600 Subject: [PATCH 15/17] BZ850363 --- 0001-new-systemd-macros-BZ850363.patch | 76 ++++++++++++++++++++++++++ wallaby.spec | 36 +++++------- 2 files changed, 91 insertions(+), 21 deletions(-) create mode 100644 0001-new-systemd-macros-BZ850363.patch diff --git a/0001-new-systemd-macros-BZ850363.patch b/0001-new-systemd-macros-BZ850363.patch new file mode 100644 index 0000000..cad1b2b --- /dev/null +++ b/0001-new-systemd-macros-BZ850363.patch @@ -0,0 +1,76 @@ +From 635555319326e48d07d0dca8f9e7bc39c122a1af Mon Sep 17 00:00:00 2001 +From: William Benton +Date: Thu, 13 Feb 2014 07:29:40 -0600 +Subject: [PATCH] new systemd macros; BZ850363 + +--- + wallaby.spec.in | 31 ++++++++++++------------------- + 1 file changed, 12 insertions(+), 19 deletions(-) + +diff --git a/wallaby.spec.in b/wallaby.spec.in +index bf5f55c..35960a2 100644 +--- a/wallaby.spec.in ++++ b/wallaby.spec.in +@@ -1,4 +1,4 @@ +-%if 0%{?fedora} >= 15 ++%if 0%{?fedora} >= 18 + %global want_systemd 1 + %global wallaby_agent_environment sysconfig/wallaby-agent-env + %else +@@ -70,10 +70,10 @@ Requires: ruby-rhubarb >= 0.4.3 + Requires: ruby-wallaby = %{version}-%{release} + Requires: logrotate >= 0.3 + %if %{want_systemd} +-Requires(post): systemd-units +-Requires(preun): systemd-units +-Requires(postun): systemd-units +-BuildRequires: systemd-units ++Requires(post): systemd ++Requires(preun): systemd ++Requires(postun): systemd ++BuildRequires: systemd + %else + Requires(post): chkconfig + Requires(preun): chkconfig +@@ -233,24 +233,14 @@ exit 0 + + %if %{want_systemd} + %post +-if [ $1 -eq 1 ] ; then +- # Initial installation +- /bin/systemctl daemon-reload >/dev/null 2>&1 || : +-fi ++%systemd_post wallaby.service + + %preun +-if [ $1 -eq 0 ] ; then +- # Package removal, not upgrade +- /bin/systemctl --no-reload disable wallaby.service > /dev/null 2>&1 || : +- /bin/systemctl stop wallaby.service > /dev/null 2>&1 || : +-fi ++%systemd_preun wallaby.service + + %postun +-/bin/systemctl daemon-reload >/dev/null 2>&1 || : +-if [ $1 -ge 1 ] ; then +- # Package upgrade, not uninstall +- /bin/systemctl try-restart wallaby.service >/dev/null 2>&1 || : +-fi ++%systemd_postun_with_restart wallaby.service ++ + %else + %post + # This adds the proper /etc/rc*.d links for the script +@@ -300,6 +290,9 @@ fi + + %changelog + ++* Thu Feb 13 2014 willb - 0.16.4-2 ++- uses new-style systemd macros (BZ850363) ++ + * Sat Oct 5 2013 willb - 0.16.4-1 + - Fixes issues related to case-insensitivity of parameter names + - Fixes issues with inventory constraints on 32-bit systems +-- +1.8.3.1 + diff --git a/wallaby.spec b/wallaby.spec index d047d9c..5c7a706 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -1,4 +1,4 @@ -%if 0%{?fedora} >= 15 +%if 0%{?fedora} >= 18 %global want_systemd 1 %global wallaby_agent_environment sysconfig/wallaby-agent-env %else @@ -50,12 +50,12 @@ Summary: HTCondor pool configuration service with QMF interface Name: wallaby Version: 0.16.4 -Release: 1%{?dist} +Release: 2%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz - +Patch0: 0001-new-systemd-macros-BZ850363.patch %if %{building_for_el5} BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) %endif @@ -70,10 +70,10 @@ Requires: ruby-rhubarb >= 0.4.3 Requires: ruby-wallaby = %{version}-%{release} Requires: logrotate >= 0.3 %if %{want_systemd} -Requires(post): systemd-units -Requires(preun): systemd-units -Requires(postun): systemd-units -BuildRequires: systemd-units +Requires(post): systemd +Requires(preun): systemd +Requires(postun): systemd +BuildRequires: systemd %else Requires(post): chkconfig Requires(preun): chkconfig @@ -152,6 +152,7 @@ Wallaby. %prep %setup -q +%patch0 -p1 %build sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-env @@ -232,24 +233,14 @@ exit 0 %if %{want_systemd} %post -if [ $1 -eq 1 ] ; then - # Initial installation - /bin/systemctl daemon-reload >/dev/null 2>&1 || : -fi +%systemd_post wallaby.service %preun -if [ $1 -eq 0 ] ; then - # Package removal, not upgrade - /bin/systemctl --no-reload disable wallaby.service > /dev/null 2>&1 || : - /bin/systemctl stop wallaby.service > /dev/null 2>&1 || : -fi +%systemd_preun wallaby.service %postun -/bin/systemctl daemon-reload >/dev/null 2>&1 || : -if [ $1 -ge 1 ] ; then - # Package upgrade, not uninstall - /bin/systemctl try-restart wallaby.service >/dev/null 2>&1 || : -fi +%systemd_postun_with_restart wallaby.service + %else %post # This adds the proper /etc/rc*.d links for the script @@ -299,6 +290,9 @@ fi %changelog +* Thu Feb 13 2014 willb - 0.16.4-2 +- uses new-style systemd macros (BZ850363) + * Sat Oct 5 2013 willb - 0.16.4-1 - Fixes issues related to case-insensitivity of parameter names - Fixes issues with inventory constraints on 32-bit systems From b73107f3396a580dc7791f358b2fee9b08288d4e Mon Sep 17 00:00:00 2001 From: Dennis Gilmore Date: Sat, 7 Jun 2014 23:10:59 -0500 Subject: [PATCH 16/17] - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild --- wallaby.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/wallaby.spec b/wallaby.spec index 5c7a706..dc52f0b 100644 --- a/wallaby.spec +++ b/wallaby.spec @@ -50,7 +50,7 @@ Summary: HTCondor pool configuration service with QMF interface Name: wallaby Version: 0.16.4 -Release: 2%{?dist} +Release: 3%{?dist} Group: Applications/System License: ASL 2.0 URL: http://git.fedorahosted.org/git/grid/wallaby.git @@ -289,6 +289,9 @@ fi %endif %changelog +* Sun Jun 08 2014 Fedora Release Engineering - 0.16.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + * Thu Feb 13 2014 willb - 0.16.4-2 - uses new-style systemd macros (BZ850363) From 93d5de780d22a378db988a8b72d3d30ebf628930 Mon Sep 17 00:00:00 2001 From: William Benton Date: Tue, 21 Apr 2015 02:08:52 +0000 Subject: [PATCH 17/17] This package depends on no-longer-supported Qpid features --- .gitignore | 4 - 0001-new-systemd-macros-BZ850363.patch | 76 --- dead.package | 1 + sources | 1 - wallaby.spec | 689 ------------------------- 5 files changed, 1 insertion(+), 770 deletions(-) delete mode 100644 .gitignore delete mode 100644 0001-new-systemd-macros-BZ850363.patch create mode 100644 dead.package delete mode 100644 sources delete mode 100644 wallaby.spec diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 9876909..0000000 --- a/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -/wallaby-0.12.4.tar.gz -/wallaby-0.16.0.tar.gz -/wallaby-0.16.3.tar.gz -/wallaby-0.16.4.tar.gz diff --git a/0001-new-systemd-macros-BZ850363.patch b/0001-new-systemd-macros-BZ850363.patch deleted file mode 100644 index cad1b2b..0000000 --- a/0001-new-systemd-macros-BZ850363.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 635555319326e48d07d0dca8f9e7bc39c122a1af Mon Sep 17 00:00:00 2001 -From: William Benton -Date: Thu, 13 Feb 2014 07:29:40 -0600 -Subject: [PATCH] new systemd macros; BZ850363 - ---- - wallaby.spec.in | 31 ++++++++++++------------------- - 1 file changed, 12 insertions(+), 19 deletions(-) - -diff --git a/wallaby.spec.in b/wallaby.spec.in -index bf5f55c..35960a2 100644 ---- a/wallaby.spec.in -+++ b/wallaby.spec.in -@@ -1,4 +1,4 @@ --%if 0%{?fedora} >= 15 -+%if 0%{?fedora} >= 18 - %global want_systemd 1 - %global wallaby_agent_environment sysconfig/wallaby-agent-env - %else -@@ -70,10 +70,10 @@ Requires: ruby-rhubarb >= 0.4.3 - Requires: ruby-wallaby = %{version}-%{release} - Requires: logrotate >= 0.3 - %if %{want_systemd} --Requires(post): systemd-units --Requires(preun): systemd-units --Requires(postun): systemd-units --BuildRequires: systemd-units -+Requires(post): systemd -+Requires(preun): systemd -+Requires(postun): systemd -+BuildRequires: systemd - %else - Requires(post): chkconfig - Requires(preun): chkconfig -@@ -233,24 +233,14 @@ exit 0 - - %if %{want_systemd} - %post --if [ $1 -eq 1 ] ; then -- # Initial installation -- /bin/systemctl daemon-reload >/dev/null 2>&1 || : --fi -+%systemd_post wallaby.service - - %preun --if [ $1 -eq 0 ] ; then -- # Package removal, not upgrade -- /bin/systemctl --no-reload disable wallaby.service > /dev/null 2>&1 || : -- /bin/systemctl stop wallaby.service > /dev/null 2>&1 || : --fi -+%systemd_preun wallaby.service - - %postun --/bin/systemctl daemon-reload >/dev/null 2>&1 || : --if [ $1 -ge 1 ] ; then -- # Package upgrade, not uninstall -- /bin/systemctl try-restart wallaby.service >/dev/null 2>&1 || : --fi -+%systemd_postun_with_restart wallaby.service -+ - %else - %post - # This adds the proper /etc/rc*.d links for the script -@@ -300,6 +290,9 @@ fi - - %changelog - -+* Thu Feb 13 2014 willb - 0.16.4-2 -+- uses new-style systemd macros (BZ850363) -+ - * Sat Oct 5 2013 willb - 0.16.4-1 - - Fixes issues related to case-insensitivity of parameter names - - Fixes issues with inventory constraints on 32-bit systems --- -1.8.3.1 - diff --git a/dead.package b/dead.package new file mode 100644 index 0000000..59fc8ee --- /dev/null +++ b/dead.package @@ -0,0 +1 @@ +This package depends on no-longer-supported Qpid features diff --git a/sources b/sources deleted file mode 100644 index 4323c78..0000000 --- a/sources +++ /dev/null @@ -1 +0,0 @@ -4f5df69f3e1e8d69949a609eb5699807 wallaby-0.16.4.tar.gz diff --git a/wallaby.spec b/wallaby.spec deleted file mode 100644 index dc52f0b..0000000 --- a/wallaby.spec +++ /dev/null @@ -1,689 +0,0 @@ -%if 0%{?fedora} >= 18 -%global want_systemd 1 -%global wallaby_agent_environment sysconfig/wallaby-agent-env -%else -%global want_systemd 0 -%global wallaby_agent_environment sysconfig/wallaby-agent -%endif - -%if (0%{?fedora} == 0 && 0%{?rhel} <= 5) -%global building_for_el5 1 -%else -%global building_for_el5 0 -%endif - -%if (0%{?fedora} >= 17 || 0%{?rhel} >= 6) -%global wallaby_uid -u 181 -%endif - -%if (0%{?fedora} != 0) -%global has_sinatra 1 -%else -%global has_sinatra 0 -%endif - -%if (0%{?fedora} >= 17) -%global ruby_abi 1.9.1 -%global ruby_appropriate_install_dir %{ruby_vendorlibdir} -%global requires_ruby_devel 1 -%else -%global requires_ruby_devel 0 -%global ruby_abi 1.8 -%{!?ruby_sitelib: %global ruby_sitelib %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"] ')} -%global ruby_appropriate_install_dir %{ruby_sitelib} -%endif - -%if 0%{?fedora} >= 19 || 0%{?rhel} >= 7 -%global ruby_runtime ruby(release) -%else -%global ruby_runtime ruby(abi) = %{?ruby_abi} -%endif - - -%if %{building_for_el5} == 1 -%{!?python_sitelib: %global python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())")} -%{!?python_sitearch: %global python_sitearch %(%{__python} -c "from distutils.sysconfig import get_python_lib; print(get_python_lib(1))")} -%endif - - - -Summary: HTCondor pool configuration service with QMF interface -Name: wallaby -Version: 0.16.4 -Release: 3%{?dist} -Group: Applications/System -License: ASL 2.0 -URL: http://git.fedorahosted.org/git/grid/wallaby.git -Source0: https://fedorahosted.org/releases/g/r/grid/%{name}-%{version}.tar.gz -Patch0: 0001-new-systemd-macros-BZ850363.patch -%if %{building_for_el5} -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) -%endif -BuildRequires: python2-devel - -Requires: %{ruby_runtime} - -BuildRequires: ruby -Requires: ruby-qpid-qmf >= 0.7.929717 -Requires: ruby-spqr >= 0.3.6 -Requires: ruby-rhubarb >= 0.4.3 -Requires: ruby-wallaby = %{version}-%{release} -Requires: logrotate >= 0.3 -%if %{want_systemd} -Requires(post): systemd -Requires(preun): systemd -Requires(postun): systemd -BuildRequires: systemd -%else -Requires(post): chkconfig -Requires(preun): chkconfig -Requires(preun): initscripts -Requires(postun): initscripts -%endif -BuildArch: noarch - -%description -Wallaby is a configuration service for HTCondor pools. It provides a -semantic model of HTCondor configurations, enabling administrators to -apply high-level features to groups of nodes rather than set the -values of low-level parameters in configuration files. Wallaby also -validates configurations before deploying them, pushes out -configurations to affected nodes, keeps an inventory of running nodes, -and manages multiple versions of configurations. - -%package utils -Summary: Utilities to interact with the Wallaby service -Group: Applications/System -Requires: %{ruby_runtime} -Requires: ruby-qpid-qmf >= 0.7.929717 -Requires: ruby-wallaby = %{version} - -%description utils -This package contains command-line utilities for updating Wallaby pool -and node configurations and interacting with the Wallaby service. - -%package -n ruby-wallaby -Summary: Wallaby implementation libraries, API, and client library -Group: Applications/System -Requires: %{ruby_runtime} -Requires: ruby-irb -Requires: ruby-qpid-qmf >= 0.7.929717 -Requires: ruby-spqr >= 0.3.5 -Requires: ruby-rhubarb >= 0.2.6 -%if %{requires_ruby_devel} -BuildRequires: ruby-devel -%endif -Provides: ruby(mrg/grid/config) = %{version} - -%package -n python-wallaby -Summary: Python client library for Wallaby -Group: Applications/System -Requires: python-qpid-qmf -Provides: wallaby-python = %{version} -Obsoletes: wallaby-python <= 0.10.9 - -%description -n python-wallaby -This package provides a Python client library for writing programs -that interact with the Wallaby configuration service over QMF. - -%if %{has_sinatra} -%package -n wallaby-http-server -Summary: Wallaby web service interface -Group: Applications/System -Requires: %{ruby_runtime} -Requires: ruby-irb -Requires: ruby-qpid-qmf >= 0.7.929717 -Requires: ruby-wallaby = %{version}-%{release} -Requires: wallaby-utils = %{version}-%{release} -Requires: rubygem-sinatra - -%description -n wallaby-http-server -The Wallaby HTTP server is a read-only web service gateway to Wallaby -configuration information. -%endif - -%description -n ruby-wallaby -This package provides the libraries that the Wallaby service and tools -are built on. It also provides a client library to write Ruby -programs that interact with the Wallaby service, and the Wallaby shell -API, which facilitates writing new command-line tools that extend -Wallaby. - -%prep -%setup -q - -%patch0 -p1 -%build - -sed 's/^export //' < etc/sysconfig/wallaby-agent > etc/sysconfig/wallaby-agent-env - -%install -%if %{building_for_el5} -rm -rf %{buildroot} -%endif -mkdir -p %{buildroot}/%{_unitdir} -mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate -mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell -mkdir -p %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util -mkdir -p %{buildroot}/%{_bindir} -mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby -mkdir -p %{buildroot}/%{_localstatedir}/lib/wallaby/patches -mkdir -p %{buildroot}/%{_initrddir} -mkdir -p %{buildroot}/%{_sysconfdir} -mkdir -p %{buildroot}/%{_sysconfdir}/sysconfig -mkdir -p %{buildroot}/%{_sysconfdir}/logrotate.d -mkdir -p %{buildroot}/%{_localstatedir}/log/wallaby -mkdir -p %{buildroot}/%{python_sitelib}/wallaby -cp -p -f bin/wallaby %{buildroot}/%{_bindir} -cp -p -f bin/wallaby-agent %{buildroot}/%{_bindir} -cp -p -f lib/mrg/grid/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid -cp -p -f lib/mrg/grid/util/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/util -cp -p -f lib/mrg/grid/config/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config -cp -p -f lib/mrg/grid/config/shell/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell -# These aren't packaged -rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_pull.rb -rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_force_restart.rb -# We only want the http server if we have sinatra available -%if %{has_sinatra} == 0 -rm -f %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb -%endif -cp -p -f lib/mrg/grid/config/dbmigrate/*.rb %{buildroot}/%{ruby_appropriate_install_dir}/mrg/grid/config/dbmigrate - -%if %{want_systemd} == 0 -cp -p -f etc/wallaby %{buildroot}/%{_initrddir}/wallaby -%else -cp -p -f etc/wallaby.service %{buildroot}/%{_unitdir} -%endif -cp -p -f etc/logrotate.d/wallaby %{buildroot}/%{_sysconfdir}/logrotate.d/wallaby -cp -p -f etc/%{wallaby_agent_environment} %{buildroot}/%{_sysconfdir}/%{wallaby_agent_environment} -cp -p -f schema/wallaby.py %{buildroot}/%{python_sitelib}/wallaby/__init__.py -cp -p -f extensions/wallaby/*.py %{buildroot}/%{python_sitelib}/wallaby - -%if %{building_for_el5} -%clean -rm -rf %{buildroot} -%endif - -%files -%if %{building_for_el5} -%defattr(-, root, root, -) -%endif -%config(noreplace) %{_sysconfdir}/%{wallaby_agent_environment} -%config(noreplace) %{_sysconfdir}/logrotate.d/wallaby -%doc LICENSE README.rdoc TODO -%defattr(0755,wallaby,wallaby,-) -%dir %{_localstatedir}/lib/wallaby -%dir %{_localstatedir}/log/wallaby -%defattr(0755,root,root,-) -%{_bindir}/wallaby-agent -%if %{want_systemd} -%defattr(-,root,root,-) -%{_unitdir}/wallaby.service -%else -%{_initrddir}/wallaby -%endif - -%pre -n ruby-wallaby -getent group wallaby >/dev/null || groupadd -r wallaby -getent group condor >/dev/null || groupadd -r condor -getent passwd wallaby >/dev/null || \ - useradd -r %{?wallaby_uid} -g condor -d %{_localstatedir}/lib/wallaby -s /sbin/nologin \ - -c "Owner of Wallaby service" wallaby -exit 0 - -%if %{want_systemd} -%post -%systemd_post wallaby.service - -%preun -%systemd_preun wallaby.service - -%postun -%systemd_postun_with_restart wallaby.service - -%else -%post -# This adds the proper /etc/rc*.d links for the script -/sbin/chkconfig --add wallaby - -%preun -if [ $1 = 0 ] ; then - /sbin/service wallaby stop >/dev/null 2>&1 - /sbin/chkconfig --del wallaby -fi - -%postun -if [ "$1" -ge "1" ] ; then - /sbin/service wallaby condrestart >/dev/null 2>&1 || : -fi -%endif # want_systemd - -%files utils - -%if %{building_for_el5} -%defattr(-, root, root, -) -%endif - -%doc LICENSE -%defattr(0755,root,root,-) -%{_bindir}/wallaby -%dir %{_localstatedir}/lib/wallaby/patches - -%files -n python-wallaby - -%if %{building_for_el5} -%defattr(-, root, root, -) -%endif -%{python_sitelib}/wallaby/ - -%files -n ruby-wallaby -%if %{building_for_el5} -%defattr(-, root, root, -) -%endif -%{ruby_appropriate_install_dir}/mrg/grid/ -%if %{has_sinatra} -%exclude %{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb - -%files -n wallaby-http-server -%{ruby_appropriate_install_dir}/mrg/grid/config/shell/cmd_http_server.rb -%endif - -%changelog -* Sun Jun 08 2014 Fedora Release Engineering - 0.16.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - - -* Thu Feb 13 2014 willb - 0.16.4-2 -- uses new-style systemd macros (BZ850363) - -* Sat Oct 5 2013 willb - 0.16.4-1 -- Fixes issues related to case-insensitivity of parameter names -- Fixes issues with inventory constraints on 32-bit systems -- Fixes packaging issues on contemporary Fedora releases - -* Mon Jan 7 2013 willb - 0.16.3-1 -- Fixes edge cases reported in BZ 802821 - -* Fri Jan 4 2013 willb - 0.16.2-1 -- Fixes BZs 850205, 885787, 872663, 881366 -- specfile descriptions updated to reflect upstream naming changes - -* Fri Oct 12 2012 willb - 0.16.1-2 -- Fixes BZs 820419, 825963, 802799, and 801632 (tool support and internal bugs) -- Fixes BZ 864091 (cosmetic issue: READ vs READ_ONLY role in list-users) -- Fixes BZ 864421 (cosmetic issue: authentication for snapshot commands) -- Store#storeinit now requires WRITE access -- This package now uses the designated Wallaby UID on EL6 (available since RHBA-2012:0778-1) -- Test suite fixes - -* Fri Oct 5 2012 willb - 0.16.1-1 -- Fixes BZs 786801, 796406, 802821, 850205, 851217, and incorporates all fixes from the 0.16.0 series. - -* Fri Oct 5 2012 willb - 0.16.0-9 -- Fixes BZ 861055 - -* Thu Oct 4 2012 willb - 0.16.0-8 -- Packaging fixes - -* Thu Oct 4 2012 willb - 0.16.0-7 -- 0.16.0-6 built without an updated changelog - -* Thu Oct 4 2012 willb - 0.16.0-6 -- Fixes for database migration errors coming from 0.12.5-10 (but not earlier releases); BZ 861081 -- Fixes for spurious error messages in agent failure cases related to the secret file -- Fixes for various API methods with incorrect or confusing permissions - -* Tue Sep 25 2012 willb - 0.16.0-5 -- Addresses more issues uncovered in authentication support (incorporates the "arno" patchset and revisions) -- Fixes for spurious test-suite failures - -* Tue Sep 18 2012 willb - 0.16.0-4 -- Addresses issues uncovered while testing authentication support (incorporates the "arno" patchset) - -* Thu Sep 6 2012 willb - 0.16.0-3 -- Minor fixes to client library crashing bugs exposed by authorization support - -* Wed Aug 15 2012 willb - 0.16.0-2 -- Added default value for WALLABY_USERDB_NAME to supplied environment file -- Minor fixes to authorization issues uncovered in development - -* Tue Aug 7 2012 willb - 0.16.0-1 -- per-method authorization support for wallaby API methods -- API version bump to 20101031.6 - -* Thu Jun 28 2012 willb - 0.12.5-10 -- fixes BZs 748507, 834141, 807820, and 835525 (all backports from 0.15.x) - -* Tue Jun 26 2012 willb - 0.15.1-3 -- fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713) - -* Thu Jun 21 2012 willb - 0.15.1-2 -- fixes to skeleton group support for walk-in nodes -- more resilient Store#activateConfiguration in the face of event failure/workaround for QMF event problems on F17 -- wallaby-agent no longer deletes potentially-spurious configurations by default - -* Wed Jun 20 2012 willb - 0.15.1-1 -- fixes bz 834141 -- packaging improvements -- base-db documenter improvements from upstream (internal only; not packaged) - -* Wed Jun 13 2012 willb - 0.15.0-1 -- sensible/unified treatment of skeleton group and default group - -* Thu May 31 2012 willb - 0.14.3-1 -- fixes bz 748507 - -* Thu May 10 2012 willb - 0.14.2-2 -- fixes a trivial crashing bug that sneaked in to the prior package - -* Thu May 10 2012 willb - 0.14.2-1 -- packaging improvements: ruby-wallaby now creates the wallaby user, and it does so with a proper UID on F17+ and EL6+ -- base db documentation generator (non-end-user visible) -- shell support for inspecting node configs (non-end-user visible for now, but used by ruby implementations of ccs/ccp; BZ820419) - -* Thu Apr 19 2012 willb - 0.14.1-1 -- preliminary tool support for annotations -- affectedEntities and affectedNodes methods on Store objects -- API minor version bump; API is now 20101031.5 - -* Mon Apr 16 2012 willb - 0.14.0-1 -- "annotation" property and "setAnnotation" method on snapshots and all configuration entities -- API minor version bump - -* Mon Mar 26 2012 willb - 0.13.1-2 -- F17 fixes - -* Fri Mar 9 2012 willb - 0.13.1-1 -- Fixes BZs 786801 and 796406 -- specfile updates from Fedora work - -* Fri Feb 10 2012 willb - 0.13.0-2 -- specfile fixes - -* Fri Feb 10 2012 willb - 0.13.0-1 -- conditional assignment of parameter values ("?=" operator) -- fix for bz 748507 -- compatibility with Ruby 1.9 - -* Fri Feb 10 2012 Vít Ondruch - 0.12.4-3 -- Rebuilt for Ruby 1.9.3. - -* Wed Jan 18 2012 willb - 0.12.5-2 -- minor usability fixes to "wallaby inventory -c" -- fix for bz 782816 - -* Sat Jan 14 2012 Fedora Release Engineering - 0.12.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild - -* Tue Jan 10 2012 willb - 0.12.5-1 -- the Wallaby shell no longer a priori rejects certain valid SASL authentication mechanisms - -* Fri Dec 9 2011 willb - 0.12.4-1 -- fixes for minor tool problems that came up in 0.12 development - -* Wed Nov 23 2011 willb - 0.12.3-1 -- fix for bz 756402 - -* Mon Nov 21 2011 willb - 0.12.2-1 -- fixed broken dependencies for wallaby-utils -- vc-export shell command - -* Fri Oct 14 2011 willb - 0.12.1-1 -- minor bug fixes in wallaby shell commands - -* Fri Oct 14 2011 rrati - 0.12.0-1 -- improvements to wallaby shell commands -- packaging workflow improvements - -* Thu Oct 13 2011 willb - 0.11.0-4 -- fixed conditionalized skeleton group support (broken since 0.10.9-1) -- packaging workflow improvements - -* Tue Oct 11 2011 willb - 0.11.0-3 -- minor packaging fixes - -* Fri Oct 7 2011 willb - 0.11.0-2 -- client library now throws exceptions for agent errors -- packaging fixes - -* Thu Oct 6 2011 willb - 0.10.9-1 -- wallaby-python package renamed -- skeleton group support only if explicitly enabled - -* Sat Oct 1 2011 rrati - 0.10.8-1 -- Many new wallaby shell commands for creating and updating entities - -* Fri Sep 30 2011 willb - 0.10.7-1 -- Feature-complete database patching tool (thanks to rrati) - -* Wed Sep 21 2011 willb - 0.10.6-1 -- Packaging fixes - -* Tue Sep 20 2011 willb - 0.10.5-8 -- Packaging fixes - -* Mon Sep 12 2011 willb - 0.10.5-7 -- Python client now packaged -- Logrotate configuration now included -- Other packaging improvements - -* Mon Jun 6 2011 willb - 0.10.5-6 -- Mode, ownership, and timestamps now preserved for installed files - -* Thu Apr 28 2011 willb - 0.10.5-5 -- Preinstall script fixes - -* Tue Apr 26 2011 willb - 0.10.5-4 -- Fixes BZs: 673520, 692911 - -* Thu Mar 31 2011 willb - 0.10.5-3 -- Changes to default broker authentication - -* Wed Mar 30 2011 willb - 0.10.5-2 -- Minor cleanups to Ruby client library -- "wallaby" and shell commands now understand "-v" - -* Fri Feb 4 2011 willb - 0.10.5 -- Fixes BZ 675324 - -* Fri Jan 28 2011 willb - 0.10.4-3 -- Fixes BZs 635628 (was bounced), 673502 - -* Thu Jan 27 2011 willb - 0.10.4-2 -- Fixes BZs 668798, 668799 - -* Tue Jan 25 2011 willb - 0.10.4-1 -- Fixes BZ 669829 -- Automatic cleanup for spuriously-generated versioned snapshots - -* Fri Jan 21 2011 willb - 0.10.3-1 -- Added "wallaby sanitize" shell command (for ease of submitting bug reports) -- Fixes for "wallaby new-command" code generation -- Fixes BZ 671185 - -* Tue Jan 11 2011 willb - 0.10.2-1 -- Fixes a small regression introduced in 0.10.1 - -* Tue Jan 11 2011 willb - 0.10.1-1 -- Fixes BZs 668459, 668797, 668798, 668799, 668800, 668802, 668803. - -* Thu Dec 23 2010 willb - 0.10.0-2 -- Fix for a stray SQLite 3.3 incompatibility - -* Tue Dec 14 2010 willb - 0.10.0-1 -- verification for BZs 654810, 654813 -- minor contract change: Parameter#setMustChange will fail if the parameter has a default value unless WALLABY_PERMISSIVE_PARAMETERS is set -- optimizations to config validation (~7% faster in test suite) -- fixes BZ 660509 -- config client objects now support to_hash and to_yaml methods -- new api methods and properties -- wallaby shell support for feature CRUD operations - -* Sat Dec 4 2010 willb - 0.9.24-1 -- fixes BZ 657055 - -* Thu Oct 21 2010 willb - 0.9.23-1 -- "wallaby new-command" shell command -- improved exception handling in shell commands -- fixes for user-local commands -- fixed BZ 635628 - -* Wed Oct 20 2010 willb - 0.9.22-1 -- re-implemented timestamp; removed rhubarb dependency from wallaby shell commands - -* Wed Oct 20 2010 willb - 0.9.21-1 -- Fixes for many shell-related BZs, including 635975, 636161, 636172, 636175, 636177, 636179, 636568, 636569, 636577, 636580. -- First pass at a public shell-command API (see skel.rb for an example); this should be finalized in 0.10.x -- "wallaby help" shell command -- Various refactorings. - -* Fri Oct 15 2010 willb - 0.9.20-1 -- Parameter names are now case-preserving but case-insensitive, viz., adding "fooBar" and searching for "FOOBAR" will get you "fooBar" -- 'wallaby http-server' improvements: runs as daemon (and optionally as a different user); changes-to and help routes - -* Thu Oct 14 2010 willb - 0.9.19-1 -- More flexible support for user-local wallaby shell commands (no public API yet, though) -- 'wallaby explain' shell command -- 'wallaby http-server' shell command and package (Fedora only; requires Sinatra) - -* Fri Sep 17 2010 willb - 0.9.18-2 -- package upgrades should uninstall and reinstall the wallaby initscript in the appropriate runlevels - -* Fri Sep 17 2010 willb - 0.9.18-1 -- fix for BZ 634641 - -* Thu Sep 16 2010 willb - 0.9.17-1 -- fix for BZ 634625 - -* Thu Sep 16 2010 willb - 0.9.16-2 -- fixed missing RPM dependency on ruby-irb - -* Wed Sep 15 2010 willb - 0.9.16-1 -- fixed missing include in wallaby inventory - -* Wed Sep 15 2010 willb - 0.9.15-2 -- fixed performance regression in querying groups -- bumped API version number to final (1.0) version -- fixes for relationship-maintenance issues uncovered in 0.9.8 - -* Fri Sep 10 2010 willb - 0.9.8-1 -- Dramatic performance enhancements in activateConfiguration (> 10x in medium-size configurations; > 21x in large configurations) -- wallaby console tool - -* Wed Sep 1 2010 willb - 0.9.7-1 -- Improved wallaby-shell functionality -- Removed old-style command-line tools - -* Wed Aug 25 2010 willb - 0.9.6-1 -- Improved reliability of command-line tools -- Workarounds for BZS 612425, 613666 - -* Tue Aug 17 2010 willb - 0.9.5-1 -- Updated to source version 0.9.5 -- Improved memory performance of proactive inconsistency detection - -* Mon Aug 16 2010 willb - 0.9.4-1 -- Updated to source version 0.9.4 - -* Mon Aug 16 2010 willb - 0.9.3-1 -- Updated to source version 0.9.3 - -* Tue Aug 3 2010 willb - 0.9.2-1 -- Updated to source version 0.9.2 - -* Tue Aug 3 2010 willb - 0.9.1-1 -- Updated to source version 0.9.1 - -* Mon Aug 2 2010 willb - 0.9.0-1 -- Updated to source version 0.9.0 - -* Tue Jul 27 2010 willb - 0.6.3-1 -- Updated to source version 0.6.3 - -* Fri Jun 25 2010 willb - 0.6.2-1 -- Updated to source version 0.6.2 - -* Fri Jun 25 2010 rrati - 0.6.1-2 -- Packaging fixes - -* Fri Jun 25 2010 rrati - 0.6.1-1 -- Updated to source version 0.6.1 - -* Wed Jun 23 2010 willb - 0.6.0-1 -- Updated to source version 0.6.0 -- Init script fixes - -* Fri Jun 11 2010 willb - 0.5.1-1 -- Updated to source version 0.5.1 - -* Fri Jun 11 2010 willb - 0.5.0-1 -- Updated to source version 0.5.0 - -* Thu Jun 10 2010 willb - 0.4.2-1 -- Updated to source version 0.4.2 - -* Thu Jun 10 2010 willb - 0.4.1-1 -- Updated to source version 0.4.1 - -* Thu Jun 10 2010 willb - 0.4.0-1 -- Updated to source version 0.4.0 - -* Wed May 26 2010 willb - 0.3.5-2 -- Packaging and initscript fixes - -* Fri May 21 2010 willb - 0.3.5-1 -- Updated to source version 0.3.5 - -* Tue Apr 20 2010 willb - 0.3.2-1 -- Updated to source version 0.3.2 - -* Mon Apr 12 2010 willb - 0.3.1-1 -- Updated to source version 0.3.1 - -* Fri Apr 9 2010 willb - 0.3.0-1 -- Updated to source version 0.3.0 - -* Tue Mar 30 2010 willb - 0.2.12-1 -- Updated to source version 0.2.12 - -* Thu Mar 25 2010 willb - 0.2.11-1 -- Updated to source version 0.2.11 - -* Tue Mar 9 2010 willb - 0.2.10-1 -- Updated to source version 0.2.10 - -* Fri Mar 5 2010 willb - 0.2.9-1 -- Updated to source version 0.2.9 - -* Thu Mar 4 2010 willb - 0.2.8-1.0 -- Updated to source version 0.2.8 - -* Fri Feb 27 2010 willb - 0.2.7-1.0 -- Updated to source version 0.2.7 - -* Thu Feb 26 2010 willb - 0.2.6-1.0 -- Updated to source version 0.2.6 - -* Wed Feb 25 2010 willb - 0.2.5-1.0 -- Updated to source version 0.2.5 - -* Wed Feb 25 2010 willb - 0.2.4-1.0 -- Updated to source version 0.2.4 - -* Tue Feb 23 2010 willb - 0.2.3-1.0 -- Updated to source version 0.2.3 - -* Tue Feb 23 2010 rrati - 0.2.2-1.0 -- Updated to source version 0.2.2 - -* Tue Feb 23 2010 rrati - 0.2.1-1.0 -- Updated to source version 0.2.1 - -* Fri Feb 19 2010 willb - 0.2.0-1.0 -- Event functionality -- Configuration activation -- wallaby-activate tool - -* Wed Feb 10 2010 rrati - 0.1.0-0.1 -- Initial package -