summaryrefslogtreecommitdiff
path: root/config/audit_events/types/type_schema.json
blob: 0d5d79bc4c403aca556adec6c44f0304b584ed74 (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
62
63
64
65
66
67
68
69
70
71
72
73
74
{
  "$schema": "http://json-schema.org/draft-06/schema#",
  "$id": "https://gitlab.com/gitlab-org/gitlab/-/blob/master/config/audit_events/types/type_schema.json",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "name": {
      "type": "string",
      "description": "Unique identifying name for the type of audit event"
    },
    "description": {
      "type": "string",
      "description": "A human-readable description of how this event is triggered"
    },
    "introduced_by_issue": {
      "type": "string",
      "format": "uri",
      "description": "URL to GitLab issue that added this type of audit event",
      "qt-uri-protocols": [
        "https"
      ]
    },
    "introduced_by_mr": {
      "type": "string",
      "format": "uri",
      "description": "URL to GitLab merge request that added this type of audit event",
      "qt-uri-protocols": [
        "https"
      ]
    },
    "group": {
      "type": "string",
      "description": "Name of the group that introduced this audit event. For example, manage::compliance"
    },
    "milestone": {
      "type": "string",
      "description": "Milestone that introduced this audit event type. For example, 15.8",
      "pattern": "^[0-9]+\\.[0-9]+$"
    },
    "saved_to_database": {
      "type": "boolean",
      "description": "Indicate whether to persist events to database and JSON logs"
    },
    "streamed": {
      "type": "boolean",
      "description": "Indicate that events should be streamed to external services (if configured)"
    }
  },
  "required": [
    "description",
    "group",
    "introduced_by_issue",
    "introduced_by_mr",
    "milestone",
    "name",
    "saved_to_database",
    "streamed"
  ],
  "not": {
    "properties": {
      "saved_to_database": {
        "enum": [
          false
        ]
      },
      "streamed": {
        "enum": [
          false
        ]
      }
    }
  },
  "title": "GitLabAuditEventType"
}