Skip to content

Commit 9bec579

Browse files
committed
Add adapted resource schema files
1 parent 9d9863c commit 9bec579

3 files changed

Lines changed: 706 additions & 0 deletions

File tree

schemas/schemas.config.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,12 @@ bundle_schemas:
1616
OutputDirectory: bundled/resource
1717
OutputFormat: ['Json', 'JsonVSCode']
1818

19+
# Adapted resource manifest bundle
20+
- ConfigFilePath: adaptedresource/manifest.json
21+
Name: manifest
22+
OutputDirectory: bundled/adaptedresource
23+
OutputFormat: ['Json', 'JsonVSCode']
24+
1925
# Configuration document bundle
2026
- ConfigFilePath: config/document.json
2127
Name: document
Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
# yaml-language-server: $schema=https://json-schema.org/draft/2020-12/schema
2+
$schema: https://json-schema.org/draft/2020-12/schema
3+
$id: <HOST>/<PREFIX>/<VERSION>/adaptedresource/manifest.schema.yaml
4+
5+
title: Instance Schema
6+
description: >-
7+
Defines the JSON Schema for validating a JSON blob representing an instance of the adapted DSC
8+
resource.
9+
10+
type: object
11+
required:
12+
- embedded
13+
properties:
14+
embedded:
15+
title: Embedded Instance Schema
16+
description: >-
17+
Defines the JSON Schema DSC must use to validate a JSON blob representing an instance of the
18+
adapted DSC resource.
19+
markdownDescription: | # VS Code only
20+
***
21+
[_Online Documentation_][01]
22+
***
23+
24+
Defines the JSON Schema DSC must use to validate a JSON blob representing an instance of the
25+
adapted DSC resource.
26+
27+
[01]: <DOCS_BASE_URL>/reference/schemas/adaptedresource/manifest/schema/embedded?<DOCS_VERSION_PIN>
28+
type: object
29+
required:
30+
- $schema
31+
- type
32+
- properties
33+
properties:
34+
type:
35+
title: Instance Type
36+
description: >-
37+
Defines the JSON type for an instance of the adapted DSC resource. DSC resource instances
38+
always have the `object` type.
39+
const: object
40+
markdownDescription: | # VS Code only
41+
Defines the JSON type for an instance of the adapted DSC resource. DSC resource instances
42+
always have the `object` type.
43+
$schema:
44+
title: Instance Schema Dialect
45+
description: >-
46+
Defines which dialect of JSON Schema the embedded schema uses.
47+
type: string
48+
enum:
49+
- https://json-schema.org/draft/2020-12/schema
50+
- https://json-schema.org/draft/2019-09/schema
51+
- http://json-schema.org/draft-07/schema#
52+
$id:
53+
title: Instance Schema ID
54+
description: >-
55+
Defines the unique ID for the embedded schema. If defined, DSC can cache the schema for
56+
faster validation.
57+
type: string
58+
format: uri
59+
title:
60+
title: Instance Schema Title
61+
description: >-
62+
Defines the title for the embedded schema.
63+
type: string
64+
description:
65+
title: Instance Schema Description
66+
description: >-
67+
Defines the description for the embedded schema.
68+
type: string
69+
required:
70+
title: Required Properties
71+
description: >-
72+
Defines the list of required properties for an instance of the adapted DSC resource.
73+
type: array
74+
items:
75+
type: string
76+
additionalProperties:
77+
title: Additional Properties
78+
description: >-
79+
Defines whether the embedded schema allows additional properties.
80+
type: boolean
81+
properties:
82+
title: Instance Properties
83+
description: >-
84+
Defines the properties of an instance of the adapted DSC resource.
85+
type: object
86+
additionalProperties:
87+
type: object
88+
89+
# VS Code only
90+
markdownDescription: |
91+
***
92+
[_Online Documentation_][01]
93+
***
94+
95+
Defines the JSON Schema for validating a JSON blob representing an instance of the adapted
96+
DSC resource. For adapted resources, only embedded schemas are supported. The adapter is
97+
responsible for providing the schema during resource discovery.
98+
99+
[01]: <DOCS_BASE_URL>/reference/schemas/adaptedresource/manifest/schema?<DOCS_VERSION_PIN>

0 commit comments

Comments
 (0)