(CommandList children: [ (FuncDef name: myping body: (BraceGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (SimpleCommand words: [{(hash)} {(fping)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [38] ) ] ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RES) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(fping)} {(-aq)} {($ VSub_Number "$1")})] ) left_token: <Left_Backtick "`"> spids: [46 52] ) } spids: [45] ) ] spids: [45] ) ] spids: [-1 42] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RES) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(ping)} {(-c)} {(1)} {($ VSub_Number "$1")}) (C {(grep)} {(ttl)}) ] negated: False ) ] ) left_token: <Left_Backtick "`"> spids: [59 73] ) } spids: [58] ) ] spids: [58] ) ] spids: [55 76] ) (C {(echo)} {($ VSub_Name "$RES")}) ] spids: [29] ) spids: [25 28] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr:(BoolUnary op_id:BoolUnary_z child:{(DQ ($ VSub_Number "$1"))})) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {(DQ ("Usage: ") ($ VSub_Number "$0") (" environment (role)"))}) (C {(exit)}) ] spids: [-1 98] ) ] else_action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ENVIRONMENT) op: Equal rhs: {(DQ ($ VSub_Number "$1"))} spids: [115] ) ] spids: [115] ) ] spids: [112 120] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ROLE_REQUESTED) op: Equal rhs: {(DQ ($ VSub_Number "$2"))} spids: [122] ) ] spids: [122] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr:(BoolUnary op_id:BoolUnary_f child:{(cluster.txt)})) terminator: <Op_Semi ";"> ) ] action: [ (While cond: [ (Sentence child: (C {(read)} {(HOSTNAME)} {(MACADDR)} {(IPADDR)} {(ILOIPADDR)} {(DOMAIN)} {(ROLE)}) terminator: <Op_Semi ";"> ) ] body: (DoGroup children: [ (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id: BoolBinary_GlobEqual left: {($ VSub_Name "$HOSTNAME")} right: {(DQ (end))} ) ) terminator: <Op_Semi ";"> ) ] action: [(ControlFlow token:<ControlFlow_Continue continue>)] spids: [-1 176] ) ] spids: [-1 182] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (LogicalOr left: (BoolUnary op_id: BoolUnary_z child: {(DQ ($ VSub_Name "$ROLE_REQUESTED"))} ) right: (BoolBinary op_id: BoolBinary_GlobEqual left: {(DQ ($ VSub_Name "$ROLE"))} right: {(DQ ($ VSub_Name "$ROLE_REQUESTED"))} ) ) ) terminator: <Op_Semi ";"> ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:HOSTS) op: Equal rhs: {(DQ ($ VSub_Name "$HOSTS") (" ") ($ VSub_Name "$HOSTNAME"))} spids: [213] ) ] spids: [213] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IPS) op: Equal rhs: {(DQ ($ VSub_Name "$IPS") (" ") ($ VSub_Name "$IPADDR"))} spids: [221] ) ] spids: [221] ) ] spids: [-1 210] ) ] spids: [-1 229] ) ] spids: [158 232] ) redirects: [(Redir op_id:Redir_Less fd:-1 arg_word:{(cluster.txt)} spids:[234])] ) (C {(echo)} {(DQ ("HOSTS = ") ($ VSub_Name "$HOSTS"))}) (ForEach iter_name: HOST iter_words: [{($ VSub_Name "$IPS")}] do_arg_iter: False body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RES) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(myping)} {($ VSub_Name "$HOST")})] ) left_token: <Left_Backtick "`"> spids: [260 264] ) } spids: [259] ) ] spids: [259] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id:BoolUnary_z child:{($ VSub_Name "$RES")}) ) terminator: <Op_Semi ";"> ) ] action: [ (C {(echo)} {($ VSub_Name "$HOST")} {(is)} {(down)}) (ControlFlow token: <ControlFlow_Continue continue> ) ] spids: [-1 278] ) ] else_action: [(C {(echo)} {($ VSub_Name "$HOST")} {(is)} {(up)})] spids: [293 305] ) (C {(./nodessh.sh)} {($ VSub_Name "$ENVIRONMENT")} {($ VSub_Name "$HOST")} {(DQ (chef-client))} {(sudo)} ) ] spids: [256 321] ) spids: [252 254] ) ] spids: [-1 138] ) ] spids: [-1 323] ) ] )