Skip to content

Commit a2584ef

Browse files
Merge pull request #50 from yaegassy/add-json-schema
Add "sqls/config.yml" JSON schema
2 parents fdc3374 + 5182adf commit a2584ef

File tree

1 file changed

+108
-0
lines changed

1 file changed

+108
-0
lines changed

schema.json

+108
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,108 @@
1+
{
2+
"$schema": "http://json-schema.org/draft-04/schema",
3+
"additionalProperties": false,
4+
"definitions": {
5+
"connection-definition": {
6+
"description": "Database connections",
7+
"type": "array",
8+
"items": {
9+
"additionalProperties": false,
10+
"type": "object",
11+
"properties": {
12+
"alias": {
13+
"description": "Connection alias name. Optional",
14+
"type": "string"
15+
},
16+
"driver": {
17+
"description": "mysql, postgresql, sqlite3. Required",
18+
"type": "string",
19+
"enum": [
20+
"mysql",
21+
"postgresql",
22+
"sqlite3"
23+
]
24+
},
25+
"dataSourceName": {
26+
"description": "Data source name",
27+
"type": "string"
28+
},
29+
"proto": {
30+
"description": "tcp, udp, unix",
31+
"type": "string",
32+
"enum": [
33+
"tcp",
34+
"udp",
35+
"unix"
36+
]
37+
},
38+
"user": {
39+
"description": "User name",
40+
"type": "string"
41+
},
42+
"passwd": {
43+
"description": "Password",
44+
"type": "string"
45+
},
46+
"host": {
47+
"description": "Host",
48+
"type": "string"
49+
},
50+
"port": {
51+
"description": "Port",
52+
"type": "number"
53+
},
54+
"path": {
55+
"description": "unix socket path",
56+
"type": "string"
57+
},
58+
"dbName": {
59+
"description": "Database name",
60+
"type": "string"
61+
},
62+
"params": {
63+
"description": "Option params. Optional",
64+
"type": "object",
65+
"properties": {}
66+
},
67+
"sshConfig": {
68+
"description": "ssh config. Optional",
69+
"type": "object",
70+
"properties": {
71+
"host": {
72+
"description": "ssh host. Required",
73+
"type": "string"
74+
},
75+
"port": {
76+
"description": "ssh port. Required",
77+
"type": "number"
78+
},
79+
"user": {
80+
"description": "ssh user. Optional",
81+
"type": "string"
82+
},
83+
"privateKey": {
84+
"description": "private key path. Required",
85+
"type": "string"
86+
},
87+
"passPhrase": {
88+
"description": "passPhrase. Optional",
89+
"type": "string"
90+
}
91+
}
92+
}
93+
}
94+
}
95+
}
96+
},
97+
"properties": {
98+
"lowercaseKeywords": {
99+
"description": "Set to true to use lowercase keywords instead of uppercase.",
100+
"type": "boolean"
101+
},
102+
"connections": {
103+
"$ref": "#/definitions/connection-definition"
104+
}
105+
},
106+
"title": "sqls",
107+
"type": "object"
108+
}

0 commit comments

Comments
 (0)