update global config with manifest
This commit is contained in:
parent
6eae66728b
commit
202cdda358
@ -107,7 +107,7 @@ class Metadata(Base):
|
|||||||
|
|
||||||
class Global(Base):
|
class Global(Base):
|
||||||
plan = param.String()
|
plan = param.String()
|
||||||
case = param.String()
|
case = param.Selector()
|
||||||
builder = param.String()
|
builder = param.String()
|
||||||
runner = param.String()
|
runner = param.String()
|
||||||
|
|
||||||
@ -117,6 +117,15 @@ class Global(Base):
|
|||||||
build_config = param.Dict(default={}, allow_None=True)
|
build_config = param.Dict(default={}, allow_None=True)
|
||||||
run_config = param.Dict(default={}, allow_None=True)
|
run_config = param.Dict(default={}, allow_None=True)
|
||||||
|
|
||||||
|
def set_manifest(self, manifest):
|
||||||
|
if manifest is None:
|
||||||
|
return
|
||||||
|
print('manifest:', manifest)
|
||||||
|
self.plan = manifest['name']
|
||||||
|
cases = [tc['name'] for tc in manifest['testcases']]
|
||||||
|
self.param['case'].objects = cases
|
||||||
|
print('global config updated manifest. cases:', self.param['case'].objects)
|
||||||
|
|
||||||
|
|
||||||
class Resources(Base):
|
class Resources(Base):
|
||||||
memory = param.String(allow_None=True)
|
memory = param.String(allow_None=True)
|
||||||
@ -173,8 +182,8 @@ class Group(Base):
|
|||||||
|
|
||||||
|
|
||||||
class Composition(param.Parameterized):
|
class Composition(param.Parameterized):
|
||||||
metadata = param.Parameter(Metadata, precedence=-1)
|
metadata = param.Parameter(Metadata(), precedence=-1)
|
||||||
global_config = param.Parameter(Global, precedence=-1)
|
global_config = param.Parameter(Global(), precedence=-1)
|
||||||
groups = param.ObjectSelector()
|
groups = param.ObjectSelector()
|
||||||
|
|
||||||
groups_ui = None
|
groups_ui = None
|
||||||
@ -239,6 +248,9 @@ class Composition(param.Parameterized):
|
|||||||
if manifest is None:
|
if manifest is None:
|
||||||
return
|
return
|
||||||
|
|
||||||
|
g = self.global_config
|
||||||
|
print('global conifg: ', g)
|
||||||
|
g.set_manifest(manifest)
|
||||||
for tc in manifest.get('testcases', []):
|
for tc in manifest.get('testcases', []):
|
||||||
self.testcase_param_classes[tc['name']] = make_group_params_class(tc)
|
self.testcase_param_classes[tc['name']] = make_group_params_class(tc)
|
||||||
|
|
||||||
|
File diff suppressed because one or more lines are too long
@ -80,8 +80,7 @@ cleanup () {
|
|||||||
trap "{ cleanup; }" EXIT
|
trap "{ cleanup; }" EXIT
|
||||||
|
|
||||||
# make sure we have the commands we need
|
# make sure we have the commands we need
|
||||||
require_cmds jq dockerimport param
|
require_cmds jq docker
|
||||||
import panel as pn
|
|
||||||
|
|
||||||
# make temp dir for manifests
|
# make temp dir for manifests
|
||||||
temp_base="/tmp"
|
temp_base="/tmp"
|
||||||
|
Loading…
Reference in New Issue
Block a user