US08-01: Make the Trust Boundary Configurable and Authenticated
This commit is contained in:
@@ -209,15 +209,25 @@ def main(argv: Sequence[str] | None = None) -> int:
|
||||
lock.release()
|
||||
return 0
|
||||
|
||||
import sys
|
||||
|
||||
import uvicorn
|
||||
|
||||
from photo_pipeline.api.app import create_app
|
||||
from photo_pipeline.api.app import ConfigurationRefused, create_app
|
||||
|
||||
# An exposed deployment without an access secret must not reach the port at all,
|
||||
# and the operator needs a sentence, not a traceback (US08-01).
|
||||
try:
|
||||
app = create_app(config)
|
||||
except ConfigurationRefused as error:
|
||||
print(str(error), file=sys.stderr)
|
||||
return 4
|
||||
|
||||
lock = LibraryLock(config, "api")
|
||||
if (held := _acquire(lock, allow_legacy=args.allow_legacy)) is not None:
|
||||
return held
|
||||
try:
|
||||
uvicorn.run(create_app(config), host=config.host, port=config.port)
|
||||
uvicorn.run(app, host=config.host, port=config.port)
|
||||
finally:
|
||||
lock.release()
|
||||
return 0
|
||||
|
||||
Reference in New Issue
Block a user