- Notifications
You must be signed in to change notification settings - Fork45
(SCHEMAS) Fix/update for v3.0.0 release#734
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to ourterms of service andprivacy statement. We’ll occasionally send you account related emails.
Already on GitHub?Sign in to your account
(SCHEMAS) Fix/update for v3.0.0 release#734
Uh oh!
There was an error while loading.Please reload this page.
Conversation
36e770b
to066f653
Compare@SteveL-MSFT - keeping this in draft, but it's ready for review - need to regenerate the schemas and add docs, but only want to do that after we're sure the actual schema implementations is accurate. |
78ca267
toef4c50f
Compareef4c50f
to3845d4d
CompareThere was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others.Learn more.
Nothing stands out to me as an issue
This change updates casing and terms to match the glossary. Thesechanges are colocated to make reviewing actual schema changessimpler.
This change sets the `minItems` keyword to `0` for the `resources` propertyof a configuration document. Prior to this change, the schema specified avalue of `1`, which was inaccurate.This changefixesPowerShell#717
Prior to this change, the enums in the schema source for the `kind` propertyof a DSC resource wasn't updated to reflect the change for camelCasing andnaming.This change updates the enumeration values and the associated documentationkeywords andfixesPowerShell#708.
This change breaks out the capabilities schema from the `dsc resource list`output schema into a separate definition file. This enables us to referencethe schema without using a JSON Pointer and provides us with a page fordocumenting the capabilities directly.This is a required precursor for a future change that defines stdoutschemas for resource operations.
Prior to this change, the `returnKind` shared definition set a defaultvalue. This was inaccurate, because `set.return` has different behaviorwhen `return` isn't defined - DSC invokes the **Get** operation toconstruct the result after the **Set** operation for the resourceconcludes.This change removes the default from the shared definition, adds itto the `test.return` property, and clarifies the behavior for the`set.return` property. Finally, this change also makes `whatIf.return`mandatory, as the synthetic after-state doesn't make sense for thisoperation, even if DSC will technically accept it.
Prior to this change, the instructions and information about howresources should return data to DSC for any given operation wassomewhat vague and not always helpful.This change defines a new set of schemas for the various operations,so resource authors can review their implementations and validate themagainst these schemas.
This change updates the documentation keywords for the various resourcecommands to point to the newly defined stdout JSON Schemas. This changewas kept separate from the implementation of those schemas to simplifyreview.
Prior to this change, the schemas erroneously included URIs for thepreview schemas and didn't include URIs for the various version foldersor `aka.ms` short link options.This change corrects the enumeration values and accompanying documentationkeywords.
Prior to this change, the output metadata erroneously required the`context` property, which is sent _to_ resources but not returnedfor configuration operations themselves.
Prior to this change, the bundling function for schemas wouldsometimes include a self-reference in the definitions, whichis invalid per the JSON Schema specification.This change ensures self-references are skipped instead ofinserted.
ce10c7d
to272753d
Compare8fd7ef4
Uh oh!
There was an error while loading.Please reload this page.
Uh oh!
There was an error while loading.Please reload this page.
PR Summary
This change set includes updates to the schema source files for various issues with the canonically published schemas, including:
minItems
keyword forresources
property of coniguration documentkind
returnKind
forset
, requiring updating shared definition,set.return
,whatIf.return
,test.return
, and related documentation keywords.$schema
property in both configuration document and resource manifest schemasThis change also adds JSON schemas for the expected
stdout
JSON for various resource operations. This should help resource authors understand and validate their resource implementations.TODO:
Update and extend reference documentation(deferred to separate PR)PR Context
Needed to address issues with the published schemas for the
v3.0.0
release. These changes and the technical review of them are required for completing the regeneration and documentation efforts.