Skip to content

Commit 84eda76

Browse files
committed
initial ado pol
1 parent 83a8d30 commit 84eda76

19 files changed

Lines changed: 2207 additions & 17 deletions
Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,217 @@
1+
{/* THIS IS A AUTO-GENERATED FILE. DO NOT MODIFY MANUALLY! */}
2+
```json
3+
{
4+
"$schema": "http://json-schema.org/draft-07/schema#",
5+
"type": "object",
6+
"title": "AzureDevOpsConnectionConfig",
7+
"properties": {
8+
"type": {
9+
"const": "azuredevops",
10+
"description": "Azure DevOps Configuration"
11+
},
12+
"token": {
13+
"description": "A Personal Access Token (PAT).",
14+
"examples": [
15+
{
16+
"secret": "SECRET_KEY"
17+
}
18+
],
19+
"anyOf": [
20+
{
21+
"type": "object",
22+
"properties": {
23+
"secret": {
24+
"type": "string",
25+
"description": "The name of the secret that contains the token."
26+
}
27+
},
28+
"required": [
29+
"secret"
30+
],
31+
"additionalProperties": false
32+
},
33+
{
34+
"type": "object",
35+
"properties": {
36+
"env": {
37+
"type": "string",
38+
"description": "The name of the environment variable that contains the token. Only supported in declarative connection configs."
39+
}
40+
},
41+
"required": [
42+
"env"
43+
],
44+
"additionalProperties": false
45+
}
46+
]
47+
},
48+
"url": {
49+
"type": "string",
50+
"format": "url",
51+
"default": "https://dev.azure.com",
52+
"description": "The URL of the Azure DevOps host. For Azure DevOps Cloud, use https://dev.azure.com. For Azure DevOps Server, use your server URL.",
53+
"examples": [
54+
"https://dev.azure.com",
55+
"https://azuredevops.example.com"
56+
],
57+
"pattern": "^https?:\\/\\/[^\\s/$.?#].[^\\s]*$"
58+
},
59+
"deploymentType": {
60+
"type": "string",
61+
"enum": [
62+
"cloud",
63+
"server"
64+
],
65+
"default": "cloud",
66+
"description": "The type of Azure DevOps deployment"
67+
},
68+
"apiVersion": {
69+
"type": "string",
70+
"default": "7.1",
71+
"description": "The Azure DevOps API version to use. For Cloud, use 7.1 or later. For Server: 2022 uses 7.1, 2020 uses 6.0, 2019 uses 5.1.",
72+
"examples": [
73+
"7.1",
74+
"7.0",
75+
"6.0",
76+
"5.1"
77+
]
78+
},
79+
"useTfsPath": {
80+
"type": "boolean",
81+
"default": false,
82+
"description": "Use legacy TFS path format (/tfs) in API URLs. Required for older TFS installations (TFS 2018 and earlier). When true, API URLs will include /tfs in the path (e.g., https://server/tfs/collection/_apis/...)."
83+
},
84+
"organizations": {
85+
"type": "array",
86+
"items": {
87+
"type": "string",
88+
"pattern": "^[\\w.-]+$"
89+
},
90+
"default": [],
91+
"examples": [
92+
[
93+
"my-org"
94+
]
95+
],
96+
"description": "List of organizations to sync with. For Cloud, this is the organization name. For Server, this is the collection name. All projects and repositories visible to the provided `token` will be synced, unless explicitly defined in the `exclude` property."
97+
},
98+
"projects": {
99+
"type": "array",
100+
"items": {
101+
"type": "string",
102+
"pattern": "^[\\w.-]+\\/[\\w.-]+$"
103+
},
104+
"default": [],
105+
"examples": [
106+
[
107+
"my-org/my-project",
108+
"my-collection/my-project"
109+
]
110+
],
111+
"description": "List of specific projects to sync with. Expected to be formatted as '{orgName}/{projectName}' for Cloud or '{collectionName}/{projectName}' for Server."
112+
},
113+
"repos": {
114+
"type": "array",
115+
"items": {
116+
"type": "string",
117+
"pattern": "^[\\w.-]+\\/[\\w.-]+\\/[\\w.-]+$"
118+
},
119+
"default": [],
120+
"examples": [
121+
[
122+
"my-org/my-project/my-repo"
123+
]
124+
],
125+
"description": "List of individual repositories to sync with. Expected to be formatted as '{orgName}/{projectName}/{repoName}'."
126+
},
127+
"exclude": {
128+
"type": "object",
129+
"properties": {
130+
"disabled": {
131+
"type": "boolean",
132+
"default": false,
133+
"description": "Exclude disabled repositories from syncing."
134+
},
135+
"repos": {
136+
"type": "array",
137+
"items": {
138+
"type": "string"
139+
},
140+
"default": [],
141+
"description": "List of individual repositories to exclude from syncing. Glob patterns are supported."
142+
},
143+
"projects": {
144+
"type": "array",
145+
"items": {
146+
"type": "string"
147+
},
148+
"default": [],
149+
"description": "List of projects to exclude from syncing. Glob patterns are supported."
150+
},
151+
"size": {
152+
"type": "object",
153+
"description": "Exclude repositories based on their size.",
154+
"properties": {
155+
"min": {
156+
"type": "integer",
157+
"description": "Minimum repository size (in bytes) to sync (inclusive). Repositories less than this size will be excluded from syncing."
158+
},
159+
"max": {
160+
"type": "integer",
161+
"description": "Maximum repository size (in bytes) to sync (inclusive). Repositories greater than this size will be excluded from syncing."
162+
}
163+
},
164+
"additionalProperties": false
165+
}
166+
},
167+
"additionalProperties": false
168+
},
169+
"revisions": {
170+
"type": "object",
171+
"description": "The revisions (branches, tags) that should be included when indexing. The default branch (HEAD) is always indexed. A maximum of 64 revisions can be indexed, with any additional revisions being ignored.",
172+
"properties": {
173+
"branches": {
174+
"type": "array",
175+
"description": "List of branches to include when indexing. For a given repo, only the branches that exist on the repo's remote *and* match at least one of the provided `branches` will be indexed. The default branch (HEAD) is always indexed. Glob patterns are supported. A maximum of 64 branches can be indexed, with any additional branches being ignored.",
176+
"items": {
177+
"type": "string"
178+
},
179+
"examples": [
180+
[
181+
"main",
182+
"release/*"
183+
],
184+
[
185+
"**"
186+
]
187+
],
188+
"default": []
189+
},
190+
"tags": {
191+
"type": "array",
192+
"description": "List of tags to include when indexing. For a given repo, only the tags that exist on the repo's remote *and* match at least one of the provided `tags` will be indexed. Glob patterns are supported. A maximum of 64 tags can be indexed, with any additional tags being ignored.",
193+
"items": {
194+
"type": "string"
195+
},
196+
"examples": [
197+
[
198+
"latest",
199+
"v2.*.*"
200+
],
201+
[
202+
"**"
203+
]
204+
],
205+
"default": []
206+
}
207+
},
208+
"additionalProperties": false
209+
}
210+
},
211+
"required": [
212+
"type",
213+
"token"
214+
],
215+
"additionalProperties": false
216+
}
217+
```

0 commit comments

Comments
 (0)