(CommandList children: [ (C {(set)} {(-o)} {(errexit)}) (C {(set)} {(-o)} {(nounset)}) (C {(set)} {(-o)} {(pipefail)}) (Assignment keyword: Assign_Readonly pairs: [ (assign_pair lhs: (LhsName name:ROOT) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(dirname)} {(DQ (${ VSub_Name BASH_SOURCE))})] ) left_token: <Left_CommandSub '$('> spids: [80 88] ) } spids: [79] ) ] spids: [77] ) (C {(source)} {(${ VSub_Name ROOT) (/config-build.sh)}) (C {(mkdir)} {(-p)} {(${ VSub_Name RELEASES_DIR)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:RELEASES_DIR) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Sentence child: (C {(cd)} {(${ VSub_Name RELEASES_DIR)}) terminator: <Op_Semi ';'> ) (C {(pwd)}) ] ) left_token: <Left_CommandSub '$('> spids: [110 119] ) } spids: [109] ) ] spids: [109] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:BINARY_DIR) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Sentence child: (C {(cd)} {(${ VSub_Name ROOT)}) terminator: <Op_Semi ';'> ) (C {(pwd)}) ] ) left_token: <Left_CommandSub '$('> spids: [126 135] ) (/binaries) } spids: [125] ) ] spids: [125] ) (FuncDef name: clean-up body: (BraceGroup children: [ (C {(rm)} {(-rf)} {(${ VSub_Name RELEASES_DIR)}) (C {(rm)} {(-rf)} {(${ VSub_Name BINARY_DIR)}) ] spids: [145] ) spids: [139 144] ) (FuncDef name: download-releases body: (BraceGroup children: [ (C {(rm)} {(-rf)} {(${ VSub_Name RELEASES_DIR)}) (C {(mkdir)} {(-p)} {(${ VSub_Name RELEASES_DIR)}) (C {(echo)} {(DQ ('Download flannel release v') (${ VSub_Name FLANNEL_VERSION) (' ...'))}) (C {(curl)} {(-L)} {(${ VSub_Name FLANNEL_DOWNLOAD_URL)} {(-o)} {(${ VSub_Name RELEASES_DIR) (/flannel.tar.gz)} ) (C {(echo)} {(DQ ('Download etcd release v') (${ VSub_Name ETCD_VERSION) (' ...'))}) (C {(curl)} {(-L)} {(${ VSub_Name ETCD_DOWNLOAD_URL)} {(-o)} {(${ VSub_Name RELEASES_DIR) (/etcd.tar.gz)} ) (C {(echo)} {(DQ ('Download kubernetes release v') (${ VSub_Name K8S_VERSION) (' ...'))}) (C {(curl)} {(-L)} {(${ VSub_Name K8S_CLIENT_DOWNLOAD_URL)} {(-o)} {(${ VSub_Name RELEASES_DIR) (/kubernetes-client-linux-amd64.tar.gz)} ) (C {(curl)} {(-L)} {(${ VSub_Name K8S_SERVER_DOWNLOAD_URL)} {(-o)} {(${ VSub_Name RELEASES_DIR) (/kubernetes-server-linux-amd64.tar.gz)} ) (C {(echo)} {(DQ ('Download docker release v') (${ VSub_Name DOCKER_VERSION) (' ...'))}) (C {(curl)} {(-L)} {(${ VSub_Name DOCKER_DOWNLOAD_URL)} {(-o)} {(${ VSub_Name RELEASES_DIR) (/docker.tar.gz)} ) ] spids: [174] ) spids: [168 173] ) (FuncDef name: unpack-releases body: (BraceGroup children: [ (C {(rm)} {(-rf)} {(${ VSub_Name BINARY_DIR)}) (C {(mkdir)} {(-p)} {(${ VSub_Name BINARY_DIR) (/master/bin)}) (C {(mkdir)} {(-p)} {(${ VSub_Name BINARY_DIR) (/node/bin)}) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(${ VSub_Name RELEASES_DIR) (/flannel.tar.gz)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(tar)} {(xzf)} {(${ VSub_Name RELEASES_DIR) (/flannel.tar.gz)} {(-C)} {(${ VSub_Name RELEASES_DIR)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/flanneld)} {(${ VSub_Name BINARY_DIR) (/master/bin)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/flanneld)} {(${ VSub_Name BINARY_DIR) (/node/bin)} ) ] spids: [16777215 383] ) ] spids: [16777215 428] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(${ VSub_Name RELEASES_DIR) (/etcd.tar.gz)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(tar)} {(xzf)} {(${ VSub_Name RELEASES_DIR) (/etcd.tar.gz)} {(-C)} {(${ VSub_Name RELEASES_DIR)} ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ETCD) op: Equal rhs: {(DQ (etcd-v) (${ VSub_Name ETCD_VERSION) (-linux-amd64))} spids: [470] ) ] spids: [470] ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/) ($ VSub_Name '$ETCD') (/etcd)} {(${ VSub_Name RELEASES_DIR) (/) ($ VSub_Name '$ETCD') (/etcdctl)} {(${ VSub_Name BINARY_DIR) (/master/bin)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/) ($ VSub_Name '$ETCD') (/etcd)} {(${ VSub_Name RELEASES_DIR) (/) ($ VSub_Name '$ETCD') (/etcdctl)} {(${ VSub_Name BINARY_DIR) (/node/bin)} ) ] spids: [16777215 451] ) ] spids: [16777215 528] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(${ VSub_Name RELEASES_DIR) (/kubernetes-client-linux-amd64.tar.gz)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(tar)} {(xzf)} {(${ VSub_Name RELEASES_DIR) (/kubernetes-client-linux-amd64.tar.gz)} {(-C)} {(${ VSub_Name RELEASES_DIR)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/kubernetes/client/bin/kubectl)} {(${ VSub_Name BINARY_DIR)} ) ] spids: [16777215 551] ) ] spids: [16777215 582] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(${ VSub_Name RELEASES_DIR) (/kubernetes-server-linux-amd64.tar.gz)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(tar)} {(xzf)} {(${ VSub_Name RELEASES_DIR) (/kubernetes-server-linux-amd64.tar.gz)} {(-C)} {(${ VSub_Name RELEASES_DIR)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/kubernetes/server/bin/kube-apiserver)} {(${ VSub_Name RELEASES_DIR) (/kubernetes/server/bin/kube-controller-manager)} {(${ VSub_Name RELEASES_DIR) (/kubernetes/server/bin/kube-scheduler)} {(${ VSub_Name BINARY_DIR) (/master/bin)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/kubernetes/server/bin/kubelet)} {(${ VSub_Name RELEASES_DIR) (/kubernetes/server/bin/kube-proxy)} {(${ VSub_Name BINARY_DIR) (/node/bin)} ) ] spids: [16777215 601] ) ] spids: [16777215 667] ) (If arms: [ (if_arm cond: [ (Sentence child: (DBracket expr: (BoolUnary op_id: BoolUnary_f child: {(${ VSub_Name RELEASES_DIR) (/docker.tar.gz)} ) ) terminator: <Op_Semi ';'> ) ] action: [ (C {(tar)} {(xzf)} {(${ VSub_Name RELEASES_DIR) (/docker.tar.gz)} {(-C)} {(${ VSub_Name RELEASES_DIR)} ) (C {(cp)} {(${ VSub_Name RELEASES_DIR) (/docker/docker) (Lit_Other '*')} {(${ VSub_Name BINARY_DIR) (/node/bin)} ) ] spids: [16777215 689] ) ] spids: [16777215 723] ) (C {(chmod)} {(-R)} {(Lit_Other '+') (x)} {(${ VSub_Name BINARY_DIR)}) (C {(echo)} {(DQ ('Done! All binaries are stored in ') (${ VSub_Name BINARY_DIR))}) ] spids: [331] ) spids: [325 330] ) (FuncDef name: parse-opt body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:opt) op: Equal rhs: { (BracedVarSub token: <VSub_Number 1> suffix_op: (StringUnary op_id:VTest_Hyphen arg_word:{}) spids: [763 766] ) } spids: [762] ) ] spids: [760] ) (Case to_match: {($ VSub_Name '$opt')} arms: [ (case_arm pat_list: [{(download)}] action: [(C {(download-releases)})] spids: [777 778 784 16777215] ) (case_arm pat_list: [{(unpack)}] action: [(C {(unpack-releases)})] spids: [787 788 794 16777215] ) (case_arm pat_list: [{(clean)}] action: [(C {(clean-up)})] spids: [797 798 804 16777215] ) (case_arm pat_list: [{(all)}] action: [(C {(download-releases)}) (C {(unpack-releases)})] spids: [807 808 817 16777215] ) (case_arm pat_list: [{(Lit_Other '*')}] action: [ (C {(echo)} {(DQ ('Usage: '))}) (C {(echo)} {(DQ (' build.sh <command>'))}) (C {(echo)} {(DQ ('Commands:'))}) (C {(echo)} {(DQ (' clean Clean up downloaded releases and unpacked binaries.'))} ) (C {(echo)} { (DQ (' download Download releases to ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (${ VSub_Name RELEASES_DIR) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (.) ) } ) (C {(echo)} { (DQ (' unpack Unpack releases downloaded in ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (${ VSub_Name RELEASES_DIR) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (', and copy binaries to ') (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (${ VSub_Name BINARY_DIR) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (.) ) } ) (C {(echo)} {(DQ (' all Download releases and unpack them.'))}) ] spids: [820 821 891 16777215] ) ] spids: [770 774 894] ) ] spids: [757] ) spids: [751 756] ) (C {(parse-opt)} {($ VSub_At '$@')}) ] )