From 1f8689f72983ba979200b78854451f5bad8dbba8 Mon Sep 17 00:00:00 2001 From: ajshedivy Date: Mon, 12 Sep 2022 14:59:44 -0500 Subject: [PATCH 1/5] honor port env variable for python web server examples Signed-off-by: ajshedivy --- python/active-jobs-dashboard/server.py | 3 ++- python/bottle-example/sample.py | 5 +++-- python/flask-example/sample.py | 5 +++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/python/active-jobs-dashboard/server.py b/python/active-jobs-dashboard/server.py index 190aaf2b..8a9eb0d3 100644 --- a/python/active-jobs-dashboard/server.py +++ b/python/active-jobs-dashboard/server.py @@ -2,6 +2,7 @@ from bottle import route, run, template, request from string import capwords import ibm_db_dbi as dbi +import os conn = None @route('/', method=('GET', 'POST')) @@ -48,7 +49,7 @@ def static_assets(path): with open(path[1:], "rb") as f: return f.read() -run(host='0.0.0.0', port=3333, debug=True, reloader=True) +run(host='0.0.0.0', port=os.getenv('PORT', '3333'), debug=True, reloader=True) # Example of running bottle with gunicorn: # run(host='0.0.0.0', port=3333, debug=True, reloader=True, server='gunicorn', workers=4) diff --git a/python/bottle-example/sample.py b/python/bottle-example/sample.py index b2d6fd14..71574db9 100755 --- a/python/bottle-example/sample.py +++ b/python/bottle-example/sample.py @@ -4,7 +4,8 @@ from bottle import request, get, post, static_file, route, run, template import ibm_db_dbi as dbi from itoolkit import * -from itoolkit.db2.idb2call import * #for local jobs +from itoolkit.db2.idb2call import * +import os #for local jobs version = tuple(map(int, dbi.__version__.split('.'))) if version < (2, 0, 5, 5): @@ -45,4 +46,4 @@ def cmd_toolkit(): return template('cmd', data=data) -run(host='0.0.0.0', port=9000, debug=True, reloader=True) +run(host='0.0.0.0', port=os.getenv('PORT', '9000'), debug=True, reloader=True) diff --git a/python/flask-example/sample.py b/python/flask-example/sample.py index 497b8e8b..474e3368 100755 --- a/python/flask-example/sample.py +++ b/python/flask-example/sample.py @@ -5,7 +5,8 @@ app = Flask(__name__) import ibm_db_dbi as dbi from itoolkit import * -from itoolkit.db2.idb2call import * #for local jobs +from itoolkit.db2.idb2call import * +import os #for local jobs version = tuple(map(int, dbi.__version__.split('.'))) if version < (2, 0, 5, 5): @@ -46,4 +47,4 @@ def cmd_toolkit(): return render_template('cmd.html', data=data) app.debug = True -app.run(host='0.0.0.0', port=9000,) +app.run(host='0.0.0.0', port=os.getenv('PORT', '9000'),) From 4fb568c4be18bf0d2146a7a06a51593c0b726134 Mon Sep 17 00:00:00 2001 From: ajshedivy Date: Mon, 12 Sep 2022 15:07:20 -0500 Subject: [PATCH 2/5] fix comment alignment Signed-off-by: ajshedivy --- python/bottle-example/sample.py | 4 ++-- python/flask-example/sample.py | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/python/bottle-example/sample.py b/python/bottle-example/sample.py index 71574db9..07652d90 100755 --- a/python/bottle-example/sample.py +++ b/python/bottle-example/sample.py @@ -4,8 +4,8 @@ from bottle import request, get, post, static_file, route, run, template import ibm_db_dbi as dbi from itoolkit import * -from itoolkit.db2.idb2call import * -import os #for local jobs +from itoolkit.db2.idb2call import * #for local jobs +import os version = tuple(map(int, dbi.__version__.split('.'))) if version < (2, 0, 5, 5): diff --git a/python/flask-example/sample.py b/python/flask-example/sample.py index 474e3368..02fbbc69 100755 --- a/python/flask-example/sample.py +++ b/python/flask-example/sample.py @@ -5,8 +5,8 @@ app = Flask(__name__) import ibm_db_dbi as dbi from itoolkit import * -from itoolkit.db2.idb2call import * -import os #for local jobs +from itoolkit.db2.idb2call import * #for local jobs +import os version = tuple(map(int, dbi.__version__.split('.'))) if version < (2, 0, 5, 5): From 9cf5944e53c8996dacfffe17fc759a8efa7869c9 Mon Sep 17 00:00:00 2001 From: ajshedivy Date: Tue, 20 Sep 2022 11:44:15 -0500 Subject: [PATCH 3/5] add int wrapper for flask example Signed-off-by: ajshedivy --- python/flask-example/sample.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python/flask-example/sample.py b/python/flask-example/sample.py index 02fbbc69..3a2224aa 100755 --- a/python/flask-example/sample.py +++ b/python/flask-example/sample.py @@ -47,4 +47,4 @@ def cmd_toolkit(): return render_template('cmd.html', data=data) app.debug = True -app.run(host='0.0.0.0', port=os.getenv('PORT', '9000'),) +app.run(host='0.0.0.0', port=int(os.getenv('PORT', 9000)),) From 6cfb50eefb67df89340c36c6a00fe6fef7671d32 Mon Sep 17 00:00:00 2001 From: ajshedivy Date: Thu, 29 Sep 2022 12:20:18 -0500 Subject: [PATCH 4/5] update flask directory setup, add requirements.txt Signed-off-by: ajshedivy --- python/flask-example/.gitignore | 1 + .../__pycache__/sample.cpython-39.pyc | Bin 0 -> 1703 bytes python/flask-example/{ => flaskr}/sample-odbc.py | 8 +++++--- python/flask-example/{ => flaskr}/sample.py | 9 +++++---- .../{ => flaskr}/templates/cmd.html | 0 .../{ => flaskr}/templates/query.html | 0 .../{ => flaskr}/templates/row.html | 0 .../{ => flaskr}/templates/sample.html | 0 python/flask-example/requirements.txt | 10 +++++++++- 9 files changed, 20 insertions(+), 8 deletions(-) create mode 100755 python/flask-example/.gitignore create mode 100644 python/flask-example/__pycache__/sample.cpython-39.pyc rename python/flask-example/{ => flaskr}/sample-odbc.py (85%) rename python/flask-example/{ => flaskr}/sample.py (92%) rename python/flask-example/{ => flaskr}/templates/cmd.html (100%) rename python/flask-example/{ => flaskr}/templates/query.html (100%) rename python/flask-example/{ => flaskr}/templates/row.html (100%) rename python/flask-example/{ => flaskr}/templates/sample.html (100%) diff --git a/python/flask-example/.gitignore b/python/flask-example/.gitignore new file mode 100755 index 00000000..bdaab25d --- /dev/null +++ b/python/flask-example/.gitignore @@ -0,0 +1 @@ +env/ diff --git a/python/flask-example/__pycache__/sample.cpython-39.pyc b/python/flask-example/__pycache__/sample.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..f10f2e31c20ca7e2184f32964bded55a73dcc661 GIT binary patch literal 1703 zcmZWpOK&4Z5bnpkJf0-pJa+{`1}+$}b`%tGi6S806$mMdNQA^ltI>G6*Pdh^PER`| zmVLo{BnSS1edOoBfkR(8<;;x})tv_kjNR2;)!o%q^?lv((vpwhW54YtKidfXsg;MH z3(Duvsy{$5#Bhdk9O9gWB&Q+8+D0-fw4tY&bF6imxuz$X7kV7?+6;$2uk(N}ar zzQU{po)NG%c!SxeNDTNB=IFUCG{Zk(?$1}5yTHt2wYOji*SLSO%6wMuV-{Qyw#1f= zecjks?(Gfs#Mn33D)*yJUSn&gMEnk`w%9tH?#-XF4Ys*}v)R@af#}H*YCXM%+)#@u z`(+kar)ov;f^iW^o)5EFa^(tsHsX~$Y+;2zR=C}=t_f@r7{oP{4G9m#_|rqqSu^eB z5$nM}ZSJ(U+q>=EW+|G3v_IgYDa)o96`wRO%TaR>pY!I}?Nl+G!xQlE=+h@0K&!NG z38kN52$md<>o*(P1DR(nEGSI>ibM@MBmREX8I(Eid~x*Ei|*Io{{a3A)+;YMWmR?h zsq8?2>2pw?^9yrw)fryOL0NR(==ATbw_&x1m&&<0a772Bqe4W~L5`gclto-B>)TgH z$50zL=irA`k5aKD*eNDW2fD4LzBVxidivtdU{#Et-%M zw+jrIQt2^kLMMdTR}{+N9EP+y%My*i-KRs-ryW77)Ti=@hTDj7EtIbq5Qoptz=T>!~J(a{|g!#H%-FP4aDuetW4sp+K0j2(y?z= z++ahLJK!-;sZy3Gf2>+Hq2p85n^NS8_PJCPXrkPtEDD~;&`Cz3Dur_S1y4r6yt)Z3 z9m=#U4A3nrtW^?7ne##_OK(&Zc8OJR{NEIUhtaOVf+_%kXn;NV`J_R_yP%J)PLi`n zpgCZ^2dxLnW6)**nY2I>4V(nXCTK=9Y@oXnGh$>)LGu=r7^nw1+uhmShT4EJ^fWS2Ig&TkbHX6WqWc1db}GS7=%-S|MKvsi6z^&O0qhu# z%tkKmwG>eLA5ZEKZKS=Nrm_ip4f7BQh=U#6z&^FGu6IDh`!IW~yeP`!w1}dyyA96+ z{6e@t-yNqPeF%>bQP!ZW09hSN>zT66ofMkdCIeFli1+@D5t}dtY2QW=ZrqL9thdun zLFhUtQdaupBF=dfL8*pAWy=vfJBsGxPa%N#c=B R7%vkbCtb#V0IlJG_7B22t_uJF literal 0 HcmV?d00001 diff --git a/python/flask-example/sample-odbc.py b/python/flask-example/flaskr/sample-odbc.py similarity index 85% rename from python/flask-example/sample-odbc.py rename to python/flask-example/flaskr/sample-odbc.py index 239f9fd1..9cb55e61 100644 --- a/python/flask-example/sample-odbc.py +++ b/python/flask-example/flaskr/sample-odbc.py @@ -2,10 +2,11 @@ # -*- coding: utf-8 -*- from flask import Flask, render_template, request -app = Flask(__name__) import pyodbc from itoolkit import * -from itoolkit.transport import DatabaseTransport #for local jobs +from itoolkit.transport import DatabaseTransport + +app = Flask(__name__)#for local jobs @app.route('/sample') def sample(): @@ -43,4 +44,5 @@ def cmd_toolkit(): return render_template('cmd.html', data=data) app.debug = True -app.run(host='0.0.0.0', port=9000,) +if __name__ == '__main__': + app.run(host='0.0.0.0', port=int(os.getenv('PORT', 9000)),) diff --git a/python/flask-example/sample.py b/python/flask-example/flaskr/sample.py similarity index 92% rename from python/flask-example/sample.py rename to python/flask-example/flaskr/sample.py index 3a2224aa..2958e3c5 100755 --- a/python/flask-example/sample.py +++ b/python/flask-example/flaskr/sample.py @@ -1,12 +1,12 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- - from flask import Flask, render_template, request -app = Flask(__name__) import ibm_db_dbi as dbi from itoolkit import * from itoolkit.db2.idb2call import * #for local jobs -import os +import os + +app = Flask(__name__) version = tuple(map(int, dbi.__version__.split('.'))) if version < (2, 0, 5, 5): @@ -47,4 +47,5 @@ def cmd_toolkit(): return render_template('cmd.html', data=data) app.debug = True -app.run(host='0.0.0.0', port=int(os.getenv('PORT', 9000)),) +if __name__ == '__main__': + app.run(host='0.0.0.0', port=int(os.getenv('PORT', 9000)),) diff --git a/python/flask-example/templates/cmd.html b/python/flask-example/flaskr/templates/cmd.html similarity index 100% rename from python/flask-example/templates/cmd.html rename to python/flask-example/flaskr/templates/cmd.html diff --git a/python/flask-example/templates/query.html b/python/flask-example/flaskr/templates/query.html similarity index 100% rename from python/flask-example/templates/query.html rename to python/flask-example/flaskr/templates/query.html diff --git a/python/flask-example/templates/row.html b/python/flask-example/flaskr/templates/row.html similarity index 100% rename from python/flask-example/templates/row.html rename to python/flask-example/flaskr/templates/row.html diff --git a/python/flask-example/templates/sample.html b/python/flask-example/flaskr/templates/sample.html similarity index 100% rename from python/flask-example/templates/sample.html rename to python/flask-example/flaskr/templates/sample.html diff --git a/python/flask-example/requirements.txt b/python/flask-example/requirements.txt index 7e106024..be581806 100644 --- a/python/flask-example/requirements.txt +++ b/python/flask-example/requirements.txt @@ -1 +1,9 @@ -flask +click==8.1.3 +Flask==2.2.2 +importlib-metadata==4.12.0 +itoolkit==1.7.1 +itsdangerous==2.1.2 +Jinja2==3.1.2 +MarkupSafe==2.1.1 +Werkzeug==2.2.2 +zipp==3.8.1 From 4c90b22265fe54953285a0cd31e26cc1e423e3a3 Mon Sep 17 00:00:00 2001 From: ajshedivy Date: Thu, 29 Sep 2022 12:25:24 -0500 Subject: [PATCH 5/5] remove pycache Signed-off-by: ajshedivy --- python/flask-example/.gitignore | 1 + .../__pycache__/sample.cpython-39.pyc | Bin 1703 -> 0 bytes 2 files changed, 1 insertion(+) delete mode 100644 python/flask-example/__pycache__/sample.cpython-39.pyc diff --git a/python/flask-example/.gitignore b/python/flask-example/.gitignore index bdaab25d..757ecb33 100755 --- a/python/flask-example/.gitignore +++ b/python/flask-example/.gitignore @@ -1 +1,2 @@ env/ +__pycache__/ \ No newline at end of file diff --git a/python/flask-example/__pycache__/sample.cpython-39.pyc b/python/flask-example/__pycache__/sample.cpython-39.pyc deleted file mode 100644 index f10f2e31c20ca7e2184f32964bded55a73dcc661..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1703 zcmZWpOK&4Z5bnpkJf0-pJa+{`1}+$}b`%tGi6S806$mMdNQA^ltI>G6*Pdh^PER`| zmVLo{BnSS1edOoBfkR(8<;;x})tv_kjNR2;)!o%q^?lv((vpwhW54YtKidfXsg;MH z3(Duvsy{$5#Bhdk9O9gWB&Q+8+D0-fw4tY&bF6imxuz$X7kV7?+6;$2uk(N}ar zzQU{po)NG%c!SxeNDTNB=IFUCG{Zk(?$1}5yTHt2wYOji*SLSO%6wMuV-{Qyw#1f= zecjks?(Gfs#Mn33D)*yJUSn&gMEnk`w%9tH?#-XF4Ys*}v)R@af#}H*YCXM%+)#@u z`(+kar)ov;f^iW^o)5EFa^(tsHsX~$Y+;2zR=C}=t_f@r7{oP{4G9m#_|rqqSu^eB z5$nM}ZSJ(U+q>=EW+|G3v_IgYDa)o96`wRO%TaR>pY!I}?Nl+G!xQlE=+h@0K&!NG z38kN52$md<>o*(P1DR(nEGSI>ibM@MBmREX8I(Eid~x*Ei|*Io{{a3A)+;YMWmR?h zsq8?2>2pw?^9yrw)fryOL0NR(==ATbw_&x1m&&<0a772Bqe4W~L5`gclto-B>)TgH z$50zL=irA`k5aKD*eNDW2fD4LzBVxidivtdU{#Et-%M zw+jrIQt2^kLMMdTR}{+N9EP+y%My*i-KRs-ryW77)Ti=@hTDj7EtIbq5Qoptz=T>!~J(a{|g!#H%-FP4aDuetW4sp+K0j2(y?z= z++ahLJK!-;sZy3Gf2>+Hq2p85n^NS8_PJCPXrkPtEDD~;&`Cz3Dur_S1y4r6yt)Z3 z9m=#U4A3nrtW^?7ne##_OK(&Zc8OJR{NEIUhtaOVf+_%kXn;NV`J_R_yP%J)PLi`n zpgCZ^2dxLnW6)**nY2I>4V(nXCTK=9Y@oXnGh$>)LGu=r7^nw1+uhmShT4EJ^fWS2Ig&TkbHX6WqWc1db}GS7=%-S|MKvsi6z^&O0qhu# z%tkKmwG>eLA5ZEKZKS=Nrm_ip4f7BQh=U#6z&^FGu6IDh`!IW~yeP`!w1}dyyA96+ z{6e@t-yNqPeF%>bQP!ZW09hSN>zT66ofMkdCIeFli1+@D5t}dtY2QW=ZrqL9thdun zLFhUtQdaupBF=dfL8*pAWy=vfJBsGxPa%N#c=B R7%vkbCtb#V0IlJG_7B22t_uJF