[fix] schema

This commit is contained in:
fenris 2026-10-10 18:04:41 +02:00
parent 66ddcbb717
commit bc39495921
2 changed files with 41 additions and 8 deletions

View file

@ -15,7 +15,7 @@
"type": "string",
"enum": ["node", "web"]
},
"dependencies": {
"libs": {
"nullable": true,
"type": "object",
"properties": {
@ -80,7 +80,7 @@
"type": "string",
"default": "{{project}}-{{app}"
},
"shebang": {
"head": {
"nullable": true,
"type": "string",
"default": null

View file

@ -57,7 +57,10 @@ namespace _ivaldi
"misc"
),
},
"libs": (definition_raw["libs"] ?? {}),
"libs": ((libs_raw) => ({
"plankton": (libs_raw["plankton"] ?? null),
"node": (libs_raw["node"] ?? null),
})) (definition_raw["libs"] ?? {}),
"core": definition_raw["core"],
"apps": (
definition_raw["apps"].map(
@ -622,6 +625,29 @@ namespace _ivaldi
}
}
/**
*/
/*
async function action_deploy(
definition : _ivaldi.type_definition,
build_directory_pattern : string,
deploy_system : string,
deploy_directory : string
) : Promise<void>
{
const command : string = lib_plankton.string.coin(
"rsync --recursive --update{{excludes}} {{from}}/ {{to_system}}:{{to_directory}}",
{
"from": get_build_directory(definition, build_directory_pattern),
"to_system": deploy_system,
"to_directory": deploy_directory,
}
);
await _ivaldi.execute(command);
}
*/
/**
*/
@ -659,7 +685,7 @@ namespace _ivaldi
"name": "assets",
}),
"targets": lib_plankton.args.class_argument.volatile({
"indicators_long": ["targets"],
"indicators_long": ["target"],
"indicators_short": ["t"],
"type": lib_plankton.args.enum_type.string,
"mode": lib_plankton.args.enum_mode.accumulate,
@ -668,7 +694,7 @@ namespace _ivaldi
"name": "targets",
}),
"temp_directory_pattern": lib_plankton.args.class_argument.volatile({
"indicators_long": ["temp-directory-pattern"],
"indicators_long": ["temp-directory"],
"indicators_short": ["T"],
"type": lib_plankton.args.enum_type.string,
"mode": lib_plankton.args.enum_mode.replace,
@ -677,7 +703,7 @@ namespace _ivaldi
"name": "temp-directory-pattern",
}),
"build_directory_pattern": lib_plankton.args.class_argument.volatile({
"indicators_long": ["build-directory-pattern"],
"indicators_long": ["build-directory"],
"indicators_short": ["B"],
"type": lib_plankton.args.enum_type.string,
"mode": lib_plankton.args.enum_mode.replace,
@ -686,7 +712,7 @@ namespace _ivaldi
"name": "build-directory-pattern",
}),
"makefile_path_pattern": lib_plankton.args.class_argument.volatile({
"indicators_long": ["makefile-path-pattern"],
"indicators_long": ["makefile-path"],
"indicators_short": ["M"],
"type": lib_plankton.args.enum_type.string,
"mode": lib_plankton.args.enum_mode.replace,
@ -815,11 +841,18 @@ namespace _ivaldi
);
break;
}
/*
case "deploy":
{
return Promise.reject<void>(new Error("not yet implemented"));
await action_deploy(
definition,
args.build_directory_pattern,
args.deploy_system,
args.deploy_directory
);
break;
}
*/
}
}
}