@@ -330,15 +330,55 @@ patternProperties:
330330 required : [ container, dockerfile, path ]
331331 properties :
332332 path :
333- summary : Path to the directory containing the devcontainer configuration.
334- type : string
335- pattern : ^\.devcontainer(?:/[a-zA-Z0-9_-]+)?$
336- default : |
337- #{{
338- container_id = get(".__key__").removeprefix("devcontainer_")
339- suffix = "" if container_id == "main" else f"/{get("devcontainer.containers.dir_prefix")}{container_id}"
340- return f".devcontainer{suffix}"
341- }}#
333+ summary : Paths to the devcontainer directories and files.
334+ type : object
335+ default : { }
336+ additionalProperties : false
337+ properties :
338+ root :
339+ summary : Path to the directory containing the devcontainer configuration.
340+ type : string
341+ pattern : ^\.devcontainer(?:/[a-zA-Z0-9_-]+)?$
342+ default : |
343+ #{{
344+ container_id = get("..__key__").removeprefix("devcontainer_")
345+ suffix = "" if container_id == "main" else f"/{get("devcontainer.containers.dir_prefix")}{container_id}"
346+ return f".devcontainer{suffix}"
347+ }}#
348+ tasks_local :
349+ summary : Path to the local tasks script file.
350+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
351+ default : ${{ .root }}$/${{ devcontainer.container.rel_path.tasks_local }}$
352+ tasks_global :
353+ summary : Path to the global tasks script file.
354+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
355+ default : ${{ .root }}$/${{ devcontainer.container.rel_path.tasks_global }}$
356+ environment :
357+ summary : Path to the environment directory.
358+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
359+ default : ${{ .root }}$/${{ devcontainer.container.rel_path.environment }}$
360+ conda_rel :
361+ summary : Path to the conda directory relative to the environment directory.
362+ type : string
363+ default : ${{ devcontainer.container.rel_path.conda }}$
364+ conda :
365+ summary : Path to the conda environment directory.
366+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
367+ readOnly : true
368+ default : ${{ .environment }}$/${{ .conda_rel }}$
369+ apt_rel :
370+ summary : Path to the apt file relative to the environment directory.
371+ type : string
372+ default : ${{ devcontainer.container.rel_path.apt }}$
373+ apt :
374+ summary : Path to the apt file.
375+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
376+ readOnly : true
377+ default : ${{ .environment }}$/${{ .apt_rel }}$
378+ dockerfile :
379+ summary : Path to the Dockerfile.
380+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
381+ default : ${{ .root }}$/Dockerfile
342382 service :
343383 type : object
344384 dockerfile :
@@ -357,10 +397,8 @@ patternProperties:
357397 type : object
358398 additionalProperties :
359399 $ref : https://controlman.repodynamics.com/schema/bash-task
360- task_in_env_prefix :
361- type : string
362- default : >-
363- conda run --cwd '${{ .container.workspaceFolder }}$' -n {env_name} --live-stream -vv
400+ task_setting :
401+ $ref : https://controlman.repodynamics.com/schema/bash-task-setting
364402 environment :
365403 type : object
366404 additionalProperties :
@@ -393,15 +431,8 @@ patternProperties:
393431 $ref : https://controlman.repodynamics.com/schema/bash-task
394432 path :
395433 summary : Path to the environment file.
396- type : string
397- pattern : ^\.devcontainer/
398- default : |
399- #{{
400- devcontainer_dir = get("...path")
401- env_dir = get("devcontainer.containers.rel_path.environment")
402- conda_dir = get("devcontainer.containers.rel_path.conda")
403- return f"{devcontainer_dir}/{env_dir}/{conda_dir}/{get(".__key__")}.yaml"
404- }}#
434+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
435+ default : ${{ ...path.conda }}$/${{ .__key__ }}$.yaml
405436 file :
406437 summary : Dynamic files related to the container.
407438 type : object
@@ -2950,10 +2981,14 @@ properties:
29502981 type : object
29512982 default : { }
29522983 properties :
2953- tasks :
2954- summary : Path to the output tasks file.
2984+ tasks_local :
2985+ summary : Path to the output local tasks file.
29552986 $ref : https://controlman.repodynamics.com/schema/dynamic-file-path
2956- default : tasks.sh
2987+ default : tasks_local.sh
2988+ tasks_global :
2989+ summary : Path to the output global tasks file.
2990+ $ref : https://controlman.repodynamics.com/schema/dynamic-file-path
2991+ default : tasks_global.sh
29572992 environment :
29582993 summary : Path to the environment directory.
29592994 $ref : https://controlman.repodynamics.com/schema/dynamic-file-path
@@ -3638,6 +3673,15 @@ properties:
36383673 additionalProperties : false
36393674 default : { }
36403675 properties :
3676+ build :
3677+ type : object
3678+ default : { }
3679+ additionalProperties : false
3680+ properties :
3681+ path :
3682+ summary : Path to the local build directory.
3683+ $ref : https://jsonschemata.repodynamics.com/path/posix/absolute-from-cwd
3684+ default : .local/build
36413685 cache :
36423686 type : object
36433687 default : { }
@@ -3755,6 +3799,8 @@ properties:
37553799 yaml :
37563800 default : { }
37573801 $ref : https://controlman.repodynamics.com/schema/dynamic-file-setting-yaml
3802+ task_setting :
3803+ $ref : https://controlman.repodynamics.com/schema/bash-task-setting
37583804 changelogs :
37593805 $ref : https://controlman.repodynamics.com/schema/changelog
37603806 contributor :
0 commit comments