(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 /..]})]) (= scope= flags=0 words=[] bindings=[('OPENAPI_ROOT_DIR', {[DQ [VarSub KUBE_ROOT][LIT_CHARS /federation/apis/openapi-spec]]})]) (Com {[LIT_CHARS source]} {[DQ [VarSub KUBE_ROOT][LIT_CHARS /hack/lib/init.sh]]} ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS golang] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS setup_env]} ) (Com {[LIT_CHARS make]} {[LIT_CHARS -C]} {[DQ [VarSub KUBE_ROOT]]} {[LIT_VAR_LIKE "WHAT="] [DQ [LIT_CHARS cmd/hyperkube]] =} ) (FunctionDef cleanup [] (List (AndOr OP_AND_IF (DBracket {B1 UNARY_STRING_n {[DQ [VarSub APISERVER_PID test_op=VS_TEST_HYPHEN {}]]}}) (Com {[LIT_CHARS kill]} {[VarSub APISERVER_PID]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 2), > ) ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS etcd] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS cleanup]} ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS log] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS status]} {[DQ [LIT_CHARS "Clean up complete"]]} ) ) ) (Com {[LIT_CHARS trap]} {[LIT_CHARS cleanup]} {[LIT_CHARS EXIT]} {[LIT_CHARS SIGINT]} ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS golang] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS setup_env]} ) (= scope= flags=0 words=[] bindings=[('TMP_DIR', {[ComSub (Com {[LIT_CHARS mktemp]} {[LIT_CHARS -d]} {[LIT_CHARS /tmp/update-federation-openapi-spec.XXXX]})]})]) (= scope= flags=0 words=[] bindings=[('ETCD_HOST', {[VarSub ETCD_HOST test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS 127.0.0.1]}]})]) (= scope= flags=0 words=[] bindings=[('ETCD_PORT', {[VarSub ETCD_PORT test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS 2379]}]})]) (= scope= flags=0 words=[] bindings=[('API_PORT', {[VarSub API_PORT test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS 8050]}]})]) (= scope= flags=0 words=[] bindings=[('API_HOST', {[VarSub API_HOST test_op=VS_TEST_COLON_HYPHEN {[LIT_CHARS 127.0.0.1]}]})]) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS etcd] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS start]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "dummy_token,admin,admin"]]} < (FilenameRedirectNode filename={[VarSub TMP_DIR] [LIT_CHARS /tokenauth.csv]} "> 1), > ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS log] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS status]} {[DQ [LIT_CHARS "Starting federation-apiserver"]]} ) (Fork (Com {[DQ [VarSub KUBE_OUTPUT_HOSTBIN][LIT_CHARS /hyperkube]]} {[LIT_CHARS federation-apiserver]} {[LIT_CHARS --insecure-bind-address] [LIT_DBRACKET_LIKE "="] [DQ [VarSub API_HOST]]} {[LIT_CHARS --bind-address] [LIT_DBRACKET_LIKE "="] [DQ [VarSub API_HOST]]} {[LIT_CHARS --insecure-port] [LIT_DBRACKET_LIKE "="] [DQ [VarSub API_PORT]]} {[LIT_CHARS --etcd-servers] [LIT_DBRACKET_LIKE "="] [DQ [LIT_CHARS "http://"][VarSub ETCD_HOST][LIT_CHARS ":"][VarSub ETCD_PORT]]} {[LIT_CHARS --advertise-address] [LIT_DBRACKET_LIKE "="] [DQ [LIT_CHARS 10.10.10.10]]} {[LIT_CHARS --cert-dir] [LIT_DBRACKET_LIKE "="] [DQ [VarSub TMP_DIR][LIT_CHARS /certs]]} {[LIT_CHARS --token-auth-file] [LIT_DBRACKET_LIKE "="] [VarSub TMP_DIR] [LIT_CHARS /tokenauth.csv]} {[LIT_CHARS --service-cluster-ip-range] [LIT_DBRACKET_LIKE "="] [DQ [LIT_CHARS 10.0.0.0/24]]} < (FilenameRedirectNode filename={[LIT_CHARS /tmp/openapi-federation-api-server.log]} "> 1), (DescriptorRedirectNode target={[LIT_CHARS 1]} &"> 2), > ) ) (= scope= flags=0 words=[] bindings=[('APISERVER_PID', {[VarSub !]})]) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS util] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS wait_for_url]} {[DQ [VarSub API_HOST][LIT_CHARS ":"][VarSub API_PORT][LIT_CHARS /]]} {[DQ [LIT_CHARS "apiserver: "]]} ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS log] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS status]} {[DQ [LIT_CHARS "Updating "]]} {[VarSub OPENAPI_ROOT_DIR]} ) (Com {[LIT_CHARS curl]} {[LIT_CHARS -w]} {[DQ [\ LIT_ESCAPED_CHAR "\\n"]]} {[LIT_CHARS -fs]} {[DQ [VarSub API_HOST][LIT_CHARS ":"][VarSub API_PORT][LIT_CHARS /swagger.json]]} < (FilenameRedirectNode filename={[DQ [VarSub OPENAPI_ROOT_DIR][LIT_CHARS /swagger.json]]} "> 1), > ) (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS log] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS status]} {[DQ [LIT_CHARS SUCCESS]]} ) )