(command.CommandList children: [ (C {(set)} {(-e)}) (C {(.)} { (word_part.CommandSub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children:[(C {(dirname)} {(${ VSub_Number 0)})]) ) (/atexit.sh) } ) (C {(.)} { (word_part.CommandSub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children:[(C {(dirname)} {(${ VSub_Number 0)})]) ) (/colors.sh) } ) (command.AndOr ops: [Op_DPipe] children: [ (C {(test)} {(${ VSub_Pound '#')} {(-eq)} {(2)}) (command.BraceGroup children: [ (command.Sentence child: (C {(echo)} { (DQ ('Usage: ') (word_part.CommandSub left_token: <Left_Backtick '`'> command_list: (command.CommandList children: [(C {(basename)} {(${ VSub_Number 0)})] ) ) (' [version] [candidate]') ) } ) terminator: <Op_Semi ';'> ) (command.Sentence child: (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] ) ] ) (command.Assignment pairs: [(assign_pair lhs:(lhs_expr.LhsName name:VERSION) op:Equal rhs:{(${ VSub_Number 1)})] ) (command.Assignment pairs: [(assign_pair lhs:(lhs_expr.LhsName name:CANDIDATE) op:Equal rhs:{(${ VSub_Number 2)})] ) (command.Assignment pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:TAG) op: Equal rhs: {(DQ (${ VSub_Name VERSION) (-rc) (${ VSub_Name CANDIDATE))} ) ] ) (C {(echo)} {(DQ (${ VSub_Name GREEN) ('Tagging ') (${ VSub_Name TAG) (${ VSub_Name NORMAL))}) (C {(read)} {(-p)} {(DQ ('Hit enter to continue ... '))}) (command.Assignment pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:WORK_DIR) op: Equal rhs: { (word_part.CommandSub left_token: <Left_Backtick '`'> command_list: (command.CommandList children: [(C {(mktemp)} {(-d)} {(/tmp/mesos-tag-XXXX)})] ) ) } ) ] ) (C {(atexit)} {(DQ ('rm -rf ') (${ VSub_Name WORK_DIR))}) (command.Assignment pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:MESOS_GIT_LOCAL) op: Equal rhs: { (word_part.CommandSub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [ (command.Sentence child: (C {(cd)} { (DQ (word_part.CommandSub left_token: <Left_DollarParen '$('> command_list: (command.CommandList children: [(C {(dirname)} {($ VSub_Number '$0')})] ) ) ) (/..) } ) terminator: <Op_Semi ';'> ) (C {(pwd)}) ] ) ) } ) ] ) (C {(pushd)} {(${ VSub_Name WORK_DIR)}) (C {(git)} {(clone)} {(--shared)} {(${ VSub_Name MESOS_GIT_LOCAL)} {(--branch)} {(${ VSub_Name TAG)} {(mesos)} ) (C {(pushd)} {(mesos)}) (C {(echo)} {(DQ ('Confirming that configure.ac contains ') (${ VSub_Name VERSION))}) (C {(grep)} { (DQ (Lit_Other '\\') ('[mesos') (Lit_Other '\\') ('], ') (Lit_Other '\\') ('[') (${ VSub_Name VERSION) (Lit_Other '\\') (']') ) } {(configure.ac)} ) (C {(echo)} { (DQ (${ VSub_Name GREEN) ('Updating configure.ac to include the release candidate.') (${ VSub_Name NORMAL) ) } ) (C {(sed)} {(-i)} {(SQ )} { (DQ (s/) (Lit_Other '\\') ('[mesos') (Lit_Other '\\') ('], ') (Lit_Other '\\') ('[.*') (Lit_Other '\\') (']/[mesos], [') (${ VSub_Name TAG) (']/') ) } {(configure.ac)} ) (C {(./bootstrap)}) (C {(mkdir)} {(build)}) (C {(pushd)} {(build)}) (C {(../configure)} {(--disable-optimize)}) (C {(pushd)} {(3rdparty)}) (C {(make)} {(-j3)}) (C {(popd)}) (C {(make)} {(-j3)} {(maven-install)}) (C {(mvn)} {(deploy)} {(-f)} {(src/java/mesos.pom)}) (C {(echo)} { (DQ (${ VSub_Name GREEN) ('Successfully deployed the jar to staging maven repository ...') (${ VSub_Name NORMAL) ) } ) (C {(read)} {(-p)} {(DQ ('Please *close* and *release* the staging repository and hit enter to continue ...'))} ) (command.Assignment pairs: [(assign_pair lhs:(lhs_expr.LhsName name:input) op:Equal rhs:{(DQ )})] ) (command.WhileUntil keyword: <KW_While while> cond: [ (command.Sentence child: (C {(Lit_LBracket '[')} {(KW_Bang '!')} { (word_part.BracedVarSub token: <VSub_Name input> suffix_op: (suffix_op.Unary op_id:VTest_ColonHyphen arg_word:{(n)}) ) } {(Lit_Other '=')} {(DQ (y))} {(Lit_RBracket ']')} ) terminator: <Op_Semi ';'> ) ] body: (command.DoGroup children: [ (C {(read)} {(-p)} {(DQ ('Have you released the maven repository? (y/n): '))} {(input)}) (command.AndOr ops: [Op_DPipe] children: [ (C {(Lit_LBracket '[')} { (word_part.BracedVarSub token: <VSub_Name input> suffix_op: (suffix_op.Unary op_id:VTest_ColonHyphen arg_word:{(n)}) ) } {(Lit_Other '=')} {(DQ (y))} {(Lit_RBracket ']')} ) (C {(echo)} {(DQ ('Please release the staging maven repository before continuing'))}) ] ) ] ) ) (C {(popd)}) (C {(echo)} {(DQ (${ VSub_Name GREEN) ('Pushing the git tag to the repository...') (${ VSub_Name NORMAL))} ) (command.Assignment pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:MESOS_GIT_URL) op: Equal rhs: {(DQ ('https://git-wip-us.apache.org/repos/asf/mesos.git'))} ) ] ) (C {(git)} {(push)} {(${ VSub_Name MESOS_GIT_URL)} {(refs/tags/) (${ VSub_Name TAG)}) (C {(popd)}) (C {(popd)}) (C {(echo)} {(DQ (${ VSub_Name GREEN) ('Success!') (${ VSub_Name NORMAL))}) (command.ControlFlow token:<ControlFlow_Exit exit> arg_word:{(0)}) ] )