runc/schema
W. Trevor King 092743727e schema: Drop pointers and nulls
Maintainers feel (and I agree) that there's no point in explicitly
allowing a null value when callers can simply leave the property unset
[1].  This commit removes all references to "pointer" and "null" from
the JSON Schema to support that decision.  While optional properties
may sometimes be represented as pointer types in Go [2], optional
properties should be represented in JSON Schema by not including the
properties in the 'required' array.

[1]: https://github.com/opencontainers/runtime-spec/pull/555#issuecomment-272020515
[2]: style.md "Optional settings should not have pointer Go types"

Signed-off-by: W. Trevor King <wking@tremily.us>
2017-01-23 11:23:44 -08:00
..
Makefile Modify README to keep consistency with Makefile 2016-04-14 12:33:17 +08:00
README.md Merge pull request #490 from wking/json-schema-validate-http-schema 2017-01-18 14:13:33 -08:00
config-linux.json schema: Drop pointers and nulls 2017-01-23 11:23:44 -08:00
config-schema.json Merge pull request #646 from q384566678/json-test 2017-01-11 14:24:24 -08:00
config-solaris.json schema: Move schema.json -> config-schema.json and similar 2016-06-08 20:43:06 -07:00
config-windows.json schema: Drop pointers and nulls 2017-01-23 11:23:44 -08:00
defs-linux.json schema: Drop pointers and nulls 2017-01-23 11:23:44 -08:00
defs-windows.json schema: Drop pointers and nulls 2017-01-23 11:23:44 -08:00
defs.json schema: Drop pointers and nulls 2017-01-23 11:23:44 -08:00
state-schema.json schema/state-schema.json: Add a JSON Schema for the state JSON 2016-06-08 20:43:06 -07:00
validate.go schema/validate: Allow schema identifiers to contain a URL scheme 2016-06-05 23:53:28 -07:00

README.md

JSON schema

Overview

This directory contains the JSON Schema for validating JSON covered by this specification.

The layout of the files is as follows:

Utility

There is also included a simple utility for facilitating validation. To build it:

export GOPATH=`mktemp -d`
go get -d ./...
go build ./validate.go
rm -rf $GOPATH

Or you can just use make command to create the utility:

make validate

Then use it like:

./validate config-schema.json <yourpath>/config.json

Or like:

./validate https://raw.githubusercontent.com/opencontainers/runtime-spec/v1.0.0-rc1/schema/schema.json <yourpath>/config.json