(command.CommandList children: [ (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id:BoolBinary_ne left:{($ VSub_Pound '$#')} right:{(2)}) ) terminator: <Op_Semi ';'> ) ] action: [ (command.Simple words: [ {(echo)} { (DQ ('Usage: ') (word_part.CommandSub left_token: <Left_Backtick '`'> command_list: (command.CommandList children: [(C {(basename)} {($ VSub_Number '$0')})] ) ) (' IP-Address Chef-Environment') ) } ] redirects: [(redir.Redir op:<Redir_DGreat '>>'> fd:16777215 arg_word:{(/dev/stderr)})] ) (command.ControlFlow token:<ControlFlow_Exit exit>) ] ) ] ) (command.Assignment pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:HOSTNAME) op: Equal rhs: { (word_part.CommandSub left_token: <Left_Backtick '`'> command_list: (command.CommandList children:[(C {(hostname)} {(-f)})]) ) } ) ] ) (command.Pipeline children: [ (C {(knife)} {(client)} {(list)}) (command.Simple words: [{(grep)} {($ VSub_DollarName '$HOSTNAME')}] redirects: [(redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(/dev/null)})] ) ] negated: F ) (command.Assignment pairs: [(assign_pair lhs:(lhs_expr.LhsName name:RES) op:Equal rhs:{($ VSub_QMark '$?')})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.Binary op_id: BoolBinary_ne left: {(DQ (${ VSub_Name RES))} right: {(0)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(sudo)} {(bash)} {(-c)} {(SQ <'EDITOR=true knife client create $(hostname -f) > /etc/chef/client.pem'>)} ) (C {(knife)} {(actor)} {(map)}) (C {(knife)} {(group)} {(add)} {(actor)} {(admins)} { (word_part.CommandSub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children:[(C {(hostname)} {(-f)})]) ) } ) ] ) ] else_action: [(C {(echo)} {(DQ ($ VSub_DollarName '$HOSTNAME') (' already registered in Chef'))})] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr:(bool_expr.Unary op_id:BoolUnary_d child:{(/home/vagrant)})) terminator: <Op_Semi ';'> ) ] action: [ (C {(knife)} {(bootstrap)} {(-E)} {($ VSub_Number '$2')} {($ VSub_Number '$1')} {(-i)} {(/chef-bcpc-host/vbox/insecure_private_key)} {(-x)} {(vagrant)} {(--sudo)} ) ] ) ] else_action: [ (C {(knife)} {(bootstrap)} {(-E)} {($ VSub_Number '$2')} {($ VSub_Number '$1')} {(-x)} {(ubuntu)} {(--sudo)} ) ] ) (C {(knife)} {(node)} {(run_list)} {(add)} { (word_part.CommandSub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children:[(C {(hostname)} {(-f)})]) ) } {(SQ <'role[BCPC-Bootstrap]'>)} ) (C {(sudo)} {(chef-client)}) ] )