[{"title":"( 65 个子文件 38KB ) openci:由Python,Flask和OpenFaaS支持的无服务器持续集成系统","children":[{"title":"openci-master","children":[{"title":"template.yml <span style='color:#111;'> 288B </span>","children":null,"spread":false},{"title":"docker-compose-faas.yml <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"docker-compose-faas-full.yml <span style='color:#111;'> 4.46KB </span>","children":null,"spread":false},{"title":"LICENSE <span style='color:#111;'> 1.05KB </span>","children":null,"spread":false},{"title":"docker-compose-web.yml <span style='color:#111;'> 1.23KB </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 54B </span>","children":null,"spread":false},{"title":"docker-compose-web-prod.yml <span style='color:#111;'> 1.14KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 170B </span>","children":null,"spread":false},{"title":"services","children":[{"title":"nginx","children":[{"title":"Dockerfile <span style='color:#111;'> 91B </span>","children":null,"spread":false},{"title":"dev.conf <span style='color:#111;'> 315B </span>","children":null,"spread":false}],"spread":true},{"title":"functions","children":[{"title":"eval","children":[{"title":"Dockerfile01 <span style='color:#111;'> 583B </span>","children":null,"spread":false},{"title":"Dockerfile <span style='color:#111;'> 585B </span>","children":null,"spread":false},{"title":"handler2.py <span style='color:#111;'> 1.65KB </span>","children":null,"spread":false},{"title":"requirements.txt <span style='color:#111;'> 17B </span>","children":null,"spread":false},{"title":"Dockerfile02 <span style='color:#111;'> 585B </span>","children":null,"spread":false},{"title":"handler.py <span style='color:#111;'> 1.03KB </span>","children":null,"spread":false}],"spread":true},{"title":"ping","children":[{"title":"Dockerfile <span style='color:#111;'> 556B </span>","children":null,"spread":false},{"title":"requirements.txt <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"handler.py <span style='color:#111;'> 14B </span>","children":null,"spread":false}],"spread":true},{"title":"config","children":[{"title":"prometheus.yml <span style='color:#111;'> 1.26KB </span>","children":null,"spread":false},{"title":"alertmanager.yml <span style='color:#111;'> 489B </span>","children":null,"spread":false},{"title":"alert.rules.yml <span style='color:#111;'> 460B </span>","children":null,"spread":false}],"spread":false},{"title":"hook","children":[{"title":"Dockerfile <span style='color:#111;'> 585B </span>","children":null,"spread":false},{"title":"handler2.py <span style='color:#111;'> 1.82KB </span>","children":null,"spread":false},{"title":"requirements.txt <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"handler.py <span style='color:#111;'> 187B </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"db","children":[{"title":"Dockerfile <span style='color:#111;'> 83B </span>","children":null,"spread":false},{"title":"create.sql <span style='color:#111;'> 104B </span>","children":null,"spread":false}],"spread":true},{"title":"web","children":[{"title":"Dockerfile <span style='color:#111;'> 511B </span>","children":null,"spread":false},{"title":"requirements.txt <span style='color:#111;'> 279B </span>","children":null,"spread":false},{"title":"manage.py <span style='color:#111;'> 2.54KB </span>","children":null,"spread":false},{"title":".dockerignore <span style='color:#111;'> 12B </span>","children":null,"spread":false},{"title":"project","children":[{"title":"client","children":[{"title":"templates","children":[{"title":"footer.html <span style='color:#111;'> 253B </span>","children":null,"spread":false},{"title":"user","children":[{"title":"login.html <span style='color:#111;'> 653B </span>","children":null,"spread":false},{"title":"members.html <span style='color:#111;'> 161B </span>","children":null,"spread":false},{"title":"register.html <span style='color:#111;'> 711B </span>","children":null,"spread":false}],"spread":false},{"title":"main","children":[{"title":"home.html <span style='color:#111;'> 3.41KB </span>","children":null,"spread":false},{"title":"history.html <span style='color:#111;'> 1.17KB </span>","children":null,"spread":false},{"title":"about.html <span style='color:#111;'> 181B </span>","children":null,"spread":false}],"spread":false},{"title":"errors","children":[{"title":"404.html <span style='color:#111;'> 303B </span>","children":null,"spread":false},{"title":"403.html <span style='color:#111;'> 306B </span>","children":null,"spread":false},{"title":"500.html <span style='color:#111;'> 298B </span>","children":null,"spread":false},{"title":"401.html <span style='color:#111;'> 309B </span>","children":null,"spread":false}],"spread":false},{"title":"_base.html <span style='color:#111;'> 2.12KB </span>","children":null,"spread":false},{"title":"header.html <span style='color:#111;'> 927B </span>","children":null,"spread":false}],"spread":false},{"title":"static","children":[{"title":"main.js <span style='color:#111;'> 1.57KB </span>","children":null,"spread":false},{"title":".jshintrc <span style='color:#111;'> 769B </span>","children":null,"spread":false},{"title":"main.css <span style='color:#111;'> 132B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"server","children":[{"title":"models.py <span style='color:#111;'> 2.28KB </span>","children":null,"spread":false},{"title":"user","children":[{"title":"__init__.py <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"views.py <span style='color:#111;'> 1.79KB </span>","children":null,"spread":false},{"title":"forms.py <span style='color:#111;'> 854B </span>","children":null,"spread":false}],"spread":false},{"title":"__init__.py <span style='color:#111;'> 2.11KB </span>","children":null,"spread":false},{"title":"main","children":[{"title":"__init__.py <span style='color:#111;'> 34B </span>","children":null,"spread":false},{"title":"views.py <span style='color:#111;'> 4.03KB </span>","children":null,"spread":false},{"title":"tasks.py <span style='color:#111;'> 438B </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"tests","children":[{"title":"test_user.py <span style='color:#111;'> 4.12KB </span>","children":null,"spread":false},{"title":"test__config.py <span style='color:#111;'> 1.58KB </span>","children":null,"spread":false},{"title":"helpers.py <span style='color:#111;'> 19B </span>","children":null,"spread":false},{"title":"__init__.py <span style='color:#111;'> 35B </span>","children":null,"spread":false},{"title":"base.py <span style='color:#111;'> 552B </span>","children":null,"spread":false},{"title":"test_main.py <span style='color:#111;'> 883B </span>","children":null,"spread":false}],"spread":false},{"title":"__init__.py <span style='color:#111;'> 22B </span>","children":null,"spread":false},{"title":"config.py <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false}],"spread":false},{"title":"entrypoint.sh <span style='color:#111;'> 150B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}],"spread":true}]