Skip to content

Commit 0041b15

Browse files
committed
vscode subproperty (devcontainers/spec#1)
1 parent 5292fd7 commit 0041b15

File tree

2 files changed

+185
-0
lines changed

2 files changed

+185
-0
lines changed

extensions/configuration-editing/schemas/devContainer.schema.generated.json

+155
Original file line numberDiff line numberDiff line change
@@ -403,6 +403,37 @@
403403
}
404404
},
405405
"additionalProperties": false
406+
},
407+
"vscode": {
408+
"type": "object",
409+
"properties": {
410+
"extensions": {
411+
"type": "array",
412+
"description": "An array of extensions that should be installed into the container.",
413+
"items": {
414+
"type": "string",
415+
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)(@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)?$",
416+
"errorMessage": "Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."
417+
}
418+
},
419+
"settings": {
420+
"$ref": "vscode://schemas/settings/machine",
421+
"description": "Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."
422+
},
423+
"devPort": {
424+
"type": "integer",
425+
"description": "The port VS Code can use to connect to its backend."
426+
}
427+
},
428+
"additionalProperties": false
429+
},
430+
"customizations": {
431+
"type": "object",
432+
"additionalProperties": {
433+
"type": "object",
434+
"additionalProperties": true
435+
},
436+
"description": "Tool-specific configuration. Each tool should use a JSON object subproperty with a unique name to group its customizations."
406437
}
407438
},
408439
"required": [
@@ -806,6 +837,37 @@
806837
}
807838
},
808839
"additionalProperties": false
840+
},
841+
"vscode": {
842+
"type": "object",
843+
"properties": {
844+
"extensions": {
845+
"type": "array",
846+
"description": "An array of extensions that should be installed into the container.",
847+
"items": {
848+
"type": "string",
849+
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)(@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)?$",
850+
"errorMessage": "Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."
851+
}
852+
},
853+
"settings": {
854+
"$ref": "vscode://schemas/settings/machine",
855+
"description": "Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."
856+
},
857+
"devPort": {
858+
"type": "integer",
859+
"description": "The port VS Code can use to connect to its backend."
860+
}
861+
},
862+
"additionalProperties": false
863+
},
864+
"customizations": {
865+
"type": "object",
866+
"additionalProperties": {
867+
"type": "object",
868+
"additionalProperties": true
869+
},
870+
"description": "Tool-specific configuration. Each tool should use a JSON object subproperty with a unique name to group its customizations."
809871
}
810872
},
811873
"required": [
@@ -1175,6 +1237,37 @@
11751237
}
11761238
},
11771239
"additionalProperties": false
1240+
},
1241+
"vscode": {
1242+
"type": "object",
1243+
"properties": {
1244+
"extensions": {
1245+
"type": "array",
1246+
"description": "An array of extensions that should be installed into the container.",
1247+
"items": {
1248+
"type": "string",
1249+
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)(@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)?$",
1250+
"errorMessage": "Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."
1251+
}
1252+
},
1253+
"settings": {
1254+
"$ref": "vscode://schemas/settings/machine",
1255+
"description": "Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."
1256+
},
1257+
"devPort": {
1258+
"type": "integer",
1259+
"description": "The port VS Code can use to connect to its backend."
1260+
}
1261+
},
1262+
"additionalProperties": false
1263+
},
1264+
"customizations": {
1265+
"type": "object",
1266+
"additionalProperties": {
1267+
"type": "object",
1268+
"additionalProperties": true
1269+
},
1270+
"description": "Tool-specific configuration. Each tool should use a JSON object subproperty with a unique name to group its customizations."
11781271
}
11791272
},
11801273
"required": [
@@ -1518,6 +1611,37 @@
15181611
}
15191612
},
15201613
"additionalProperties": false
1614+
},
1615+
"vscode": {
1616+
"type": "object",
1617+
"properties": {
1618+
"extensions": {
1619+
"type": "array",
1620+
"description": "An array of extensions that should be installed into the container.",
1621+
"items": {
1622+
"type": "string",
1623+
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)(@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)?$",
1624+
"errorMessage": "Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."
1625+
}
1626+
},
1627+
"settings": {
1628+
"$ref": "vscode://schemas/settings/machine",
1629+
"description": "Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."
1630+
},
1631+
"devPort": {
1632+
"type": "integer",
1633+
"description": "The port VS Code can use to connect to its backend."
1634+
}
1635+
},
1636+
"additionalProperties": false
1637+
},
1638+
"customizations": {
1639+
"type": "object",
1640+
"additionalProperties": {
1641+
"type": "object",
1642+
"additionalProperties": true
1643+
},
1644+
"description": "Tool-specific configuration. Each tool should use a JSON object subproperty with a unique name to group its customizations."
15211645
}
15221646
},
15231647
"required": [
@@ -1826,6 +1950,37 @@
18261950
}
18271951
},
18281952
"additionalProperties": false
1953+
},
1954+
"vscode": {
1955+
"type": "object",
1956+
"properties": {
1957+
"extensions": {
1958+
"type": "array",
1959+
"description": "An array of extensions that should be installed into the container.",
1960+
"items": {
1961+
"type": "string",
1962+
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)(@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)?$",
1963+
"errorMessage": "Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."
1964+
}
1965+
},
1966+
"settings": {
1967+
"$ref": "vscode://schemas/settings/machine",
1968+
"description": "Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."
1969+
},
1970+
"devPort": {
1971+
"type": "integer",
1972+
"description": "The port VS Code can use to connect to its backend."
1973+
}
1974+
},
1975+
"additionalProperties": false
1976+
},
1977+
"customizations": {
1978+
"type": "object",
1979+
"additionalProperties": {
1980+
"type": "object",
1981+
"additionalProperties": true
1982+
},
1983+
"description": "Tool-specific configuration. Each tool should use a JSON object subproperty with a unique name to group its customizations."
18291984
}
18301985
},
18311986
"additionalProperties": false

extensions/configuration-editing/schemas/devContainer.schema.src.json

+30
Original file line numberDiff line numberDiff line change
@@ -306,6 +306,36 @@
306306
}
307307
}
308308
]
309+
},
310+
"vscode": {
311+
"type": "object",
312+
"properties": {
313+
"extensions": {
314+
"type": "array",
315+
"description": "An array of extensions that should be installed into the container.",
316+
"items": {
317+
"type": "string",
318+
"pattern": "^([a-z0-9A-Z][a-z0-9A-Z-]*)\\.([a-z0-9A-Z][a-z0-9A-Z-]*)(@(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+([0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*))?)?$",
319+
"errorMessage": "Expected format: '${publisher}.${name}' or '${publisher}.${name}@${version}'. Example: 'ms-dotnettools.csharp'."
320+
}
321+
},
322+
"settings": {
323+
"$ref": "vscode://schemas/settings/machine",
324+
"description": "Machine specific settings that should be copied into the container. These are only copied when connecting to the container for the first time, rebuilding the container then triggers it again."
325+
},
326+
"devPort": {
327+
"type": "integer",
328+
"description": "The port VS Code can use to connect to its backend."
329+
}
330+
}
331+
},
332+
"customizations": {
333+
"type": "object",
334+
"additionalProperties": {
335+
"type": "object",
336+
"additionalProperties": true
337+
},
338+
"description": "Tool-specific configuration. Each tool should use a JSON object subproperty with a unique name to group its customizations."
309339
}
310340
}
311341
},

0 commit comments

Comments
 (0)