(List (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS errexit]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS nounset]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS pipefail]} ) (= scope= flags=0 words=[] bindings=[('KUBE_ROOT', {[ComSub (Com {[LIT_CHARS dirname]} {[DQ [VarSub BASH_SOURCE]]})] [LIT_CHARS /..]})]) (Com {[LIT_CHARS source]} {[DQ [VarSub KUBE_ROOT][LIT_CHARS /hack/lib/init.sh]]} ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS golang] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS setup_env]} ) (= scope= flags=0 words=[] bindings=[('generated_files', {[Array {[ComSub (Com {[LIT_CHARS find]} {[LIT_CHARS .]} {[LIT_CHARS -not]} {[\ LIT_ESCAPED_CHAR "\\("]} {[\ LIT_ESCAPED_CHAR "\\("]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[LIT_CHARS -o]} {[LIT_CHARS -wholename]} {[SQ ]} {[\ LIT_ESCAPED_CHAR "\\)"]} {[LIT_CHARS -prune]} {[\ LIT_ESCAPED_CHAR "\\)"]} {[LIT_CHARS -name]} {[SQ ]})]}]})]) (FunctionDef cleanup [] (For generated_file [{[VarSub generated_files bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]) (Com {[LIT_CHARS rm]} {[LIT_CHARS -f]} {[DQ [VarSub generated_file][LIT_CHARS .original]]} ) ) ) (Com {[LIT_CHARS trap]} {[LIT_CHARS cleanup]} {[LIT_CHARS EXIT]} {[LIT_CHARS SIGINT]} ) (For generated_file [{[VarSub generated_files bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]) (Com {[LIT_CHARS cat]} {[DQ [VarSub generated_file]]} < (FilenameRedirectNode filename={[DQ [VarSub generated_file][LIT_CHARS .original]]} "> 1), > ) ) (Com {[VarSub KUBE_ROOT] [LIT_CHARS /hack/update-codecgen.sh]} ) (= scope= flags=0 words=[] bindings=[('ret', {[LIT_CHARS 0]})]) (For generated_file [{[VarSub generated_files bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]) (List (= scope= flags=0 words=[] bindings=[('cur', {[LIT_CHARS 0]})]) (AndOr OP_OR_IF (Com {[LIT_CHARS diff]} {[LIT_CHARS -Naupr]} {[LIT_CHARS -I]} {[SQ ]} {[DQ [VarSub generated_file]]} {[DQ [VarSub generated_file][LIT_CHARS .original]]} ) (= scope= flags=0 words=[] bindings=[('cur', {[VarSub ?]})]) ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub cur]} {[LIT_CHARS 0]}}) (Com {[LIT_CHARS echo]} {[DQ [VarSub generated_file][LIT_CHARS " up to date."]]} ) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [VarSub generated_file][LIT_CHARS " was out of date. Please run hack/update-codecgen.sh. (If you're running locally, this was run for you already.)"]]} ) (= scope= flags=0 words=[] bindings=[('ret', {[LIT_CHARS 1]})]) ) ) ) ) (Com {[LIT_CHARS exit]} {[VarSub ret]} ) )