(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: [74 82] ) (/..) } spids: [73] ) ] spids: [73] ) (C {(source)} {(DQ (${ VSub_Name KUBE_ROOT) (/hack/lib/init.sh))}) (Assignment keyword: Assign_Readonly pairs: [ (assign_pair lhs: (LhsName name:branch) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id: VTest_ColonHyphen arg_word: { (BracedVarSub token: <VSub_Name KUBE_VERIFY_GIT_BRANCH> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{(master)}) spids: [101 105] ) } ) spids: [98 106] ) } spids: [97] ) ] spids: [95] ) (FuncDef name: find_files body: (BraceGroup children: [ (C {(find)} {(.)} {(-not)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\('>)} {(-wholename)} {(SQ <./output>)} {(-o)} {(-wholename)} {(SQ <./_output>)} {(-o)} {(-wholename)} {(SQ <./_gopath>)} {(-o)} {(-wholename)} {(SQ <./release>)} {(-o)} {(-wholename)} {(SQ <./target>)} {(-o)} {(-wholename)} {(SQ <'*/third_party/*'>)} {(-o)} {(-wholename)} {(SQ <'*/vendor/*'>)} {(-o)} {(-wholename)} {(SQ <'./staging/src/k8s.io/client-go/*vendor/*'>)} {(-o)} {(-wholename)} {(SQ <'./staging/src/k8s.io/client-go/pkg/*'>)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} {(-prune)} {(EscapedLiteralPart token:<Lit_EscapedChar '\\)'>)} {(-name)} {(SQ <.readonly>)} ) ] spids: [113] ) spids: [109 112] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:IFS) op: Equal rhs: {(SQ <Lit_EscapedChar '\\n'>)} spids: [235] ) ] spids: [235] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:conflicts) op: Equal rhs: { (ArrayLiteralPart words: [ { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(find_files)}) (C {(sed)} {(SQ <'s|/.readonly||'>)}) (While cond: [ (Sentence child: (C {(read)} {(dir)}) terminator: <Op_Semi ';'> ) ] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:dir) op: Equal rhs: { (BracedVarSub token: <VSub_Name dir> suffix_op: (StringUnary op_id: VOp1_Pound arg_word: {(.) (Lit_Slash /)} ) spids: [266 271] ) } spids: [265] ) ] spids: [265] ) (If arms: [ (if_arm cond: [ (Sentence child: (SimpleCommand words: [ {(kube) (Lit_Other ':') (Lit_Other ':') (util) (Lit_Other ':') (Lit_Other ':') (has_changes_against_upstream_branch) } {(DQ (${ VSub_Name branch))} { (DQ ('^') (${ VSub_Name dir) ('/[^/]*') (EscapedLiteralPart token: <Lit_EscapedChar '\\$'> ) ) } { (SQ < '/\\.readonly$|/BUILD$|/zz_generated|/\\.generated\\.|\\.proto$|\\.pb\\.go$' > ) } ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [303] ) ] ) terminator: <Op_Semi ';'> ) ] action: [(C {(echo)} {(DQ (${ VSub_Name dir))})] spids: [16777215 307] ) ] spids: [16777215 319] ) ] spids: [262 321] ) ) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [242 322] ) } ] ) } spids: [240] ) ] spids: [240] ) (C {(unset)} {(IFS)}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other '[')} { (BracedVarSub token: <VSub_Name conflicts> prefix_op: VSub_Pound bracket_op: (WholeArray op_id:Lit_At) spids: [334 340] ) } {(-gt)} {(0)} {(Lit_Other ']')} ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(exec)}] redirects: [(Redir op_id:Redir_GreatAnd fd:1 arg_word:{(2)} spids:[354])] ) (ForEach iter_name: dir iter_words: [ { (DQ (BracedVarSub token: <VSub_Name conflicts> bracket_op: (WholeArray op_id:Lit_At) spids: [365 370] ) ) } ] do_arg_iter: False body: (DoGroup children: [ (C {(echo)} { (DQ ('Found ') (${ VSub_Name dir) ('/.readonly, but files changed compared to ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (${ VSub_Name branch) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' branch.') ) } ) ] spids: [374 394] ) spids: [363 372] ) (C {(exit)} {(1)}) ] spids: [16777215 349] ) ] else_action: [(C {(echo)} {(DQ ('Readonly packages verified.'))})] spids: [401 410] ) ] )