(List (Com {[LIT_CHARS set]} {[LIT_CHARS -eo]} {[LIT_CHARS pipefail]}) (= scope= flags=0 words=[] bindings=[('MODE', {[DQ [VarSub 1]]})]) (= scope= flags=0 words=[] bindings=[('MODE', {[VarSub MODE test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS testing]]}]})]) (FunctionDef setup_circle [] (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "=====> setup_circle on CIRCLE_NODE_INDEX: "][VarSub CIRCLE_NODE_INDEX]]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_VAR_LIKE "CI="] [LIT_CHARS true] =} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS sshcommand]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS usermod]} {[LIT_CHARS -G]} {[LIT_CHARS docker]} {[LIT_CHARS dokku]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS rsync]} {[LIT_CHARS -a]} {[TildeSub 'ubuntu'] [LIT_CHARS /.ssh/]} {[TildeSub 'root'] [LIT_CHARS /.ssh/]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS chown]} {[LIT_CHARS -R]} {[LIT_CHARS root] [LIT_OTHER ":"] [LIT_CHARS root]} {[TildeSub 'root'] [LIT_CHARS /.ssh/]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS sed]} {[LIT_CHARS --in-place]} {[SQ ]} {[TildeSub 'root'] [LIT_CHARS /.ssh/config]}) (AndOr OP_AND_IF (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub 1]]} {[DQ [LIT_CHARS buildstack]]}}) (Com {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS stack]} more_env=[('BUILD_STACK', {[LIT_CHARS true]})] ) ) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_VAR_LIKE "CI="] [LIT_CHARS true] =} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS install]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS setup-deploy-tests]}) (Com {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS ci-dependencies]}) (Com {[LIT_CHARS bash]} {[LIT_CHARS --version]}) (Com {[LIT_CHARS docker]} {[LIT_CHARS version]}) (Com {[LIT_CHARS lsb_release]} {[LIT_CHARS -a]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[LIT_CHARS /home/dokku/.dokkurc]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_CHARS chown]} {[LIT_CHARS dokku] [LIT_OTHER ":"] [LIT_CHARS ubuntu]} {[LIT_CHARS /home/dokku/.dokkurc]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_CHARS chmod]} {[LIT_CHARS 775]} {[LIT_CHARS /home/dokku/.dokkurc]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS docker]} {[LIT_CHARS pull]} {[LIT_CHARS node] [LIT_OTHER ":"] [LIT_CHARS 4]}) ) ) (If (AndOr OP_AND_IF (DBracket {B1 UNARY_STRING_n {[DQ [VarSub CIRCLE_NODE_INDEX]]}}) (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub MODE]]} {[DQ [LIT_CHARS setup]]}}) ) (List (Com {[LIT_CHARS setup_circle]}) (Com {[LIT_CHARS exit]} {[VarSub ?]}) ) ) (= scope= flags=0 words=[] bindings=[('start', {[ComSub (Com {[LIT_CHARS date]} {[LIT_OTHER "+"] [LIT_OTHER "%"] [LIT_CHARS s]})]})]) (Case to_match={[DQ [VarSub CIRCLE_NODE_INDEX]]}, pat_word_list=[[{[LIT_CHARS 0]}], [{[LIT_CHARS 1]}], [{[LIT_CHARS 2]}], [{[LIT_CHARS 3]}]] (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "=====> make unit-tests (1/4) on CIRCLE_NODE_INDEX: "][VarSub CIRCLE_NODE_INDEX]]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_VAR_LIKE "UNIT_TEST_BATCH="] [LIT_CHARS 1] =} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS unit-tests]}) (= scope= flags=0 words=[] bindings=[('RC', {[VarSub ?]})]) (If (DBracket {B2 BINARY_INT_NE {[VarSub RC]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "exit status: "][VarSub RC]]}) (Com {[LIT_CHARS exit]} {[VarSub RC]}) ) ) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "=====> make unit-tests (2/4) on CIRCLE_NODE_INDEX: "][VarSub CIRCLE_NODE_INDEX]]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_VAR_LIKE "UNIT_TEST_BATCH="] [LIT_CHARS 2] =} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS unit-tests]}) (= scope= flags=0 words=[] bindings=[('RC', {[VarSub ?]})]) (If (DBracket {B2 BINARY_INT_NE {[VarSub RC]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "exit status: "][VarSub RC]]}) (Com {[LIT_CHARS exit]} {[VarSub RC]}) ) ) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "=====> make unit-tests (3/4) on CIRCLE_NODE_INDEX: "][VarSub CIRCLE_NODE_INDEX]]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_VAR_LIKE "UNIT_TEST_BATCH="] [LIT_CHARS 3] =} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS unit-tests]}) (= scope= flags=0 words=[] bindings=[('RC', {[VarSub ?]})]) (If (DBracket {B2 BINARY_INT_NE {[VarSub RC]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "exit status: "][VarSub RC]]}) (Com {[LIT_CHARS exit]} {[VarSub RC]}) ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "=====> make deploy tests"]]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS deploy-test-checks-root]} {[LIT_CHARS deploy-test-config]} {[LIT_CHARS deploy-test-multi]}) (= scope= flags=0 words=[] bindings=[('RC', {[VarSub ?]})]) (If (DBracket {B2 BINARY_INT_NE {[VarSub RC]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "exit status: "][VarSub RC]]}) (Com {[LIT_CHARS exit]} {[VarSub RC]}) ) ) ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "=====> make unit-tests (4/4) on CIRCLE_NODE_INDEX: "][VarSub CIRCLE_NODE_INDEX]]}) (Com {[LIT_CHARS sudo]} {[LIT_CHARS -E]} {[LIT_VAR_LIKE "UNIT_TEST_BATCH="] [LIT_CHARS 4] =} {[LIT_CHARS make]} {[LIT_CHARS -e]} {[LIT_CHARS unit-tests]}) (= scope= flags=0 words=[] bindings=[('RC', {[VarSub ?]})]) (If (DBracket {B2 BINARY_INT_NE {[VarSub RC]} {[LIT_CHARS 0]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "exit status: "][VarSub RC]]}) (Com {[LIT_CHARS exit]} {[VarSub RC]}) ) ) ) ) (= scope= flags=0 words=[] bindings=[('end', {[ComSub (Com {[LIT_CHARS date]} {[LIT_OTHER "+"] [LIT_OTHER "%"] [LIT_CHARS s]})]})]) (= scope= flags=0 words=[] bindings=[('runtime', {[ArithSub {A2 AS_OP_MINUS {A Atom NODE_ARITH_WORD {[VarSub end]}} {A Atom NODE_ARITH_WORD {[VarSub start]}}}]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "suite runtime: "][ComSub (Com {[LIT_CHARS date]} {[LIT_CHARS -u]} {[LIT_CHARS -d]} {[LIT_OTHER "@"] [VarSub runtime]} {[LIT_OTHER "+"] [DQ [LIT_CHARS "%T"]]})]]}) )