(List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "WRITING KUBE FILES , will overwrite the jsons, then testing pods. is kube clean ready to go?"]]} ) (= scope= flags=0 words=[] bindings=[('kubectl', {[DQ [LIT_CHARS kubectl]]})]) (= scope= flags=0 words=[] bindings=[('VERSION', {[DQ [LIT_CHARS r.2.8.19]]})]) (= scope= flags=0 words=[] bindings=[('_SECONDS', {[LIT_CHARS 1000]})]) (= scope= flags=0 words=[] bindings=[('FE', {[DQ [LIT_CHARS 1]]})]) (= scope= flags=0 words=[] bindings=[('LG', {[DQ [LIT_CHARS 1]]})]) (= scope= flags=0 words=[] bindings=[('SLAVE', {[DQ [LIT_CHARS 1]]})]) (= scope= flags=0 words=[] bindings=[('TEST', {[DQ [LIT_CHARS 1]]})]) (= scope= flags=0 words=[] bindings=[('NS', {[DQ [LIT_CHARS k8petstore]]})]) (= scope= flags=0 words=[] bindings=[('NODE_PORT', {[LIT_CHARS 30291]})]) (= scope= flags=0 words=[] bindings=[('kubectl', {[DQ [VarSub 1 test_op=VS_TEST_COLON_HYPHEN {[VarSub kubectl]}]]})]) (= scope= flags=0 words=[] bindings=[('VERSION', {[DQ [VarSub 2 test_op=VS_TEST_COLON_HYPHEN {[VarSub VERSION]}]]})]) (= scope= flags=0 words=[] bindings=[('_SECONDS', {[DQ [VarSub 3 test_op=VS_TEST_COLON_HYPHEN {[VarSub _SECONDS]}]]})]) (= scope= flags=0 words=[] bindings=[('FE', {[DQ [VarSub 4 test_op=VS_TEST_COLON_HYPHEN {[VarSub FE]}]]})]) (= scope= flags=0 words=[] bindings=[('LG', {[DQ [VarSub 5 test_op=VS_TEST_COLON_HYPHEN {[VarSub LG]}]]})]) (= scope= flags=0 words=[] bindings=[('SLAVE', {[DQ [VarSub 6 test_op=VS_TEST_COLON_HYPHEN {[VarSub SLAVE]}]]})]) (= scope= flags=0 words=[] bindings=[('TEST', {[DQ [VarSub 7 test_op=VS_TEST_COLON_HYPHEN {[VarSub TEST]}]]})]) (= scope= flags=0 words=[] bindings=[('NS', {[DQ [VarSub 8 test_op=VS_TEST_COLON_HYPHEN {[VarSub NS]}]]})]) (= scope= flags=0 words=[] bindings=[('NODE_PORT', {[DQ [VarSub 9 test_op=VS_TEST_COLON_HYPHEN {[VarSub NODE_PORT]}]]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Running w/ args: kubectl "][VarSub kubectl][LIT_CHARS " version "][VarSub VERSION][LIT_CHARS " sec "][VarSub _SECONDS][LIT_CHARS " fe "][VarSub FE][LIT_CHARS " lg "][VarSub LG][LIT_CHARS " slave "][VarSub SLAVE][LIT_CHARS " test = "][VarSub TEST][LIT_CHARS ", NAMESPACE = "][VarSub NS][LIT_CHARS ", NODE_PORT = "][VarSub NODE_PORT]]} ) (FunctionDef create_ns [] (Case to_match={[DQ [VarSub NS]]}, pat_word_list=[[{[DQ [LIT_CHARS default]]}], [{[DQ [LIT_CHARS kube-system]]}], [{[LIT_OTHER "*"]}]] (ElseTrue) (ElseTrue) (List (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS Namespace][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][VarSub NS][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS ns.json]} "> 1), > ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS ns.json]} ) ) ) ) (FunctionDef create [] (List (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS ReplicationController][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS fectrl][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {"][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS "}\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS replicas][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][VarSub FE][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS selector][RIGHT_D_QUOTE "\""][LIT_CHARS ": {"][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS "},\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS template][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS uses][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redis-master][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS containers][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend-go-restapi][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS image][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS "jayunit100/k8-petstore-web-server:"][VarSub VERSION][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }]\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS fe-rc.json]} "> 1), > ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS ReplicationController][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS bpsloadgenrc][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {"][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS bpsLoadGenController][RIGHT_D_QUOTE "\""][LIT_CHARS "}\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS replicas][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][VarSub LG][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS selector][RIGHT_D_QUOTE "\""][LIT_CHARS ": {"][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS bps][RIGHT_D_QUOTE "\""][LIT_CHARS "},\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS template][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS bps][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS uses][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS containers][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS bps][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS image][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS jayunit100/bigpetstore-load-generator][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS command][RIGHT_D_QUOTE "\""][LIT_CHARS ": ["][RIGHT_D_QUOTE "\""][LIT_CHARS sh][RIGHT_D_QUOTE "\""][LIT_CHARS ","][RIGHT_D_QUOTE "\""][LIT_CHARS -c][RIGHT_D_QUOTE "\""][LIT_CHARS ","][RIGHT_D_QUOTE "\""][LIT_CHARS "/opt/PetStoreLoadGenerator-1.0/bin/PetStoreLoadGenerator http://"][\ LIT_ESCAPED_CHAR "\\$"][LIT_CHARS "FRONTEND_SERVICE_HOST:3000/rpush/k8petstore/ 4 4 1000 123"][RIGHT_D_QUOTE "\""][LIT_CHARS "]\n"][LIT_CHARS " }]\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS bps-load-gen-rc.json]} "> 1), > ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS Service][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS ports][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS port][RIGHT_D_QUOTE "\""][LIT_CHARS ": 3000,\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS nodePort][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][VarSub NODE_PORT][LIT_CHARS "\n"][LIT_CHARS " }],\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS selector][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS frontend][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS type][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS NodePort][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS fe-s.json]} "> 1), > ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS Pod][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redismaster][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redis-master][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS containers][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS master][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS image][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS "jayunit100/k8-petstore-redis-master:"][VarSub VERSION][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS ports][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS containerPort][RIGHT_D_QUOTE "\""][LIT_CHARS ": 6379\n"][LIT_CHARS " }]\n"][LIT_CHARS " }]\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS rm.json]} "> 1), > ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS Service][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redismaster][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redis-master][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS ports][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS port][RIGHT_D_QUOTE "\""][LIT_CHARS ": 6379\n"][LIT_CHARS " }],\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS selector][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redis-master][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS rm-s.json]} "> 1), > ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS Service][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redisslave][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redisslave][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS ports][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS port][RIGHT_D_QUOTE "\""][LIT_CHARS ": 6379\n"][LIT_CHARS " }],\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS selector][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redisslave][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS rs-s.json]} "> 1), > ) (Com {[LIT_CHARS cat]} < (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS kind][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS ReplicationController][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS apiVersion][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS v1][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redissc][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {"][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redisslave][RIGHT_D_QUOTE "\""][LIT_CHARS "}\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS replicas][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][VarSub SLAVE][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS selector][RIGHT_D_QUOTE "\""][LIT_CHARS ": {"][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redisslave][RIGHT_D_QUOTE "\""][LIT_CHARS "},\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS template][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS metadata][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS labels][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redisslave][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS uses][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS redis-master][RIGHT_D_QUOTE "\""][LIT_CHARS "\n"][LIT_CHARS " }\n"][LIT_CHARS " },\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS spec][RIGHT_D_QUOTE "\""][LIT_CHARS ": {\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS containers][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS name][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS slave][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS image][RIGHT_D_QUOTE "\""][LIT_CHARS ": "][RIGHT_D_QUOTE "\""][LIT_CHARS "jayunit100/k8-petstore-redis-slave:"][VarSub VERSION][RIGHT_D_QUOTE "\""][LIT_CHARS ",\n"][LIT_CHARS " "][RIGHT_D_QUOTE "\""][LIT_CHARS ports][RIGHT_D_QUOTE "\""][LIT_CHARS ": [{"][RIGHT_D_QUOTE "\""][LIT_CHARS containerPort][RIGHT_D_QUOTE "\""][LIT_CHARS ": 6379}]\n"][LIT_CHARS " }]\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS " }\n"][LIT_CHARS "}\n"]]} 0), (FilenameRedirectNode filename={[LIT_CHARS slave-rc.json]} "> 1), > ) (Com {[LIT_CHARS create_ns]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS rm.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS rm-s.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) (Com {[LIT_CHARS sleep]} {[LIT_CHARS 3]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS slave-rc.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS rs-s.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) (Com {[LIT_CHARS sleep]} {[LIT_CHARS 3]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS fe-rc.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS fe-s.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) (Com {[VarSub kubectl]} {[LIT_CHARS create]} {[LIT_CHARS -f]} {[LIT_CHARS bps-load-gen-rc.json]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} ) ) ) (FunctionDef getIP [] (List (= scope= flags=0 words=[] bindings=[('NODES_IP', {[ComSub (Com {[VarSub kubectl]} {[LIT_CHARS get]} {[LIT_CHARS nodes]} {[LIT_CHARS -o]} {[LIT_CHARS go-template] [LIT_DBRACKET_LIKE "="] [SQ ]})]})]) (= scope= flags=0 words=[] bindings=[('TEST_IP', {[ComSub (Com {[VarSub kubectl]} {[LIT_CHARS get]} {[LIT_CHARS nodes]} {[LIT_CHARS -o]} {[LIT_CHARS go-template] [LIT_DBRACKET_LIKE "="] [SQ ]})]})]) (If (Com {[LIT_DBRACKET_LIKE "["]} {[LIT_CHARS -z]} {[DQ [VarSub TEST_IP]]} {[LIT_DBRACKET_LIKE "]"]} ) (= scope= flags=0 words=[] bindings=[('TEST_IP', {[ComSub (Com {[VarSub kubectl]} {[LIT_CHARS get]} {[LIT_CHARS nodes]} {[LIT_CHARS -o]} {[LIT_CHARS go-template] [LIT_DBRACKET_LIKE "="] [SQ ]})]})]) ) (If (Com {[LIT_DBRACKET_LIKE "["]} {[LIT_CHARS -z]} {[DQ [VarSub NODES_IP]]} {[LIT_DBRACKET_LIKE "]"]} ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Error: Can't get node's IP!!!"]]} ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]} ) ) (ElseTrue) (List (Pipeline (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub COLUMNS test_op=VS_TEST_COLON_HYPHEN {[ComSub (Com {[LIT_CHARS tput]} {[LIT_CHARS cols]})]}]]} {[SQ ]} ) (Com {[LIT_CHARS tr]} {[SQ ]} {[LIT_DBRACKET_LIKE "="]} ) ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "List of nodes' IP addresses:"][\ LIT_ESCAPED_CHAR "\\n"][VarSub NODES_IP]]} ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "Node IP "][VarSub TEST_IP][LIT_CHARS " will be used in the tests in this script"]]} ) (Pipeline (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub COLUMNS test_op=VS_TEST_COLON_HYPHEN {[ComSub (Com {[LIT_CHARS tput]} {[LIT_CHARS cols]})]}]]} {[SQ ]} ) (Com {[LIT_CHARS tr]} {[SQ ]} {[LIT_DBRACKET_LIKE "="]} ) ) ) ) ) ) (FunctionDef getNodePort [] (List (= scope= flags=0 words=[] bindings=[('NODE_PORT', {[ComSub (Com {[VarSub kubectl]} {[LIT_CHARS get]} {[LIT_CHARS services/frontend]} {[LIT_CHARS --namespace] [LIT_DBRACKET_LIKE "="] [VarSub NS]} {[LIT_CHARS -o]} {[LIT_CHARS go-template] [LIT_DBRACKET_LIKE "="] [SQ ]})]})]) (If (Com {[LIT_DBRACKET_LIKE "["]} {[LIT_CHARS -z]} {[DQ [VarSub NODE_PORT]]} {[LIT_DBRACKET_LIKE "]"]} ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Error: Can't get NodePort of services/frontend!!!"]]} ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]} ) ) (ElseTrue) (List (Pipeline (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub COLUMNS test_op=VS_TEST_COLON_HYPHEN {[ComSub (Com {[LIT_CHARS tput]} {[LIT_CHARS cols]})]}]]} {[SQ ]} ) (Com {[LIT_CHARS tr]} {[SQ ]} {[LIT_DBRACKET_LIKE "="]} ) ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "NodePort of services/frontend:"][\ LIT_ESCAPED_CHAR "\\n"][VarSub NODE_PORT]]} ) (Com {[LIT_CHARS echo]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "WARNING: On cloud platforms like GCE, you may need to add a firewall rule to allow TCP traffic on port "][VarSub NODE_PORT]]} ) (Pipeline (Com {[LIT_CHARS printf]} {[SQ ]} {[DQ [VarSub COLUMNS test_op=VS_TEST_COLON_HYPHEN {[ComSub (Com {[LIT_CHARS tput]} {[LIT_CHARS cols]})]}]]} {[SQ ]} ) (Com {[LIT_CHARS tr]} {[SQ ]} {[LIT_DBRACKET_LIKE "="]} ) ) ) ) ) ) (FunctionDef pollfor [] (List (= scope= flags=0 words=[] bindings=[('pass_http', {[LIT_CHARS 0]})]) (For i [{[LIT_LBRACE "{"] [LIT_CHARS 1..150] [LIT_RBRACE "}"]}]) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Trying curl frontend:3000 via "][VarSub TEST_IP][LIT_CHARS ":"][VarSub NODE_PORT][LIT_CHARS ", attempt "][VarSub i][LIT_CHARS ". Expect a few failures while pulling images... "]]} ) (Com {[LIT_CHARS curl]} {[LIT_CHARS --max-time]} {[LIT_CHARS 1]} {[LIT_CHARS --connect-timeout]} {[LIT_CHARS 3]} {[DQ [VarSub TEST_IP][LIT_CHARS ":"][VarSub NODE_PORT]]} < (FilenameRedirectNode filename={[LIT_CHARS result]} "> 1), > ) (Com {[LIT_CHARS cat]} {[LIT_CHARS result]} ) (Pipeline (Com {[LIT_CHARS cat]} {[LIT_CHARS result]} ) (Com {[LIT_CHARS grep]} {[LIT_CHARS -q]} {[DQ [LIT_CHARS k8-bps]]} ) ) (If (Com {[LIT_DBRACKET_LIKE "["]} {[VarSub ?]} {[LIT_CHARS -eq]} {[LIT_CHARS 0]} {[LIT_DBRACKET_LIKE "]"]} ) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "TEST PASSED after "][VarSub i][LIT_CHARS " tries !"]]} ) (= scope= flags=0 words=[] bindings=[('i', {[LIT_CHARS 1000]})]) (Com {[LIT_CHARS break]} ) ) (ElseTrue) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "the above RESULT didn't contain target string for trial "][VarSub i]]} ) ) (Com {[LIT_CHARS sleep]} {[LIT_CHARS 3]} ) ) ) (If (Com {[LIT_DBRACKET_LIKE "["]} {[VarSub i]} {[LIT_CHARS -eq]} {[LIT_CHARS 1000]} {[LIT_DBRACKET_LIKE "]"]} ) (= scope= flags=0 words=[] bindings=[('pass_http', {[LIT_CHARS 1]})]) ) ) ) (FunctionDef tests [] (List (= scope= flags=0 words=[] bindings=[('pass_load', {[LIT_CHARS 0]})]) (For i [{[ComSub (Com {[LIT_CHARS seq]} {[LIT_CHARS 1]} {[VarSub _SECONDS]})]}]) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "curl : "][VarSub TEST_IP][LIT_CHARS ":"][VarSub NODE_PORT][LIT_CHARS " , "][VarSub i][LIT_CHARS " of "][VarSub _SECONDS]]} ) (= scope= flags=0 words=[] bindings=[('curr_cnt', {[DQ [ComSub (Com {[LIT_CHARS curl]} {[LIT_CHARS --max-time]} {[LIT_CHARS 1]} {[LIT_CHARS --connect-timeout]} {[LIT_CHARS 3]} {[DQ [VarSub TEST_IP][LIT_CHARS ":"][VarSub NODE_PORT][LIT_CHARS /llen]]})]]})]) (Com {[LIT_CHARS echo]} {[DQ [VarSub i][LIT_CHARS " "][VarSub curr_cnt]]} < (FilenameRedirectNode filename={[LIT_CHARS result]} >"> 1), > ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "total transactions so far : "][VarSub curr_cnt]]} ) (Com {[LIT_CHARS sleep]} {[LIT_CHARS 1]} ) ) ) ) ) (Com {[LIT_CHARS create]} ) (Com {[LIT_CHARS getIP]} ) (Com {[LIT_CHARS getNodePort]} ) (Com {[LIT_CHARS pollfor]} ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub pass_http]} {[LIT_CHARS 1]}}) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS Passed...]]} ) (ElseTrue) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]} ) ) (If (DBracket {B2 BINARY_INT_EQ {[VarSub TEST]} {[LIT_CHARS 1]}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "running polling tests now"]]} ) (Com {[LIT_CHARS tests]} ) ) ) )