blob: 77c7af896760a299dd750b5fedf64f24b1320402 [file] [log] [blame]
#!/usr/bin/env python
# Copyright 2017 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
"""Runs a local development server."""
import getpass
import os
import subprocess
import fire
from werkzeug import security
def LocalServer(port=8080):
"""Starts a local development server with autoreload."""
cmd = tuple(
'gunicorn -b=:{port} main:app --workers=1'
' --reload'.format(port=int(port)).split())
password = getpass.getpass()
hashed = security.generate_password_hash(password)
env = dict(
os.environ,
ADMIN_PASSWORD_HASH=hashed,
CIDB_CRED_DIR='creds/cidb.dbg',
DEBUG='True',
IS_SERVICE='False')
subprocess.call(cmd, env=env)
if __name__ == '__main__':
fire.Fire(LocalServer)