(List (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS errexit]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS nounset]} ) (Com {[LIT_CHARS set]} {[LIT_CHARS -o]} {[LIT_CHARS pipefail]} ) (= scope= flags=0 words=[] bindings=[('KUBE_ROOT', {[ComSub (Com {[LIT_CHARS dirname]} {[DQ [VarSub BASH_SOURCE]]})] [LIT_CHARS /..]})]) (Com {[LIT_CHARS source]} {[DQ [VarSub KUBE_ROOT][LIT_CHARS /cluster/common.sh]]} ) (Com {[LIT_CHARS source]} {[DQ [VarSub KUBE_ROOT][LIT_CHARS /hack/lib/init.sh]]} ) (= scope= flags=0 words=[] bindings=[('ginkgo', {[ComSub (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS util] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS find-binary]} {[DQ [LIT_CHARS ginkgo]]})]})]) (= scope= flags=0 words=[] bindings=[('e2e_test', {[ComSub (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS util] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS find-binary]} {[DQ [LIT_CHARS e2e.test]]})]})]) (= scope= flags=0 words=[] bindings=[('GINKGO_PARALLEL', {[VarSub GINKGO_PARALLEL test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS n]}]})]) (= scope= flags=0 words=[] bindings=[('GINKGO_TOLERATE_FLAKES', {[VarSub GINKGO_TOLERATE_FLAKES test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS n]}]})]) (= scope= flags=0 words=[] bindings=[('GINKGO_PARALLELISM', {[VarSub GINKGO_PARALLELISM test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS 25]}]})]) (Com {[LIT_OTHER ":"]} {[VarSub KUBECTL test_op=VS_TEST_COLON_EQUALS {[DQ [VarSub KUBE_ROOT][LIT_CHARS /cluster/kubectl.sh]]}]} ) (Com {[LIT_OTHER ":"]} {[VarSub KUBE_CONFIG_FILE test_op=VS_TEST_COLON_EQUALS {[DQ [LIT_CHARS config-test.sh]]}]} ) (= scope= flags=1 words=[{[LIT_CHARS KUBECTL]}, {[LIT_CHARS KUBE_CONFIG_FILE]}] bindings=[]) (Com {[LIT_CHARS source]} {[DQ [VarSub KUBE_ROOT][LIT_CHARS /cluster/kube-util.sh]]} ) (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub KUBERNETES_CONFORMANCE_TEST test_op=VS_TEST_COLON_HYPHEN {}]]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Conformance test: not doing test setup."]]} ) (= scope= flags=0 words=[] bindings=[('KUBERNETES_PROVIDER', {[DQ [LIT_CHARS skeleton]]})]) (Com {[LIT_CHARS detect-master-from-kubeconfig]} ) (= scope= flags=0 words=[] bindings=[('auth_config', {[Array {OP_NEWLINE "\n"} {[DQ [LIT_CHARS "--kubeconfig="][VarSub KUBECONFIG]]} {OP_NEWLINE "\n"}]})]) ) (ElseTrue) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Setting up for KUBERNETES_PROVIDER="][\ LIT_ESCAPED_CHAR "\\\""][VarSub KUBERNETES_PROVIDER][\ LIT_ESCAPED_CHAR "\\\""][LIT_CHARS .]]} ) (Com {[LIT_CHARS prepare-e2e]} ) (Com {[LIT_CHARS detect-master]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (= scope= flags=0 words=[] bindings=[('KUBE_MASTER_URL', {[DQ [VarSub KUBE_MASTER_URL test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS "https:"] [LIT_SLASH /] [LIT_SLASH /] [VarSub KUBE_MASTER_IP test_op=VS_TEST_COLON_HYPHEN {}]}]]})]) (= scope= flags=0 words=[] bindings=[('auth_config', {[Array {OP_NEWLINE "\n"} {[DQ [LIT_CHARS "--kubeconfig="][VarSub KUBECONFIG test_op=VS_TEST_COLON_HYPHEN {[VarSub DEFAULT_KUBECONFIG]}]]} {OP_NEWLINE "\n"}]})]) ) ) (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub NODE_INSTANCE_PREFIX test_op=VS_TEST_COLON_HYPHEN {}]]}}) (= scope= flags=0 words=[] bindings=[('NODE_INSTANCE_GROUP', {[DQ [VarSub NODE_INSTANCE_PREFIX][LIT_CHARS -group]]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('NODE_INSTANCE_GROUP', {[DQ ]})]) ) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub KUBERNETES_PROVIDER]]} {[DQ [LIT_CHARS gce]]}}) (List (Com {[LIT_CHARS set_num_migs]} ) (= scope= flags=0 words=[] bindings=[('NODE_INSTANCE_GROUP', {[DQ ]})]) (ForExpr {A2 AS_OP_EQUAL {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 1]}}} {A2 AS_OP_LE {A Atom NODE_ARITH_WORD {[VarSub i]}} {A Atom NODE_ARITH_WORD {[VarSub NUM_MIGS]}}} {A1 AS_OP_DPLUS {A Atom NODE_ARITH_WORD {[VarSub i]}} } (If (DBracket {B2 BINARY_STRING_EQUAL {[VarSub i]} {[VarSub NUM_MIGS]}}) (= scope= flags=0 words=[] bindings=[('NODE_INSTANCE_GROUP', {[DQ [VarSub NODE_INSTANCE_GROUP][VarSub NODE_INSTANCE_PREFIX][LIT_CHARS -group]]})]) (ElseTrue) (= scope= flags=0 words=[] bindings=[('NODE_INSTANCE_GROUP', {[DQ [VarSub NODE_INSTANCE_GROUP][VarSub NODE_INSTANCE_PREFIX][LIT_CHARS -group-][VarSub i][LIT_CHARS ","]]})]) ) ) ) ) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub KUBERNETES_PROVIDER]]} {[DQ [LIT_CHARS gke]]}}) (List (Com {[LIT_CHARS detect-node-instance-groups]} ) (= scope= flags=0 words=[] bindings=[('NODE_INSTANCE_GROUP', {[ComSub (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS util] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS join]} {[LIT_COMMA ","]} {[DQ [VarSub NODE_INSTANCE_GROUPS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]]})]})]) ) ) (= scope= flags=0 words=[] bindings=[('ginkgo_args', {[Array ]})]) (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub CONFORMANCE_TEST_SKIP_REGEX test_op=VS_TEST_COLON_HYPHEN {}]]}}) (List (= scope= flags=0 words=[] bindings=[('ginkgo_args+', {[Array {[DQ [LIT_CHARS "--skip="][VarSub CONFORMANCE_TEST_SKIP_REGEX]]}]})]) (= scope= flags=0 words=[] bindings=[('ginkgo_args+', {[Array {[DQ [LIT_CHARS "--seed=1436380640"]]}]})]) ) ) (If (DBracket {B1 UNARY_STRING_n {[DQ [VarSub GINKGO_PARALLEL_NODES test_op=VS_TEST_COLON_HYPHEN {}]]}}) (= scope= flags=0 words=[] bindings=[('ginkgo_args+', {[Array {[DQ [LIT_CHARS "--nodes="][VarSub GINKGO_PARALLEL_NODES]]}]})]) (DBracket {B2 BINARY_STRING_TILDE_EQUAL {[VarSub GINKGO_PARALLEL]} {[LIT_OTHER "^"] [LIT_DBRACKET_LIKE "["] [LIT_CHARS yY] [LIT_DBRACKET_LIKE "]"] [LIT_OTHER "$"]}}) (= scope= flags=0 words=[] bindings=[('ginkgo_args+', {[Array {[DQ [LIT_CHARS "--nodes=25"]]}]})]) ) (= scope= flags=0 words=[] bindings=[('FLAKE_ATTEMPTS', {[LIT_CHARS 1]})]) (If (DBracket {B2 BINARY_STRING_EQUAL {[DQ [VarSub GINKGO_TOLERATE_FLAKES]]} {[DQ [LIT_CHARS y]]}}) (= scope= flags=0 words=[] bindings=[('FLAKE_ATTEMPTS', {[LIT_CHARS 2]})]) ) (= scope= flags=1 words=[] bindings=[('PATH', {[ComSub (Com {[LIT_CHARS dirname]} {[DQ [VarSub e2e_test]]})] [LIT_OTHER ":"] [DQ [VarSub PATH]]})]) (Com {[DQ [VarSub ginkgo]]} {[DQ [VarSub ginkgo_args bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) test_op=VS_TEST_COLON_PLUS {[VarSub ginkgo_args bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]]} {[DQ [VarSub e2e_test]]} {[LIT_CHARS --]} {[DQ [VarSub auth_config bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) test_op=VS_TEST_COLON_PLUS {[VarSub auth_config bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]]} {[LIT_CHARS --ginkgo.flakeAttempts] [LIT_DBRACKET_LIKE "="] [DQ [VarSub FLAKE_ATTEMPTS]]} {[LIT_CHARS --host] [LIT_DBRACKET_LIKE "="] [DQ [VarSub KUBE_MASTER_URL]]} {[LIT_CHARS --provider] [LIT_DBRACKET_LIKE "="] [DQ [VarSub KUBERNETES_PROVIDER]]} {[LIT_CHARS --gce-project] [LIT_DBRACKET_LIKE "="] [DQ [VarSub PROJECT test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS --gce-zone] [LIT_DBRACKET_LIKE "="] [DQ [VarSub ZONE test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS --gke-cluster] [LIT_DBRACKET_LIKE "="] [DQ [VarSub CLUSTER_NAME test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS --kube-master] [LIT_DBRACKET_LIKE "="] [DQ [VarSub KUBE_MASTER test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS --cluster-tag] [LIT_DBRACKET_LIKE "="] [DQ [VarSub CLUSTER_ID test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS --repo-root] [LIT_DBRACKET_LIKE "="] [DQ [VarSub KUBE_ROOT]]} {[LIT_CHARS --node-instance-group] [LIT_DBRACKET_LIKE "="] [DQ [VarSub NODE_INSTANCE_GROUP test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS --prefix] [LIT_DBRACKET_LIKE "="] [DQ [VarSub KUBE_GCE_INSTANCE_PREFIX test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS e2e]}]]} {[LIT_CHARS --network] [LIT_DBRACKET_LIKE "="] [DQ [VarSub KUBE_GCE_NETWORK test_op=VS_TEST_COLON_HYPHEN {[VarSub KUBE_GKE_NETWORK test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS e2e]}]}]]} {[VarSub KUBE_CONTAINER_RUNTIME test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--container-runtime="][VarSub KUBE_CONTAINER_RUNTIME]]}]} {[VarSub MASTER_OS_DISTRIBUTION test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--master-os-distro="][VarSub MASTER_OS_DISTRIBUTION]]}]} {[VarSub NODE_OS_DISTRIBUTION test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--node-os-distro="][VarSub NODE_OS_DISTRIBUTION]]}]} {[VarSub NUM_NODES test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--num-nodes="][VarSub NUM_NODES]]}]} {[VarSub E2E_CLEAN_START test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--clean-start=true"]]}]} {[VarSub E2E_MIN_STARTUP_PODS test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--minStartupPods="][VarSub E2E_MIN_STARTUP_PODS]]}]} {[VarSub E2E_REPORT_DIR test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--report-dir="][VarSub E2E_REPORT_DIR]]}]} {[VarSub E2E_REPORT_PREFIX test_op=VS_TEST_COLON_PLUS {[DQ [LIT_CHARS "--report-prefix="][VarSub E2E_REPORT_PREFIX]]}]} {[DQ [VarSub @ test_op=VS_TEST_COLON_HYPHEN {}]]} ) )