From 864374ca26c54d4b1df6a9e4b99e5cf0b0f0ba12 Mon Sep 17 00:00:00 2001 From: sienkiew Date: Thu, 11 Oct 2012 16:39:02 +0000 Subject: add IFNOT command git-svn-id: https://svn.stsci.edu/svn/ssb/etal/steuermann/trunk@811 d34015c8-bcbb-4646-8ac8-8ba5febf221d --- steuermann/specfile.exy | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/steuermann/specfile.exy b/steuermann/specfile.exy index f848072..de37aac 100644 --- a/steuermann/specfile.exy +++ b/steuermann/specfile.exy @@ -12,6 +12,7 @@ parser specfile: token END: "$" token HOSTGROUP: "HOSTGROUP" token IF: "IF" + token IFNOT: "IFNOT" token TABLE: "TABLE" token HOST : "HOST" token CMD: "CMD" @@ -57,7 +58,9 @@ parser specfile: rule hostgroup_front<> : IF name - {{ return nodes.check_condition(name, self._scanner.filename ) }} + {{ return nodes.check_condition(name, self._scanner.filename ) }} + | IFNOT name + {{ return not nodes.check_condition(name, self._scanner.filename ) }} | {{ return True }} rule hostgroup_back<> : @@ -67,7 +70,8 @@ parser specfile: )* rule command_cond<> : - IF name COLON command {{ if nodes.check_condition(name, self._scanner.filename ) : self.data.add_command_list( table_name, hostlist, [ command ] ) }} + IF name COLON command {{ if nodes.check_condition(name, self._scanner.filename ) : self.data.add_command_list( table_name, hostlist, [ command ] ) }} + IFNOT name COLON command {{ if not nodes.check_condition(name, self._scanner.filename ) : self.data.add_command_list( table_name, hostlist, [ command ] ) }} | command {{ self.data.add_command_list( table_name, hostlist, [ command ] ) }} rule command: -- cgit