Skip to content

Commit 365bbce

Browse files
committed
(poe) uv executor
1 parent b71c6a5 commit 365bbce

File tree

1 file changed

+110
-7
lines changed

1 file changed

+110
-7
lines changed

src/schemas/json/partial-poe.json

Lines changed: 110 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -251,21 +251,124 @@
251251
}
252252
},
253253
"executor_option": {
254-
"additionalProperties": false,
255254
"description": "Configure the executor type for running tasks. Can be 'auto', 'poetry', 'virtualenv', or 'simple', with 'auto' being the default.",
256-
"properties": {
257-
"location": {
258-
"description": "Specifies the location of the virtualenv relative to the parent directory. Relevant when 'type' is set to 'virtualenv'.",
259-
"type": "string"
255+
"oneOf": [
256+
{
257+
"properties": {
258+
"type": {
259+
"$ref": "#/definitions/executor_option/definitions/type"
260+
}
261+
},
262+
"oneOf": [
263+
{
264+
"properties": {
265+
"extra": {
266+
"description": "Include optional dependencies from the specified extra name.",
267+
"oneOf": [
268+
{ "type": "string" },
269+
{
270+
"items": {
271+
"type": "string"
272+
},
273+
"type": "array"
274+
}
275+
]
276+
},
277+
"group": {
278+
"description": "Include dependencies from the specified dependency group.",
279+
"oneOf": [
280+
{ "type": "string" },
281+
{
282+
"items": {
283+
"type": "string"
284+
},
285+
"type": "array"
286+
}
287+
]
288+
},
289+
"no-group": {
290+
"description": "Disable the specified dependency group.",
291+
"oneOf": [
292+
{ "type": "string" },
293+
{
294+
"items": {
295+
"type": "string"
296+
},
297+
"type": "array"
298+
}
299+
]
300+
},
301+
"with": {
302+
"description": "Run with the given packages installed.",
303+
"oneOf": [
304+
{ "type": "string" },
305+
{
306+
"items": {
307+
"type": "string"
308+
},
309+
"type": "array"
310+
}
311+
]
312+
},
313+
"isolated": {
314+
"description": "Run the command in an isolated virtual environment.",
315+
"type": "boolean"
316+
},
317+
"no-sync": {
318+
"description": "Avoid syncing the virtual environment.",
319+
"type": "boolean"
320+
},
321+
"locked": {
322+
"description": "Run without updating the uv.lock file.",
323+
"type": "boolean"
324+
},
325+
"frozen": {
326+
"description": "Run without updating the uv.lock file.",
327+
"type": "boolean"
328+
},
329+
"no-project": {
330+
"description": "Avoid discovering the project or workspace.",
331+
"type": "boolean"
332+
},
333+
"python": {
334+
"description": "The Python interpreter to use for the run environment.",
335+
"type": "string"
336+
},
337+
"type": {
338+
"const": "uv",
339+
"type": "string"
340+
}
341+
}
342+
},
343+
{
344+
"properties": {
345+
"location": {
346+
"description": "Specifies the location of the virtualenv relative to the parent directory. Relevant when 'type' is set to 'virtualenv'.",
347+
"type": "string"
348+
},
349+
"type": {
350+
"const": "virtualenv",
351+
"type": "string"
352+
}
353+
}
354+
},
355+
{}
356+
],
357+
"required": ["type"],
358+
"type": "object"
260359
},
360+
{
361+
"$ref": "#/definitions/executor_option/definitions/type"
362+
}
363+
],
364+
"definitions": {
261365
"type": {
262366
"default": "auto",
263367
"description": "Specifies the executor type. 'auto' uses the most appropriate executor, 'poetry' uses the poetry environment, 'uv' uses `uv run` to run tasks, 'virtualenv' specifies a virtual environment, and 'simple' runs tasks without any specific environment setup.",
264368
"enum": ["auto", "poetry", "uv", "virtualenv", "simple"],
265369
"type": "string"
266370
}
267-
},
268-
"type": "object"
371+
}
269372
},
270373
"cmd_task": {
271374
"allOf": [

0 commit comments

Comments
 (0)