from atila import Atila import time, math import json from package import route_guide_pb2 app = Atila(__name__) app.debug = True app.use_reloader = True @app.route("/add_number") def add_number(was, a, b): return a + b @app.route("/") def index_rpc2(was, a, b): return "<h1>XML-RPC</h1>" if __name__ == "__main__": import skitai skitai.mount("/rpc2", app) skitai.run(port=30371)
from atila import Atila import time, math import json from package import route_guide_pb2 app = Atila(__name__) app.debug = True app.use_reloader = True @app.route("/") def RouteChat(was): return "<h1>Reverse Proxing</h1><a href='/lb/pypi'>Click Here</a>" if __name__ == "__main__": import skitai skitai.alias("@pypi", skitai.PROTO_HTTPS, "pypi.org") skitai.mount("/", app) skitai.mount("/lb", "@pypi") skitai.run(port=30371)
return was.wsconfig (skitai.WS_GROUPCHAT, 60) elif was.wsopened (): return "Client %s has entered" % was.wsclient () elif was.wsclosed (): return "Client %s has leaved" % was.wsclient () return "Client %s Said: %s" % (was.wsclient (), message) def onchatopen (was): return "Client %s has entered" % was.wsclient () def onchatclose (was): return "Client %s has leaved" % was.wsclient () @app.route ("/chat2") @app.websocket (skitai.WS_GROUPCHAT, 60, onopen = onchatopen, onclose = onchatclose) def chat2 (was, message, room_id): if message: return "Client %s Said: %s" % (was.wsclient (), message) @app.route ("/") def websocket (was, mode = "echo"): if mode == "chat": mode += "?room_id=1" return was.render ("websocket.html", path = mode) if __name__ == "__main__": import skitai skitai.mount ("/websocket", app) skitai.run (port = 30371)
from atila import Atila if __name__ == "__main__": import skitai skitai.alias ("@pypi", skitai.PROTO_HTTPS, "pypi.org") skitai.mount ("/", 'statics') skitai.mount ("/", "app.py") skitai.mount ("/websocket", 'websocket.py') skitai.mount ("/rpc2", 'rpc2.py') skitai.mount ("/routeguide.RouteGuide", 'grpc_route_guide.py') skitai.mount ("/members", 'auth.py') skitai.mount ("/lb", "@pypi") skitai.enable_ssl ( "resources/certifications/server.crt", "resources/certifications/server.key", "fatalbug" ) skitai.run (port = 30371, quic = 4433)
# For JWT Claim def handle_claim(self, handler, request): claim = request.claim expires = claim.get("expires", 0) if expires and expires < time.time(): return handler.continue_request(request) handler.continue_request(request, claim.get("user"), claim.get("roles")) @app.startup def startup(wasc): wasc.handler.set_auth_handler(Authorizer()) @app.route("/") def index(was): return "<h1>Skitai App Engine: API Gateway</h1>" if __name__ == "__main__": import skitai skitai.alias("@pypi", skitai.PROTO_HTTP, "gall.dcinside.com") skitai.alias("@postgres", skitai.DB_PGSQL, "127.0.0.1:5432/mydb/postgres/1111") skitai.mount('/', app) skitai.mount('/lb', '@pypi') skitai.enable_gateway(True, "8fa06210-e109-11e6-934f-001b216d6e71", "Skitai API Gateway") skitai.run(address="0.0.0.0", port=30371)
from atila import Atila import skitai app = Atila(__name__) app.debug = True app.use_reloader = True app.jinja_overlay() app.realm = "Secured Area" app.users = {"admin": ("1111", 0, {'role': 'root'})} @app.route("/", authenticate="digest") def index(was): return was.render("index.html") if __name__ == "__main__": import skitai skitai.mount("/", app) skitai.run(address="0.0.0.0", port=30371)
from atila import Atila if __name__ == "__main__": import skitai skitai.mount("/", "app.py") skitai.enable_forward(80, 443, '127.0.0.1') skitai.enable_ssl("resources/certifications/server.crt", "resources/certifications/server.key", "fatalbug") skitai.run(port=443, workers=1)
def test_skitai(app): skitai.set_worker_critical_point() skitai.register_states("a", "b") if was._started(): assert was._luwatcher._keys == ['a', 'b'] else: assert skitai.dconf["models_keys"] == {"a", "b"} if os.name != "posix": return assert skitai.joinpath('a', 'b').endswith("/bin/a/b") skitai.mount("/k", app) assert skitai.dconf['mount']["default"][0][1][0].endswith('/bin/pytest') assert skitai.dconf['mount']["default"][0][1][1] == 'app' skitai.dconf['mount']["default"] = [] skitai.mount("/k2", '/path/app.py', 'app') assert skitai.dconf['mount']["default"][0][1] == ('/path/app.py', 'app') skitai.dconf['mount']["default"] = [] skitai.mount("/k2", 'path/app.py', 'app') assert skitai.dconf['mount']["default"][0][1][0].endswith( '/bin/path/app.py') assert skitai.dconf['mount']["default"][0][1][1] == 'app' if tfserver: pref = skitai.pref() pref.config.tf_models = None skitai.dconf['mount']["default"] = [] skitai.mount("/k2", tfserver, pref=pref) assert skitai.dconf['mount']["default"][0][1][0].endswith( 'tfserver/export/skitai/__export__.py') skitai.dconf['mount']["default"] = [] skitai.mount("/k2", (tfserver, "dapp"), "dapp", pref=pref) assert skitai.dconf['mount']["default"][0][1][0].endswith( 'tfserver/export/skitai/dapp') assert skitai.dconf['mount']["default"][0][1][1] == "dapp" skitai.dconf['mount']["default"] = [] skitai.mount("/k2", "X11") assert skitai.dconf['mount']["default"][0][1][0].endswith('/bin/X11') skitai.dconf['mount']["default"] = [] skitai.mount("/k2", "@X11") assert skitai.dconf['mount']["default"][0][1] == "@X11" if django: skitai.dconf['mount']["default"] = [] t = os.path.join(os.path.dirname(__file__), "django_") skitai.mount("/k2", t) assert skitai.dconf['mount']["default"][0][1] == t skitai.dconf['mount']["default"] = [] t = os.path.join(os.path.dirname(__file__), "django_", "wsgi.py") skitai.mount("/k2", t, "application") t = os.path.join(os.path.dirname(__file__), "django_", "settings.py") skitai.alias("@django", skitai.DJANGO, t) assert skitai.dconf["clusters"]["django"]
import skitai import tfserver import tensorflow as tf import os import sys def load_latest_model (model_name, subdir = None, per_process_gpu_memory_fraction = 0.03): loc = os.path.normpath(subdir) if not os.path.isdir (loc) or not os.listdir (loc): return version = max ([int (ver) for ver in os.listdir (loc) if ver.isdigit () and os.path.isdir (os.path.join (loc, ver))]) model_path = os.path.join (loc, str (version)) tfconfig = tf.ConfigProto(log_device_placement = False) pref.config.tf_models [model_name] = (model_path, tfconfig) if __name__ == "__main__": pref = skitai.pref () pref.max_client_body_size = 100 * 1024 * 1024 # 100 MB pref.debug = True pref.use_reloader = True pref.access_control_allow_origin = ["*"] pref.config.tf_models = {} load_latest_model ("test", skitai.joinpath ("models"), 0.1) skitai.mount ("/", tfserver, pref = pref) skitai.run (port = 5000, name = "tfms")
from atila import Atila import time, math import json from services import route_guide_pb2 app = Atila(__name__) app.debug = True app.use_reloader = True @app.route("/") def RouteChat(was): return "<h1>Reverse Proxing</h1><a href='/lb/pypi'>Click Here</a>" @app.route("/pypi") def documentation(was): return was.get("https://pypi.org/project/rs4/", headers=[("Accept", "text/html")]).fetch() if __name__ == "__main__": import skitai skitai.alias("@pypi", skitai.PROTO_HTTPS, "pypi.org") skitai.mount("/", app) skitai.mount("/lb", "@pypi") skitai.mount("/lb2", "@pypi/project") skitai.run(port=30371)
import os from atila import Atila import skitai app = Atila(__name__) app.debug = True app.use_reloader = True app.skito_jinja() @app.route("/") def index(was): return was.render("jinja2overlay.html", name="Hans Roh", num=10) if __name__ == "__main__": import skitai skitai.mount("/", 'statics') skitai.mount("/", app) skitai.run(port=30371)