On Tue, Jul 14, 2015 at 05:59:32PM +0200, 'Klaus Aehlig' via ganeti-devel wrote:
...so that the maintenance daemon can always access the authoritative
version of that list.

Signed-off-by: Klaus Aehlig <[email protected]>
---
src/Ganeti/WConfd/Core.hs | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/Ganeti/WConfd/Core.hs b/src/Ganeti/WConfd/Core.hs
index 7f142bb..c478a87 100644
--- a/src/Ganeti/WConfd/Core.hs
+++ b/src/Ganeti/WConfd/Core.hs
@@ -62,9 +62,10 @@ import Ganeti.Locking.Locks ( GanetiLocks(ConfigLock, BGL)
                            , ClientType(ClientOther), ClientId(..) )
import qualified Ganeti.Locking.Waiting as LW
import Ganeti.Objects ( ConfigData, DRBDSecret, LogicalVolume, Ip4Address
-                      , configMaintenance, maintRoundDelay
+                      , configMaintenance, maintRoundDelay, maintJobs
                      )
import Ganeti.Objects.Lens (configClusterL, clusterMasterNodeL)
+import Ganeti.Types (JobId)
import Ganeti.WConfd.ConfigState (csConfigDataL)
import qualified Ganeti.WConfd.ConfigVerify as V
import Ganeti.WConfd.DeathDetection (cleanupLocks)
@@ -163,6 +164,10 @@ maintenanceRoundDelay :: WConfdMonad Int
maintenanceRoundDelay = liftM ( maintRoundDelay . configMaintenance )
                              CW.readConfig

+-- | Get the list of jobs in the state of the maintenance daemon.
+maintenanceJobs :: WConfdMonad [JobId]
+maintenanceJobs = liftM ( maintJobs . configMaintenance ) CW.readConfig
+
-- ** Temporary reservations related functions

dropAllReservations :: ClientId -> WConfdMonad ()
@@ -394,6 +399,7 @@ exportedFunctions = [ 'echo
                    , 'writeConfigAndUnlock
                    , 'flushConfig
                    , 'maintenanceRoundDelay
+                    , 'maintenanceJobs
                    -- temporary reservations (common)
                    , 'dropAllReservations
                    -- DRBD
--
2.4.3.573.g4eafbef


LGTM

Reply via email to