(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]} ) (Com {[LIT_CHARS make]} {[LIT_CHARS -C]} {[DQ [VarSub KUBE_ROOT]]} {[LIT_VAR_LIKE "WHAT="] [LIT_CHARS cmd/kube-apiserver] =} ) (= scope= flags=0 words=[] bindings=[('apiserver', {[ComSub (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS util] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS find-binary]} {[DQ [LIT_CHARS kube-apiserver]]})]})]) (= scope= flags=0 words=[] bindings=[('SPECROOT', {[DQ [VarSub KUBE_ROOT][LIT_CHARS /api/swagger-spec]]})]) (= scope= flags=0 words=[] bindings=[('TMP_SPECROOT', {[DQ [VarSub KUBE_ROOT][LIT_CHARS /_tmp/swagger-spec]]})]) (= scope= flags=0 words=[] bindings=[('_tmp', {[DQ [VarSub KUBE_ROOT][LIT_CHARS /_tmp]]})]) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[DQ [VarSub _tmp]]} ) (Com {[LIT_CHARS trap]} {[DQ [LIT_CHARS "rm -rf "][VarSub _tmp]]} {[LIT_CHARS EXIT]} {[LIT_CHARS SIGINT]} ) (Com {[LIT_CHARS cp]} {[LIT_CHARS -a]} {[DQ [VarSub SPECROOT]]} {[DQ [VarSub TMP_SPECROOT]]} ) (Com {[DQ [VarSub KUBE_ROOT][LIT_CHARS /hack/update-swagger-spec.sh]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "diffing "][VarSub SPECROOT][LIT_CHARS " against freshly generated swagger spec"]]} ) (= scope= flags=0 words=[] bindings=[('ret', {[LIT_CHARS 0]})]) (AndOr OP_OR_IF (Com {[LIT_CHARS diff]} {[LIT_CHARS -Naupr]} {[LIT_CHARS -I]} {[SQ ]} {[DQ [VarSub SPECROOT]]} {[DQ [VarSub TMP_SPECROOT]]} ) (= scope= flags=0 words=[] bindings=[('ret', {[VarSub ?]})]) ) (Com {[LIT_CHARS cp]} {[LIT_CHARS -a]} {[VarSub TMP_SPECROOT]} {[DQ [VarSub KUBE_ROOT][LIT_CHARS /api]]} ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub ret]} {[LIT_CHARS 0]}}) (Com {[LIT_CHARS echo]} {[DQ [VarSub SPECROOT][LIT_CHARS " up to date."]]} ) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [VarSub SPECROOT][LIT_CHARS " is out of date. Please run hack/update-swagger-spec.sh"]]} ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]} ) ) ) )