예전에 "Python으로 Azure에 Serverless 웹 구축하기" 라는 제목으로 Flask 웹 어플리케이션을 Azure Functions에 올리는 방법을 쓴 적이 있는데 (uaremine.tistory.com/9), 오랜만에 다시 봤더니 좀 달라진 것이 있어서 추가한다.
WSGI 연동을 위해 이전 글에서는 azf-wsgi 모듈을 이용했는데, MS에서 WSGI 지원하게 되어서 해당 모듈을 deprecate 한다는 공지가 떴다.
자세한 내용은 아래를 참고하면 되고,
github.com/Azure/azure-functions-python-library/pull/45
요약하면
1. __init__.py
import logging
import azure.functions as func
from .wsgi import app
def main(req: func.HttpRequest, context: func.Context) -> func.HttpResponse:
return func.WsgiMiddleware(app).handle(req, context)
from . import sample
2. wsgi.py
from flask import Flask
app = Flask(__name__)
3. sample.py
from . import app
@app.route('/')
def home():
return 'Hello, World!'
이렇게 해주면 된다.
특별히 달라진 것은 없고, azf-wsgi의 기능을 azure-functions-python-library로 옮겨놓은 것이라고 함.