Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
MindSpore
mindinsight
提交
f2f80b17
M
mindinsight
项目概览
MindSpore
/
mindinsight
通知
8
Star
4
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
M
mindinsight
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
f2f80b17
编写于
6月 16, 2020
作者:
L
liangyongxiong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
add path_prefix argument for start command
上级
8d47be57
变更
12
隐藏空白更改
内联
并排
Showing
12 changed file
with
50 addition
and
22 deletion
+50
-22
mindinsight/backend/application.py
mindinsight/backend/application.py
+1
-1
mindinsight/backend/datavisual/static_resource_api.py
mindinsight/backend/datavisual/static_resource_api.py
+6
-8
mindinsight/backend/datavisual/task_manager_api.py
mindinsight/backend/datavisual/task_manager_api.py
+1
-1
mindinsight/backend/datavisual/train_visual_api.py
mindinsight/backend/datavisual/train_visual_api.py
+1
-1
mindinsight/backend/lineagemgr/lineage_api.py
mindinsight/backend/lineagemgr/lineage_api.py
+1
-1
mindinsight/backend/profiler/profile_api.py
mindinsight/backend/profiler/profile_api.py
+1
-1
mindinsight/backend/run.py
mindinsight/backend/run.py
+1
-1
mindinsight/conf/constants.py
mindinsight/conf/constants.py
+2
-2
mindinsight/conf/defaults.py
mindinsight/conf/defaults.py
+1
-0
mindinsight/scripts/start.py
mindinsight/scripts/start.py
+31
-0
mindinsight/ui/src/services/fetcher.js
mindinsight/ui/src/services/fetcher.js
+1
-1
tests/ut/backend/datavisual/conftest.py
tests/ut/backend/datavisual/conftest.py
+3
-5
未找到文件。
mindinsight/backend/application.py
浏览文件 @
f2f80b17
...
...
@@ -107,7 +107,7 @@ def before_request():
def
create_app
():
"""Set flask APP config, and start the data manager."""
static_url_path
=
"/static"
static_url_path
=
settings
.
URL_PATH_PREFIX
+
"/static"
static_folder_path
=
os
.
path
.
realpath
(
os
.
path
.
join
(
os
.
path
.
dirname
(
__file__
),
os
.
pardir
,
'ui'
,
'dist'
,
'static'
))
app
=
Flask
(
__name__
,
static_url_path
=
static_url_path
,
static_folder
=
static_folder_path
)
...
...
mindinsight/backend/datavisual/static_resource_api.py
浏览文件 @
f2f80b17
...
...
@@ -20,20 +20,18 @@ from flask import current_app
from
flask
import
send_from_directory
from
flask
import
Blueprint
from
mindinsight.conf
import
settings
APP_PATH
=
os
.
path
.
realpath
(
os
.
path
.
dirname
(
sys
.
argv
[
0
]))
BLUEPRINT
=
Blueprint
(
"static_resource"
,
__name__
)
BLUEPRINT
=
Blueprint
(
"static_resource"
,
__name__
,
url_prefix
=
settings
.
URL_PATH_PREFIX
)
@
BLUEPRINT
.
route
(
"/"
,
methods
=
[
"GET"
])
def
index
():
"""Interface to return static index.html."""
return
send_from_directory
(
get_index_resource_dir
(),
"index.html"
)
def
get_index_resource_dir
():
"""Interface to return index.html resource directory."""
return
os
.
path
.
realpath
(
os
.
path
.
join
(
APP_PATH
,
current_app
.
static_folder
,
os
.
pardir
))
app_path
=
os
.
path
.
realpath
(
os
.
path
.
dirname
(
sys
.
argv
[
0
]))
index_resource_dir
=
os
.
path
.
realpath
(
os
.
path
.
join
(
app_path
,
current_app
.
static_folder
,
os
.
pardir
))
return
send_from_directory
(
index_resource_dir
,
"index.html"
)
def
init_module
(
app
):
...
...
mindinsight/backend/datavisual/task_manager_api.py
浏览文件 @
f2f80b17
...
...
@@ -34,7 +34,7 @@ from mindinsight.datavisual.processors.train_task_manager import TrainTaskManage
from
mindinsight.datavisual.data_transform.data_manager
import
DATA_MANAGER
BLUEPRINT
=
Blueprint
(
"task_manager"
,
__name__
,
url_prefix
=
settings
.
URL_PREFIX
)
BLUEPRINT
=
Blueprint
(
"task_manager"
,
__name__
,
url_prefix
=
settings
.
URL_P
ATH_PREFIX
+
settings
.
API_P
REFIX
)
@
BLUEPRINT
.
route
(
"/datavisual/single-job"
,
methods
=
[
"GET"
])
...
...
mindinsight/backend/datavisual/train_visual_api.py
浏览文件 @
f2f80b17
...
...
@@ -31,7 +31,7 @@ from mindinsight.datavisual.processors.graph_processor import GraphProcessor
from
mindinsight.datavisual.data_transform.data_manager
import
DATA_MANAGER
BLUEPRINT
=
Blueprint
(
"train_visual"
,
__name__
,
url_prefix
=
settings
.
URL_PREFIX
)
BLUEPRINT
=
Blueprint
(
"train_visual"
,
__name__
,
url_prefix
=
settings
.
URL_P
ATH_PREFIX
+
settings
.
API_P
REFIX
)
@
BLUEPRINT
.
route
(
"/datavisual/image/metadata"
,
methods
=
[
"GET"
])
...
...
mindinsight/backend/lineagemgr/lineage_api.py
浏览文件 @
f2f80b17
...
...
@@ -25,7 +25,7 @@ from mindinsight.lineagemgr.api.model import general_filter_summary_lineage, gen
from
mindinsight.utils.exceptions
import
MindInsightException
,
ParamValueError
from
mindinsight.lineagemgr.cache_item_updater
import
update_lineage_object
BLUEPRINT
=
Blueprint
(
"lineage"
,
__name__
,
url_prefix
=
settings
.
URL_P
REFIX
.
rstrip
(
"/"
)
)
BLUEPRINT
=
Blueprint
(
"lineage"
,
__name__
,
url_prefix
=
settings
.
URL_P
ATH_PREFIX
+
settings
.
API_PREFIX
)
@
BLUEPRINT
.
route
(
"/lineagemgr/lineages"
,
methods
=
[
"POST"
])
...
...
mindinsight/backend/profiler/profile_api.py
浏览文件 @
f2f80b17
...
...
@@ -41,7 +41,7 @@ from mindinsight.profiler.common.validator.validate_path import validate_and_nor
from
mindinsight.profiler.proposer.compose_proposer
import
ComposeProposal
from
mindinsight.utils.exceptions
import
ParamValueError
BLUEPRINT
=
Blueprint
(
"profile"
,
__name__
,
url_prefix
=
settings
.
URL_PREFIX
)
BLUEPRINT
=
Blueprint
(
"profile"
,
__name__
,
url_prefix
=
settings
.
URL_P
ATH_PREFIX
+
settings
.
API_P
REFIX
)
@
BLUEPRINT
.
route
(
"/profile/ops/search"
,
methods
=
[
"POST"
])
...
...
mindinsight/backend/run.py
浏览文件 @
f2f80b17
...
...
@@ -252,7 +252,7 @@ def start():
else
:
state_result
=
_check_server_start_stat
(
errorlog_abspath
,
log_size
)
# print gunicorn start state to stdout
console
.
info
(
'Web address: http://%s:%s
'
,
settings
.
HOST
,
settings
.
PORT
)
console
.
info
(
'Web address: http://%s:%s
%s'
,
settings
.
HOST
,
settings
.
PORT
,
settings
.
URL_PATH_PREFIX
)
for
line
in
state_result
[
"prompt_message"
]:
console
.
info
(
line
)
...
...
mindinsight/conf/constants.py
浏览文件 @
f2f80b17
...
...
@@ -41,8 +41,8 @@ ENABLE_CORS = False
SUPPORT_REQUEST_METHODS
=
{
'POST'
,
'GET'
,
'PUT'
,
'DELETE'
}
#
url
prefix should not end with slash, correct format is /v1/url
URL
_PREFIX
=
'/v1/mindinsight'
#
api
prefix should not end with slash, correct format is /v1/url
API
_PREFIX
=
'/v1/mindinsight'
####################################
# Datavisual default settings.
...
...
mindinsight/conf/defaults.py
浏览文件 @
f2f80b17
...
...
@@ -24,6 +24,7 @@ WORKSPACE = os.path.join(os.environ['HOME'], 'mindinsight')
# Web default settings.
####################################
PORT
=
8080
URL_PATH_PREFIX
=
''
####################################
# Datavisual default settings.
...
...
mindinsight/scripts/start.py
浏览文件 @
f2f80b17
...
...
@@ -16,6 +16,7 @@
import
os
import
sys
import
re
import
argparse
from
importlib
import
import_module
...
...
@@ -118,6 +119,28 @@ class PortAction(argparse.Action):
setattr
(
namespace
,
self
.
dest
,
port
)
class
UrlPathPrefixAction
(
argparse
.
Action
):
"""Url Path prefix action class definition."""
REGEX
=
r
'^(\/[a-zA-Z0-9-\-\.]+)+$'
def
__call__
(
self
,
parser
,
namespace
,
values
,
option_string
=
None
):
"""
Inherited __call__ method from argparse.Action.
Args:
parser (ArgumentParser): Passed-in argument parser.
namespace (Namespace): Namespace object to hold arguments.
values (object): Argument values with type depending on argument definition.
option_string (str): Optional string for specific argument name. Default: None.
"""
prefix
=
values
if
not
re
.
match
(
self
.
REGEX
,
prefix
):
parser
.
error
(
f
'
{
option_string
}
value is invalid url path prefix'
)
setattr
(
namespace
,
self
.
dest
,
prefix
)
class
Command
(
BaseCommand
):
"""
Start mindinsight service.
...
...
@@ -158,6 +181,14 @@ class Command(BaseCommand):
Custom port ranging from %s to %s. Default value is %s.
"""
%
(
PortAction
.
MIN_PORT
,
PortAction
.
MAX_PORT
,
settings
.
PORT
))
parser
.
add_argument
(
'--url-path-prefix'
,
type
=
str
,
action
=
UrlPathPrefixAction
,
help
=
"""
Custom path prefix for web page address. Default value is ''.
"""
)
for
hook
in
HookUtils
.
instance
().
hooks
():
hook
.
register_startup_arguments
(
parser
)
...
...
mindinsight/ui/src/services/fetcher.js
浏览文件 @
f2f80b17
...
...
@@ -20,7 +20,7 @@ import axios from 'axios';
import
Vue
from
'
vue
'
;
export
{
default
}
from
'
axios
'
;
export
const
basePath
=
location
.
origin
;
export
const
basePath
=
location
.
origin
+
location
.
pathname
;
axios
.
defaults
.
timeout
=
30000
;
axios
.
defaults
.
baseURL
=
basePath
;
...
...
tests/ut/backend/datavisual/conftest.py
浏览文件 @
f2f80b17
...
...
@@ -21,7 +21,7 @@ import pytest
from
flask
import
Response
from
mindinsight.backend
import
datavisual
from
mindinsight.datavisual
import
uti
ls
from
mindinsight.datavisual
.utils
import
too
ls
@
pytest
.
fixture
...
...
@@ -31,12 +31,10 @@ def client():
mock_data_manager
.
start_load_data
=
Mock
()
datavisual
.
DATA_MANAGER
=
mock_data_manager
packages
=
[
"mindinsight.backend.raw_dataset"
,
"mindinsight.backend.train_dataset"
,
"mindinsight.backend.data_visual"
]
packages
=
[
"mindinsight.backend.data_visual"
]
mock_obj
=
Mock
(
return_value
=
packages
)
uti
ls
.
find_app_package
=
mock_obj
too
ls
.
find_app_package
=
mock_obj
from
mindinsight.backend.application
import
APP
APP
.
response_class
=
Response
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录