(command.CommandList children: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [{<dpkg>} {<-s>} {<opscode-keyring>}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (C {<grep>} {<-q>} {<Status.> <Id.Lit_Star '*'> <installed>}) ] negated: F ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<echo>} {<opscode-keyring>} {<is>} {<installed>})] spids: [27 49] ) ] else_action: [ (C {<apt-get>} {<update>}) (C {<apt-get>} {<--allow-unauthenticated>} {<-y>} {<install>} {<opscode-keyring>}) (C {<apt-get>} {<update>}) ] ) (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (command.Pipeline children: [ (command.Simple words: [{<dpkg>} {<-s>} {<chef>}] redirects: [ (redir op: <Id.Redir_Great '2>'> loc: (redir_loc.Fd fd:2) arg: {<'/dev/null'>} ) ] do_fork: T ) (C {<grep>} {<-q>} {<Status.> <Id.Lit_Star '*'> <installed>}) ] negated: F ) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<echo>} {<chef>} {<is>} {<installed>})] spids: [87 109] ) ] else_action: [ (command.If arms: [ (if_arm cond: (condition.Shell commands: [ (command.Sentence child: (C {<Id.Lit_LBracket '['>} {<-f>} {<chef-client.deb>} {<Id.Lit_RBracket ']'>}) terminator: <Id.Op_Semi _> ) ] ) action: [(C {<dpkg>} {<-i>} {<chef-client.deb>})] spids: [123 134] ) ] else_action: [ (C {<echo>} {(DQ <'Warning: chef-client.deb not found'>)}) (C {<echo>} {(DQ <'chef bootstrap will attempt chef-client install'>)}) ] ) ] ) ] )