forked from mozilla-services/mozilla-pipeline-schemas
-
Notifications
You must be signed in to change notification settings - Fork 0
/
metaschema.1.schema.json
65 lines (65 loc) · 2.67 KB
/
metaschema.1.schema.json
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
62
63
64
65
{
"$schema": "http://json-schema.org/draft-04/schema#",
"id": "http://jsonschema.net",
"type": "object",
"description": "Metaschema for validating the structure of the per-doctype schemas in this repository",
"properties": {
"mozPipelineMetadata": {
"type": "object",
"description": "Container for per-doctype metadata that can affect how pings are processed in the pipeline",
"additionalProperties": false,
"properties": {
"$comment": {
"type": "string",
"description": "Optional comment about the pipeline handling for this doctype"
},
"bq_table": {
"type": "string",
"description": "NOT YET IMPLEMENTED: The name of the destination BigQuery table"
},
"bq_dataset_family": {
"type": "string",
"description": "NOT YET IMPLEMENTED: The base name for the destination BigQuery dataset; if this is set to 'telemetry', the pipeline will write into 'telemetry_live'"
},
"bq_metadata_format": {
"type": "string",
"description": "The logical format for the metadata struct in the destination BigQuery table",
"enum": ["structured", "telemetry", "pioneer"]
},
"expiration_policy": {
"type": "object",
"description": "Various options controlling data lifecycle",
"additionalProperties": false,
"properties": {
"delete_after_days": {
"type": "integer",
"description": "If present, a time_partitioning_expiration policy will be set on the destination stable table in BigQuery"
},
"collect_through_date": {
"type": "string",
"pattern": "^[0-9]{4}-[0-9]{2}-[0-9]{2}$",
"description": "NOT YET IMPLEMENTED: If present, the pipeline will reject new data with submission_timestamp after the given date, sending it to error output"
}
}
},
"jwe_mappings": {
"type": "array",
"description": "Mappings of encrypted JWE field paths to destinations where the value decrypted by the pipeline should be placed; initial use case is Account Ecosystem Telemetry; paths must be in [JSON Pointer format](https://tools.ietf.org/html/rfc6901) like '/payload/ecosystemAnonId'",
"items": {
"type": "object",
"properties": {
"source_field_path":{
"type": "string",
"pattern": "^/.*$"
},
"decrypted_field_path":{
"type": "string",
"pattern": "^/.*$"
}
}
}
}
}
}
}
}