1
0
Fork 1
mirror of https://github.com/thatmattlove/hyperglass.git synced 2026-01-17 08:48:05 +00:00

cli cleanup

This commit is contained in:
checktheroads 2020-01-21 17:28:32 -07:00
parent f3be12b82c
commit 252d2d4bb2
2 changed files with 53 additions and 17 deletions

View file

@ -10,8 +10,6 @@ import click
# Project Imports
from cli.echo import cmd_help
from cli.echo import error
from cli.echo import status
from cli.echo import success_info
from cli.echo import value
from cli.formatting import HelpColorsCommand
from cli.formatting import HelpColorsGroup
@ -19,6 +17,7 @@ from cli.formatting import random_colors
from cli.static import CLI_HELP
from cli.static import LABEL
from cli.static import E
from cli.util import build_ui
from cli.util import fix_ownership
from cli.util import fix_permissions
from cli.util import migrate_config
@ -42,26 +41,14 @@ def hg():
pass
@hg.command("build-ui", short_help=cmd_help(E.BUTTERFLY, "Create a new UI build"))
def build_ui():
@hg.command("build-ui", help=cmd_help(E.BUTTERFLY, "Create a new UI build"))
def build_frontend():
"""Create a new UI build.
Raises:
click.ClickException: Raised on any errors.
"""
try:
import asyncio
from hyperglass.util import build_ui
except ImportError as e:
error("Error importing UI builder", e)
status("Starting new UI build...")
try:
success = asyncio.run(build_ui())
success_info("Completed build, ran", success)
except Exception as e:
error("Error building UI", e)
return build_ui()
@hg.command(

View file

@ -9,6 +9,8 @@ from cli.echo import status
from cli.echo import success
from cli.static import CL
from cli.static import NL
from cli.static import SUCCESS
from cli.static import VALUE
from cli.static import WS
from cli.static import E
@ -145,3 +147,50 @@ def migrate_systemd(source, destination):
error("Error migrating example systemd service", e)
success(f"Successfully migrated systemd service to: {newfile}")
def build_ui():
"""Create a new UI build.
Raises:
click.ClickException: Raised on any errors.
"""
try:
import asyncio
from hyperglass.configuration import params, frontend_params
from hyperglass.util import build_frontend
except ImportError as e:
error("Error importing UI builder", e)
status("Starting new UI build...")
if params.general.developer_mode:
dev_mode = "production"
else:
dev_mode = "development"
try:
success = asyncio.run(
build_frontend(
dev_mode=params.general.developer_mode,
dev_url=f"http://localhost:{str(params.general.listen_port)}/api/",
prod_url="/api/",
params=frontend_params,
force=True,
)
)
if success:
click.echo(
NL[1]
+ E.CHECK
+ click.style("Completed UI build in", **SUCCESS)
+ WS[1]
+ click.style(dev_mode, **VALUE)
+ WS[1]
+ click.style("mode", **SUCCESS)
+ NL[1]
)
except Exception as e:
error("Error building UI", e)
return True