summaryrefslogtreecommitdiff
path: root/api_source_description-1.schema.json
blob: a8f64739541318ce8f3f61edfd04c8bcc462bab5 (about) (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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
{
    "$schema": "http://json-schema.org/draft-07/schema#",
    "$id": "https://hydrilla.koszko.org/schemas/api_source_description-1.schema.json",
    "title": "Source description",
    "description": "Built description of a Hydrilla source package",
    "type": "object",
    "required": [
	"api_schema_version",
	"source_name",
	"source_copyright",
	"source_archives",
	"upstream_url",
	"definitions"
    ],
    "properties": {
	"api_schema_version": {
	    "$ref": "./common_definitions-1.schema.json#/definitions/schema_version"
	},
	"source_name": {
	    "$ref": "./common_definitions-1.schema.json#/definitions/source_name"
	},
	"source_copyright":  {
	    "description": "Which files indicate license terms of the source package",
	    "$ref": "./common_definitions-1.schema.json#/definitions/file_ref_list_sha256"
	},
	"source_archives": {
	    "description": "What archive extensions are available for this package's sources",
	    "type": "object",
	    "required": ["zip"],
	    "additionalProperties": {
		"description": "What is the SHA256 sum of given source archive",
		"type": "object",
		"required": ["sha256"],
		"properties": {
		    "sha256": {
			"$ref": "./common_definitions-1.schema.json#/definitions/sha256"
		    }
		}
	    },
	    "examples": [{
		"zip": {
		    "sha256": "688461da362ffe2fc8e85db73e709a5356d41c8aeb7d1eee7170c64ee21dd2a2"
		}
	    }]
	},
	"upstream_url": {
	    "description": "Where this software/work initially comes from",
	    "type": "string"
	},
	"comment": {
	    "$ref": "./common_definitions-1.schema.json#/definitions/comment"
	},
	"definitions": {
	    "description": "References to site resources and pattern->payload mappings",
	    "type": "array",
	    "items": {
		"$ref": "./common_definitions-1.schema.json#/definitions/typed_item_ref"
	    }
	}
    }
}