(command.CommandList children: [ (command.Simple blame_tok: <source> more_env: [] words: [{<source>} {(DQ (${ Id.VSub_Name KUBE_ROOT) <'/cluster/gce/container-linux/helper.sh'>)}] redirects: [] do_fork: T ) (command.ShFunction keyword: <Id.KW_Function function> name_tok: <get-node-instance-metadata> name: get-node-instance-metadata body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'metadata='> (DQ )}] redirects: [] do_fork: T ) (command.ShAssignment left: <Id.Lit_VarLike 'metadata+='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'metadata+='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'metadata+='> name:metadata) op: assign_op.PlusEqual rhs: {(DQ <'kube-env='> (${ Id.VSub_Name KUBE_TEMP) <'/node-kube-env.yaml,'>)} ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'metadata+='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'metadata+='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'metadata+='> name:metadata) op: assign_op.PlusEqual rhs: { (DQ <'user-data='> (${ Id.VSub_Name KUBE_ROOT) <'/cluster/gce/container-linux/node.yaml,'> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'metadata+='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'metadata+='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'metadata+='> name:metadata) op: assign_op.PlusEqual rhs: { (DQ <'configure-sh='> (${ Id.VSub_Name KUBE_ROOT) <'/cluster/gce/container-linux/configure.sh,'> ) } ) ] redirects: [] ) (command.ShAssignment left: <Id.Lit_VarLike 'metadata+='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'metadata+='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'metadata+='> name:metadata) op: assign_op.PlusEqual rhs: {(DQ <'cluster-name='> (${ Id.VSub_Name KUBE_TEMP) <'/cluster-name.txt'>)} ) ] redirects: [] ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ (${ Id.VSub_Name metadata))}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction keyword: <Id.KW_Function function> name_tok: <create-node-instance-template> name: create-node-instance-template body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'template_name='> (DQ ($ Id.VSub_Number 1))}] redirects: [] do_fork: T ) (command.Simple blame_tok: <create-node-template> more_env: [] words: [ {<create-node-template>} {(DQ ($ Id.VSub_DollarName template_name))} { (DQ (BracedVarSub left: <Id.Left_DollarBrace '${'> token: <Id.VSub_Name scope_flags> var_name: scope_flags bracket_op: (bracket_op.WholeArray op_id:Id.Arith_Star) right: <Id.Right_DollarBrace '}'> ) ) } { (DQ (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <get-node-instance-metadata> more_env: [] words: [{<get-node-instance-metadata>}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) ) } ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) ] )