(CommandList children: [ (C {(set)} {(-o)} {(errexit)}) (C {(set)} {(-o)} {(nounset)}) (C {(set)} {(-o)} {(pipefail)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:KUBE_ROOT) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {(DQ (${ VSub_Name BASH_SOURCE))})] ) left_token: <Left_CommandSub '$('> spids: [64 72] ) (/..) } spids: [63] ) ] spids: [63] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:KUBE_REMOTE_RUNTIME_ROOT) op: Equal rhs: {(DQ (${ VSub_Name KUBE_ROOT) (/pkg/kubelet/apis/cri/v1alpha1/runtime))} spids: [75] ) ] spids: [75] ) (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/hack/lib/init.sh))}) (C {(kube) (Lit_Other ':') (Lit_Other ':') (golang) (Lit_Other ':') (Lit_Other ':') (setup_env)}) (FuncDef name: cleanup body: (BraceGroup children: [(C {(rm)} {(-rf)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/_tmp/)})] spids: [106] ) spids: [102 105] ) (C {(trap)} {(cleanup)} {(EXIT)}) (C {(mkdir)} {(-p)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/_tmp)}) (C {(cp)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/api.pb.go)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/_tmp/)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ret) op:Equal rhs:{(0)} spids:[150])] spids: [150] ) (SimpleCommand words: [{(DQ (${ VSub_Name KUBE_ROOT) (/hack/update-generated-runtime.sh))}] more_env: [(env_pair name:KUBE_VERBOSE val:{(3)} spids:[153])] ) (AndOr ops: [Op_DPipe] children: [ (C {(diff)} {(-I)} {(DQ ('gzipped FileDescriptorProto'))} {(-I)} {(DQ (0x))} {(-Naupr)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/_tmp/api.pb.go)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/api.pb.go)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ret) op:Equal rhs:{($ VSub_QMark '$?')} spids:[191])] spids: [191] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolBinary op_id:BoolBinary_eq left:{($ VSub_Name '$ret')} right:{(0)}) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(echo)} {(DQ ('Generated container runtime api is up to date.'))}) (C {(cp)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/_tmp/api.pb.go)} {(${ VSub_Name KUBE_REMOTE_RUNTIME_ROOT) (/)} ) ] spids: [16777215 207] ) ] else_action: [ (C {(echo)} { (DQ ( 'Generated container runtime api is out of date. Please run hack/update-generated-runtime.sh' ) ) } ) (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) ] spids: [229 243] ) ] )