Selaa lähdekoodia

AUG: add support for resources section & quorum/quorate

git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@3055 fd59a12c-fef9-0310-b244-a6a79926bd2f
Angus Salkeld 15 vuotta sitten
vanhempi
commit
191c19429c
2 muutettua tiedostoa jossa 55 lisäystä ja 1 poistoa
  1. 31 1
      conf/lenses/corosync.aug
  2. 24 0
      conf/lenses/tests/test_corosync.aug

+ 31 - 1
conf/lenses/corosync.aug

@@ -110,6 +110,35 @@ let logging =
   section "logging" setting
   section "logging" setting
 
 
 
 
+(* The resource section *)
+let common_resource =
+   kv "max" Rx.decimal
+   |kv "poll_period" Rx.integer
+   |kv "recovery" /reboot|shutdown|watchdog|none/
+
+let memory_used =
+    let setting =
+    common_resource in
+  section "memory_used" setting
+
+
+let load_15min =
+    let setting =
+    common_resource in
+  section "load_15min" setting
+
+let system =
+    let setting =
+     load_15min
+     |memory_used in
+   section "system" setting
+
+(* The resources section *)
+let resources =
+  let setting =
+    system in
+  section "resources" setting
+
 (* The amf section *)
 (* The amf section *)
 let amf =
 let amf =
   let setting =
   let setting =
@@ -125,6 +154,7 @@ let quorum =
    |kv "quorumdev_poll" Rx.integer
    |kv "quorumdev_poll" Rx.integer
    |kv "leaving_timeout" Rx.integer
    |kv "leaving_timeout" Rx.integer
    |kv "disallowed" Rx.integer
    |kv "disallowed" Rx.integer
+   |kv "quorate" Rx.integer
    |kv "two_node" Rx.integer in
    |kv "two_node" Rx.integer in
   section "quorum" setting
   section "quorum" setting
 
 
@@ -140,6 +170,6 @@ let uidgid =
    qstr /uid|gid/ in
    qstr /uid|gid/ in
   section "uidgid" setting
   section "uidgid" setting
 
 
-let lns = (comment|empty|compatibility|totem|quorum|logging|amf|service|uidgid)*
+let lns = (comment|empty|compatibility|totem|quorum|logging|resources|amf|service|uidgid)*
 
 
 let xfm = transform lns (incl "/etc/corosync/corosync.conf")
 let xfm = transform lns (incl "/etc/corosync/corosync.conf")

+ 24 - 0
conf/lenses/tests/test_corosync.aug

@@ -50,9 +50,23 @@ quorum {
     quorumdev_poll: 2
     quorumdev_poll: 2
     leaving_timeout: 2
     leaving_timeout: 2
     disallowed: 0
     disallowed: 0
+    quorate: 1
     two_node: 0
     two_node: 0
 }
 }
 
 
+resources {
+	system {
+		memory_used {
+			recovery: reboot
+			max: 80
+		}
+		load_15min {
+			recovery: watchdog
+			max: 8.56
+		}
+	}
+}
+
 uidgid {
 uidgid {
     uid: 0
     uid: 0
     gid: 0
     gid: 0
@@ -109,7 +123,17 @@ test Corosync.lns get conf =
     { "quorumdev_poll" = "2" }
     { "quorumdev_poll" = "2" }
     { "leaving_timeout" = "2" }
     { "leaving_timeout" = "2" }
     { "disallowed" = "0" }
     { "disallowed" = "0" }
+    { "quorate" = "1" }
     { "two_node" = "0" } }
     { "two_node" = "0" } }
+  { }
+    { "resources"
+	  { "system"
+		{ "memory_used"
+			{ "recovery" = "reboot" }
+			{ "max" = "80" } }
+		{ "load_15min"
+			{ "recovery" = "watchdog" }
+			{ "max" = "8.56" } } } }
   { }
   { }
   { "uidgid"
   { "uidgid"
     { "uid" = "0" }
     { "uid" = "0" }