Compare commits
1 commit
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
996a531550 |
15 changed files with 725 additions and 55 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -1 +1,2 @@
|
|||
/wallaby-0.12.4.tar.gz
|
||||
/wallaby-0.15.1.tar.gz
|
||||
|
|
|
|||
74
0001-Fixes-to-skeleton-group-support.patch
Normal file
74
0001-Fixes-to-skeleton-group-support.patch
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
From 2c584644a5fc8e0dd0b1bc0e3919c27a112fd9ff Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
From fcc1044e270f4580eef1828ab3d09d209999fd60 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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 <willb@redhat> - 0.12.4-1
|
||||
+- fixes for minor tool problems that came up in 0.12 development
|
||||
+
|
||||
* Wed Nov 23 2011 willb <willb@redhat> - 0.12.3-1
|
||||
- fix for bz 756402
|
||||
|
||||
--
|
||||
1.7.4.4
|
||||
|
||||
26
0002-updated-spec-for-0.15.1-2.patch
Normal file
26
0002-updated-spec-for-0.15.1-2.patch
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
From a263c2f088be209adfca853d856667aa7c637ab7 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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 <willb@redhat> - 0.15.1-2
|
||||
+- fixes to skeleton group support for walk-in nodes
|
||||
+
|
||||
* Wed Jun 20 2012 willb <willb@redhat> - 0.15.1-1
|
||||
- fixes bz 834141
|
||||
- packaging improvements
|
||||
--
|
||||
1.7.7.6
|
||||
|
||||
42
0003-More-resilient-activation-on-F17.patch
Normal file
42
0003-More-resilient-activation-on-F17.patch
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
From 4eb89e810d9b174c1d995f070cbf947fac04bdce Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
32
0004-Spurious-configuration-removal-off-by-default.patch
Normal file
32
0004-Spurious-configuration-removal-off-by-default.patch
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
From 82e6ef71c2fad1d448a34e9458f5d79c6b6e69c8 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
25
0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch
Normal file
25
0005-updated-spec-again-in-advance-of-0.15.1-2-build.patch
Normal file
|
|
@ -0,0 +1,25 @@
|
|||
From 109a79b246858b79344c04ee80950b4d6004d0a4 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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 <willb@redhat> - 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 <willb@redhat> - 0.15.1-1
|
||||
- fixes bz 834141
|
||||
--
|
||||
1.7.7.6
|
||||
|
||||
66
0006-Added-test-case-duplicating-Matt-s-failure-case.patch
Normal file
66
0006-Added-test-case-duplicating-Matt-s-failure-case.patch
Normal file
|
|
@ -0,0 +1,66 @@
|
|||
From 6b275fe08d44cd86131cfe0bcdc2c91b607c8b03 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
74
0007-Added-more-assertions-to-prior-test-case.patch
Normal file
74
0007-Added-more-assertions-to-prior-test-case.patch
Normal file
|
|
@ -0,0 +1,74 @@
|
|||
From 031f6d977a1b73e40bb6b583de0fa13705b40e7f Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
From f3d8b317a29e0c76690e75aca9e5fadaf5ce0766 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
73
0009-Removed-unused-versioned-config-implementation.patch
Normal file
73
0009-Removed-unused-versioned-config-implementation.patch
Normal file
|
|
@ -0,0 +1,73 @@
|
|||
From d5abc85784581603ac18239b50ee4c48ed73ea64 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
111
0010-Removed-oldstyle-versioned-configurations.patch
Normal file
111
0010-Removed-oldstyle-versioned-configurations.patch
Normal file
|
|
@ -0,0 +1,111 @@
|
|||
From 99cc17647e3dea7b4475e53bdfbfe89afc8e7c9c Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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
|
||||
|
||||
26
0011-spec-file-for-v0.15.1-3.patch
Normal file
26
0011-spec-file-for-v0.15.1-3.patch
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
From 989533bc4e1bb4167dc1d663da57a73b6ae151b3 Mon Sep 17 00:00:00 2001
|
||||
From: Will Benton <willb@redhat.com>
|
||||
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 <willb@redhat> - 0.15.1-3
|
||||
+- fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713)
|
||||
+
|
||||
* Thu Jun 21 2012 willb <willb@redhat> - 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
|
||||
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
185b2513e552960f84c0eebaea0f3e72 wallaby-0.12.4.tar.gz
|
||||
db77431fccc3ddc201c5186f6fd1487e wallaby-0.15.1.tar.gz
|
||||
|
|
|
|||
158
wallaby.spec
158
wallaby.spec
|
|
@ -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
|
||||
|
|
@ -14,35 +12,63 @@
|
|||
%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
|
||||
|
||||
|
||||
|
||||
Summary: Condor pool configuration service with QMF interface
|
||||
Name: wallaby
|
||||
Version: 0.12.4
|
||||
Release: 1%{?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-updated-spec-for-0.12.4.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
|
||||
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.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}
|
||||
|
|
@ -70,7 +96,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,11 +107,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) = 1.8
|
||||
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
|
||||
|
|
@ -103,7 +132,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}
|
||||
|
|
@ -126,6 +155,16 @@ Wallaby.
|
|||
%setup -q
|
||||
|
||||
%patch0 -p1
|
||||
%patch1 -p1
|
||||
%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
|
||||
|
|
@ -135,9 +174,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 +188,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
|
||||
|
|
@ -196,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
|
||||
|
|
@ -264,16 +302,80 @@ 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
|
||||
|
||||
* Tue Jun 26 2012 willb <willb@redhat> - 0.15.1-3
|
||||
- fixes for some stealthier serialized-configuration type-sniffing bugs and attendant nasty crashes (BZ 835713)
|
||||
|
||||
* Thu Jun 21 2012 willb <willb@redhat> - 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 <willb@redhat> - 0.15.1-1
|
||||
- fixes bz 834141
|
||||
- packaging improvements
|
||||
- base-db documenter improvements from upstream (internal only; not packaged)
|
||||
|
||||
* Wed Jun 13 2012 willb <willb@redhat> - 0.15.0-1
|
||||
- sensible/unified treatment of skeleton group and default group
|
||||
|
||||
* Thu May 31 2012 willb <willb@redhat> - 0.14.3-1
|
||||
- fixes bz 748507
|
||||
|
||||
* Thu May 10 2012 willb <willb@redhat> - 0.14.2-2
|
||||
- fixes a trivial crashing bug that sneaked in to the prior package
|
||||
|
||||
* Thu May 10 2012 willb <willb@redhat> - 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 <willb@redhat> - 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 <willb@redhat> - 0.14.0-1
|
||||
- "annotation" property and "setAnnotation" method on snapshots and all configuration entities
|
||||
- API minor version bump
|
||||
|
||||
* Mon Mar 26 2012 willb <willb@redhat> - 0.13.1-2
|
||||
- F17 fixes
|
||||
|
||||
* Fri Mar 9 2012 willb <willb@redhat> - 0.13.1-1
|
||||
- Fixes BZs 786801 and 796406
|
||||
- specfile updates from Fedora work
|
||||
|
||||
* Fri Feb 10 2012 willb <willb@redhat> - 0.13.0-2
|
||||
- specfile fixes
|
||||
|
||||
* Fri Feb 10 2012 willb <willb@redhat> - 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 <vondruch@redhat.com> - 0.12.4-3
|
||||
- Rebuilt for Ruby 1.9.3.
|
||||
|
||||
* Wed Jan 18 2012 willb <willb@redhat> - 0.12.5-2
|
||||
- minor usability fixes to "wallaby inventory -c"
|
||||
- fix for bz 782816
|
||||
|
||||
* Sat Jan 14 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.12.4-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
|
||||
|
||||
* Tue Jan 10 2012 willb <willb@redhat> - 0.12.5-1
|
||||
- the Wallaby shell no longer a priori rejects certain valid SASL authentication mechanisms
|
||||
|
||||
* Fri Dec 9 2011 willb <willb@redhat> - 0.12.4-1
|
||||
- fixes for minor tool problems that came up in 0.12 development
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue