(command.CommandList children: [ (C {(set)} {(-e)} {(-x)}) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:action spids:[40]) op: Equal rhs: {($ VSub_Number '$1')} spids: [40] ) ] spids: [40] ) (command.If arms: [ (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name '$action')} right: {(DQ (build))} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(cd)} {(/io)}) (command.ForEach iter_name: PYBIN iter_words: [{(/opt/python/) (Lit_Other '*') (/bin)}] do_arg_iter: F body: (command.DoGroup children: [ (C {(DQ ($ VSub_Name '$PYBIN') (/pip))} {(install)} {(-r)} {(requirements/wheel.pip)}) (C {(DQ ($ VSub_Name '$PYBIN') (/python))} {(setup.py)} {(bdist_wheel)} {(-d)} {(word_part.TildeSubPart token:<Lit_TildeLike '~'>) (/wheelhouse/)} ) ] spids: [82 112] ) spids: [76 80] ) (C {(cd)} {(word_part.TildeSubPart token:<Lit_TildeLike '~'>)}) (command.ForEach iter_name: whl iter_words: [{(wheelhouse/) (Lit_Other '*') (.whl)}] do_arg_iter: F body: (command.DoGroup children: [ (C {(auditwheel)} {(repair)} {(DQ ($ VSub_Name '$whl'))} {(-w)} {(/io/dist/)}) ] spids: [136 152] ) spids: [130 134] ) ] spids: [16777215 59] ) (if_arm cond: [ (command.Sentence child: (command.DBracket expr: (bool_expr.BoolBinary op_id: BoolBinary_GlobDEqual left: {($ VSub_Name '$action')} right: {(DQ (test))} ) ) terminator: <Op_Semi ';'> ) ] action: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TOXBIN spids:[177]) op: Equal rhs: {(/opt/python/cp27-cp27m/bin)} spids: [177] ) ] spids: [177] ) (C {(DQ ($ VSub_Name '$TOXBIN') (/pip))} {(install)} {(-r)} {(/io/requirements/ci.pip)}) (command.ForEach iter_name: PYBIN iter_words: [{(/opt/python/) (Lit_Other '*') (/bin/)}] do_arg_iter: F body: (command.DoGroup children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:PYNAME spids:[208]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(DQ ($ VSub_Name '$PYBIN') (/python))} {(-c)} { (DQ ( "import sys; print('python{0[0]}.{0[1]}'.format(sys.version_info))" ) ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [209 220] ) } spids: [208] ) ] spids: [208] ) (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TOXENV spids:[223]) op: Equal rhs: { (word_part.CommandSubPart command_list: (command.CommandList children: [ (C {(DQ ($ VSub_Name '$PYBIN') (/python))} {(-c)} { (DQ ( "import sys; print('py{0[0]}{0[1]}'.format(sys.version_info))" ) ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [224 235] ) } spids: [223] ) ] spids: [223] ) (C {(ln)} {(-s)} {(DQ ($ VSub_Name '$PYBIN') (/) ($ VSub_Name '$PYNAME'))} {(/usr/local/bin/) ($ VSub_Name '$PYNAME')} ) (C {(DQ ($ VSub_Name '$TOXBIN') (/tox))} {(-e)} {($ VSub_Name '$TOXENV')}) (C {(rm)} {(-f)} {(/usr/local/bin/) ($ VSub_Name '$PYNAME')}) ] spids: [205 278] ) spids: [199 203] ) ] spids: [155 170] ) ] else_action: [(C {(echo)} {(DQ ('Need an action to perform!'))})] spids: [281 290] ) ] )