(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', {[DQ [ComSub (AndOr OP_AND_IF (Com {[LIT_CHARS cd]} {[DQ [ComSub (Com {[LIT_CHARS dirname]} {[DQ [VarSub BASH_SOURCE]]})][LIT_CHARS /../..]]}) (Com {[LIT_CHARS pwd]} {[LIT_CHARS -P]}) )]]})]) (FunctionDef kube::swagger::gen_types_swagger_doc [] (List (= scope= flags=0 words=[] bindings=[('group_version', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('gv_dir', {[VarSub 2]})]) (= scope= flags=0 words=[] bindings=[('TMPFILE', {[DQ [LIT_CHARS /tmp/types_swagger_doc_generated.][ComSub (Com {[LIT_CHARS date]} {[LIT_OTHER "+"] [LIT_OTHER "%"] [LIT_CHARS s]})][LIT_CHARS .go]]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Generating swagger type docs for "][VarSub group_version][LIT_CHARS " at "][VarSub gv_dir]]} ) (Com {[LIT_CHARS sed]} {[SQ ]} {[LIT_CHARS hack/boilerplate/boilerplate.go.txt]} < (FilenameRedirectNode filename={[DQ [VarSub TMPFILE]]} "> 1), > ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "package "][VarSub group_version transform_ops=[VS_UNARY_DPOUND {[LIT_CHARS "*"] [LIT_SLASH /]}]]]} < (FilenameRedirectNode filename={[DQ [VarSub TMPFILE]]} >"> 1), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[DQ [VarSub TMPFILE]]} >"> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "\n"][LIT_CHARS "// This file contains a collection of methods that can be used from go-restful to\n"][LIT_CHARS "// generate Swagger API documentation for its models. Please read this PR for more\n"][LIT_CHARS "// information on the implementation: https://github.com/emicklei/go-restful/pull/215\n"][LIT_CHARS "//\n"][LIT_CHARS "// TODOs are ignored from the parser (e.g. TODO(andronat):... || TODO:...) if and only if\n"][LIT_CHARS "// they are on one line! For multiple line or blocks that you want to ignore use ---.\n"][LIT_CHARS "// Any context after a --- is ignored.\n"][LIT_CHARS "//\n"][LIT_CHARS "// Those methods can be generated by using hack/update-generated-swagger-docs.sh\n"][LIT_CHARS "\n"][LIT_CHARS "// AUTO-GENERATED FUNCTIONS START HERE\n"]]} 0), > ) (Com {[LIT_CHARS go]} {[LIT_CHARS run]} {[LIT_CHARS cmd/genswaggertypedocs/swagger_type_docs.go]} {[LIT_CHARS -s]} {[DQ [VarSub gv_dir][LIT_CHARS /types.go]]} {[LIT_CHARS -f]} {[LIT_CHARS -]} < (FilenameRedirectNode filename={[DQ [VarSub TMPFILE]]} >"> 1), > ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "// AUTO-GENERATED FUNCTIONS END HERE"]]} < (FilenameRedirectNode filename={[DQ [VarSub TMPFILE]]} >"> 1), > ) (Com {[LIT_CHARS gofmt]} {[LIT_CHARS -w]} {[LIT_CHARS -s]} {[DQ [VarSub TMPFILE]]} ) (Com {[LIT_CHARS mv]} {[DQ [VarSub TMPFILE]]} {[DQ ] [VarSub gv_dir] [DQ [LIT_CHARS /types_swagger_doc_generated.go]]} ) ) ) (FunctionDef kube::swagger::gen_api_ref_docs [] (List (Com {[LIT_OTHER ":"]} {[DQ [VarSub GROUP_VERSIONS test_op=VS_TEST_QMARK {[LIT_CHARS "Must set GROUP_VERSIONS env var"]}]]} ) (Com {[LIT_OTHER ":"]} {[DQ [VarSub GV_DIRS test_op=VS_TEST_QMARK {[LIT_CHARS "Must set GV_DIRS env var"]}]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Generating API reference docs for group versions: "][VarSub GROUP_VERSIONS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})][LIT_CHARS ", at dirs: "][VarSub GV_DIRS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]]} ) (= scope= flags=0 words=[] bindings=[('GROUP_VERSIONS', {[Array {[VarSub GROUP_VERSIONS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]})]) (= scope= flags=0 words=[] bindings=[('GV_DIRS', {[Array {[VarSub GV_DIRS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]}]})]) (= scope= flags=0 words=[] bindings=[('swagger_spec_path', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('output_dir', {[VarSub 2]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Reading swagger spec from: "][VarSub swagger_spec_path]]} ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Generating the docs at: "][VarSub output_dir]]} ) (= scope= flags=0 words=[] bindings=[('repo_dir', {[VarSub REPO_DIR test_op=VS_TEST_COLON_HYPHEN {[DQ [VarSub KUBE_ROOT]]}]})]) (= scope= flags=0 words=[] bindings=[('tmp_subpath', {[DQ [LIT_CHARS _output/generated_html]]})]) (= scope= flags=0 words=[] bindings=[('output_tmp_in_host', {[DQ [VarSub repo_dir][LIT_CHARS /][VarSub tmp_subpath]]})]) (= scope= flags=0 words=[] bindings=[('output_tmp', {[DQ [VarSub KUBE_ROOT][LIT_CHARS /][VarSub tmp_subpath]]})]) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Generating api reference docs at "][VarSub output_tmp]]} ) (For ver [{[DQ [VarSub GROUP_VERSIONS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}})]]}]) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS -p]} {[DQ [VarSub output_tmp][LIT_CHARS /][VarSub ver]]} ) ) (= scope= flags=0 words=[] bindings=[('user_flags', {[DQ [LIT_CHARS "-u "][ComSub (Com {[LIT_CHARS id]} {[LIT_CHARS -u]})]]})]) (If (DBracket {B2 BINARY_STRING_EQUAL {[ComSub (Com {[LIT_CHARS uname]})]} {[DQ [LIT_CHARS Darwin]]}}) (= scope= flags=0 words=[] bindings=[('user_flags', {[DQ ]})]) ) (For i [{[DQ [VarSub GROUP_VERSIONS bracket_op=(Index {A Atom NODE_ARITH_WORD {AS_OP_AT "@"}}) transform_ops=[(!ref)]]]}]) (List (= scope= flags=0 words=[] bindings=[('ver', {[VarSub GROUP_VERSIONS bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}})]})]) (= scope= flags=0 words=[] bindings=[('dir', {[VarSub GV_DIRS bracket_op=(Index {A Atom NODE_ARITH_WORD {[VarSub i]}})]})]) (= scope= flags=0 words=[] bindings=[('tmp_in_host', {[DQ [VarSub output_tmp_in_host][LIT_CHARS /][VarSub ver]]})]) (= scope= flags=0 words=[] bindings=[('register_file', {[DQ [VarSub dir][LIT_CHARS /register.go]]})]) (= scope= flags=0 words=[] bindings=[('swagger_json_name', {[DQ [ComSub (Com {[LIT_CHARS kube] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS util] [LIT_OTHER ":"] [LIT_OTHER ":"] [LIT_CHARS gv-to-swagger-name]} {[DQ [VarSub ver]]})]]})]) (Com {[LIT_CHARS docker]} {[LIT_CHARS run]} {[VarSub user_flags]} {[LIT_CHARS --rm]} {[LIT_CHARS -v]} {[DQ [VarSub tmp_in_host]] [LIT_OTHER ":"] [LIT_CHARS /output] [LIT_OTHER ":"] [LIT_CHARS z]} {[LIT_CHARS -v]} {[DQ [VarSub swagger_spec_path]] [LIT_OTHER ":"] [LIT_CHARS /swagger-source] [LIT_OTHER ":"] [LIT_CHARS z]} {[LIT_CHARS -v]} {[DQ [VarSub register_file]] [LIT_OTHER ":"] [LIT_CHARS /register.go] [LIT_OTHER ":"] [LIT_CHARS z]} {[LIT_CHARS --net] [LIT_DBRACKET_LIKE "="] [LIT_CHARS host]} {[LIT_CHARS -e]} {[DQ [LIT_CHARS "https_proxy="][VarSub KUBERNETES_HTTPS_PROXY test_op=VS_TEST_COLON_HYPHEN {}]]} {[LIT_CHARS gcr.io/google_containers/gen-swagger-docs] [LIT_OTHER ":"] [LIT_CHARS v8]} {[DQ [VarSub swagger_json_name]]} ) ) ) (Com {[LIT_CHARS pushd]} {[DQ [VarSub output_tmp]]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (Com {[LIT_CHARS touch]} {[LIT_CHARS .generated_html]} ) (Pipeline (Com {[LIT_CHARS find]} {[LIT_CHARS .]} {[LIT_CHARS -type]} {[LIT_CHARS f]} ) (Com {[LIT_CHARS cut]} {[LIT_CHARS -sd]} {[LIT_CHARS /]} {[LIT_CHARS -f]} {[LIT_CHARS 2-]} ) (Com {[LIT_CHARS sort]} < (FilenameRedirectNode filename={[LIT_CHARS .generated_html]} "> 1), > more_env=[('LC_ALL', {[LIT_CHARS C]})] ) ) (Com {[LIT_CHARS popd]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (While (Com {[LIT_CHARS read]} {[LIT_CHARS file]} ) (If (DBracket {B? LOGICAL_BINARY_AND {B1 UNARY_FILE_e {[DQ [VarSub output_dir][LIT_CHARS /][VarSub file]]}} {B1 UNARY_FILE_e {[DQ [VarSub output_tmp][LIT_CHARS /][VarSub file]]}}}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "comparing "][VarSub output_dir][LIT_CHARS /][VarSub file][LIT_CHARS " with "][VarSub output_tmp][LIT_CHARS /][VarSub file]]} ) (= scope= flags=0 words=[] bindings=[('original', {[ComSub (Com {[LIT_CHARS cat]} {[DQ [VarSub output_dir][LIT_CHARS /][VarSub file]]})]})]) (= scope= flags=0 words=[] bindings=[('generated', {[ComSub (Com {[LIT_CHARS cat]} {[DQ [VarSub output_tmp][LIT_CHARS /][VarSub file]]})]})]) (= scope= flags=0 words=[] bindings=[('original', {[ComSub (AndOr OP_OR_IF (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub original]]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -v]} {[DQ [LIT_CHARS "Last updated"]]}) ) (Com {[LIT_OTHER ":"]}) )]})]) (= scope= flags=0 words=[] bindings=[('generated', {[ComSub (AndOr OP_OR_IF (Pipeline (Com {[LIT_CHARS echo]} {[DQ [VarSub generated]]}) (Com {[LIT_CHARS grep]} {[LIT_CHARS -v]} {[DQ [LIT_CHARS "Last updated"]]}) ) (Com {[LIT_OTHER ":"]}) )]})]) (If (Com {[LIT_CHARS diff]} {[LIT_CHARS -B]} {[ComSub (Com {[LIT_CHARS echo]} {[DQ [VarSub original]]})]} {[ComSub (Com {[LIT_CHARS echo]} {[DQ [VarSub generated]]})]} < (FilenameRedirectNode filename={[LIT_CHARS /dev/null]} "> 1), > ) (Com {[LIT_CHARS cp]} {[DQ [VarSub output_dir][LIT_CHARS /][VarSub file]]} {[DQ [VarSub output_tmp][LIT_CHARS /][VarSub file]]} ) ) ) ) ) (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "Moving api reference docs from "][VarSub output_tmp][LIT_CHARS " to "][VarSub output_dir]]} ) (Com {[LIT_CHARS cp]} {[LIT_CHARS -af]} {[DQ [VarSub output_tmp]] [LIT_CHARS /] [LIT_OTHER "*"]} {[DQ [VarSub output_dir]]} ) (Com {[LIT_CHARS rm]} {[LIT_CHARS -r]} {[DQ [VarSub output_tmp]]} ) ) ) )