summaryrefslogtreecommitdiff
path: root/README.mdwn
blob: 66702d5ccc7ad85905b8b7b8860a7724fe6b42e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Baserock definitions format specification
=========================================

This repo defines the Baserock definitions format.

The canonical location is: <http://git.baserock.org/baserock/baserock/spec>.


Text
----

The definitions format is documentated as a Markdown text file.

See that text for more information about the Baserock definitions format.

The contents of the 'master' branch is rendered as HTML at
<http://docs.baserock.org/>. This is done using the 'mkdocs' static site
generator.

If you want to try out changes to the HTML rendering locally, install
mkdocs and the required theme, then run `mkdocs serve` from the root
directory of the repository. For example:

    pip3.4 install --user mkdocs mkdocs-material
    mkdocs serve
    # Rendered content should now be visible at http://localhost:8000/


JSON-Schemas
------------

The canonical representation of Baserock definitions is as YAML files.

We provide JSON-Schema schemas in the schemas/ directory, which are useful
when validating the structure of definitions files.  Most JSON-Schema
validators operate on deserialized data structures, rather than literal JSON
text, so it works fine for YAML as well as JSON.

The schemas correspond to the latest version of the definitions format. You
can get schemas for older versions (back to definitions format version 7) by looking at the tags of this repository,

If you want to support multiple versions of the definitions format in a tool, I
recommend embedding the schemas for each version in different directories.