switchroom 0.13.2 → 0.13.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent-scheduler/index.js +2 -2
- package/dist/auth-broker/index.js +2 -2
- package/dist/cli/switchroom.js +21 -18
- package/dist/host-control/main.js +2 -2
- package/dist/vault/approvals/kernel-server.js +2 -2
- package/dist/vault/broker/server.js +2 -2
- package/package.json +1 -1
- package/telegram-plugin/dist/gateway/gateway.js +42 -10
- package/telegram-plugin/gateway/boot-probes.ts +13 -6
- package/telegram-plugin/gateway/gateway.ts +44 -6
- package/telegram-plugin/hooks/silent-end-interrupt-stop.mjs +5 -1
- package/telegram-plugin/silent-end.ts +56 -0
- package/telegram-plugin/tests/boot-probes.test.ts +26 -2
- package/telegram-plugin/tests/silent-end.test.ts +69 -0
- package/skills/buildkite-agent-infrastructure/SKILL.md +0 -321
- package/skills/buildkite-agent-infrastructure/agents/openai.yaml +0 -6
- package/skills/buildkite-agent-infrastructure/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-agent-infrastructure/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-agent-infrastructure/references/audit-logging.md +0 -87
- package/skills/buildkite-agent-infrastructure/references/graphql-mutations.md +0 -690
- package/skills/buildkite-agent-infrastructure/references/instance-shapes.md +0 -38
- package/skills/buildkite-agent-infrastructure/references/pipeline-templates.md +0 -73
- package/skills/buildkite-agent-infrastructure/references/self-hosted-agents.md +0 -137
- package/skills/buildkite-agent-infrastructure/references/sso-saml.md +0 -92
- package/skills/buildkite-agent-runtime/SKILL.md +0 -509
- package/skills/buildkite-agent-runtime/agents/openai.yaml +0 -6
- package/skills/buildkite-agent-runtime/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-agent-runtime/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-agent-runtime/references/flag-reference.md +0 -417
- package/skills/buildkite-agent-runtime/references/patterns-and-recipes.md +0 -555
- package/skills/buildkite-api/SKILL.md +0 -308
- package/skills/buildkite-api/agents/openai.yaml +0 -6
- package/skills/buildkite-api/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-api/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-api/references/graphql-reference.md +0 -195
- package/skills/buildkite-api/references/patterns.md +0 -44
- package/skills/buildkite-api/references/webhooks.md +0 -161
- package/skills/buildkite-cli/SKILL.md +0 -397
- package/skills/buildkite-cli/agents/openai.yaml +0 -6
- package/skills/buildkite-cli/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-cli/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-cli/references/command-reference.md +0 -181
- package/skills/buildkite-migration/SKILL.md +0 -195
- package/skills/buildkite-pipelines/SKILL.md +0 -481
- package/skills/buildkite-pipelines/agents/openai.yaml +0 -6
- package/skills/buildkite-pipelines/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-pipelines/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-pipelines/examples/basic-pipeline.yml +0 -24
- package/skills/buildkite-pipelines/examples/optimized-pipeline.yml +0 -100
- package/skills/buildkite-pipelines/references/advanced-patterns.md +0 -286
- package/skills/buildkite-pipelines/references/retry-and-error-codes.md +0 -131
- package/skills/buildkite-pipelines/references/step-types-reference.md +0 -225
- package/skills/buildkite-secure-delivery/SKILL.md +0 -182
- package/skills/buildkite-secure-delivery/agents/openai.yaml +0 -6
- package/skills/buildkite-secure-delivery/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-secure-delivery/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-secure-delivery/references/oidc-cloud-providers.md +0 -83
- package/skills/buildkite-secure-delivery/references/package-publishing.md +0 -100
- package/skills/buildkite-test-engine/SKILL.md +0 -256
- package/skills/buildkite-test-engine/agents/openai.yaml +0 -6
- package/skills/buildkite-test-engine/assets/buildkite-icon-large.png +0 -0
- package/skills/buildkite-test-engine/assets/buildkite-icon-small.png +0 -0
- package/skills/buildkite-test-engine/examples/bktec-splitting.yml +0 -16
- package/skills/buildkite-test-engine/examples/collector-pipeline.yml +0 -11
- package/skills/buildkite-test-engine/references/collectors.md +0 -198
- package/skills/buildkite-test-engine/references/splitting-examples.md +0 -93
|
@@ -1,690 +0,0 @@
|
|
|
1
|
-
# GraphQL Mutations Reference — Platform Engineering
|
|
2
|
-
|
|
3
|
-
Complete mutation examples for managing Buildkite clusters, queues, agent tokens, pipeline templates, SSO providers, and audit events via the GraphQL API at `https://graphql.buildkite.com/v1`.
|
|
4
|
-
|
|
5
|
-
All mutations require an API token with appropriate scopes. Pass it as a Bearer token in the `Authorization` header.
|
|
6
|
-
|
|
7
|
-
## Prerequisites — Get Organization and Cluster IDs
|
|
8
|
-
|
|
9
|
-
```graphql
|
|
10
|
-
query {
|
|
11
|
-
organization(slug: "my-org") {
|
|
12
|
-
id
|
|
13
|
-
teams(first: 100) {
|
|
14
|
-
edges {
|
|
15
|
-
node { id slug name }
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
clusters(first: 50) {
|
|
19
|
-
edges {
|
|
20
|
-
node {
|
|
21
|
-
id
|
|
22
|
-
uuid
|
|
23
|
-
name
|
|
24
|
-
description
|
|
25
|
-
color
|
|
26
|
-
emoji
|
|
27
|
-
defaultQueue { id key }
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Clusters
|
|
38
|
-
|
|
39
|
-
### Create a cluster
|
|
40
|
-
|
|
41
|
-
```graphql
|
|
42
|
-
mutation CreateCluster {
|
|
43
|
-
clusterCreate(input: {
|
|
44
|
-
organizationId: "T3JnYW5pemF0aW9uLS0tYWJjMTIz"
|
|
45
|
-
name: "Production"
|
|
46
|
-
description: "Production CI/CD cluster"
|
|
47
|
-
emoji: ":rocket:"
|
|
48
|
-
color: "#14CC80"
|
|
49
|
-
}) {
|
|
50
|
-
cluster {
|
|
51
|
-
id
|
|
52
|
-
uuid
|
|
53
|
-
name
|
|
54
|
-
description
|
|
55
|
-
emoji
|
|
56
|
-
color
|
|
57
|
-
defaultQueue { id key }
|
|
58
|
-
createdBy { name email }
|
|
59
|
-
}
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
### Update a cluster
|
|
65
|
-
|
|
66
|
-
```graphql
|
|
67
|
-
mutation UpdateCluster {
|
|
68
|
-
clusterUpdate(input: {
|
|
69
|
-
organizationId: "org-id"
|
|
70
|
-
id: "cluster-id"
|
|
71
|
-
name: "Production (Primary)"
|
|
72
|
-
description: "Updated description"
|
|
73
|
-
emoji: ":rocket:"
|
|
74
|
-
color: "#0B79CE"
|
|
75
|
-
defaultQueueId: "queue-id"
|
|
76
|
-
}) {
|
|
77
|
-
cluster { id name description defaultQueue { id key } }
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
### Delete a cluster
|
|
83
|
-
|
|
84
|
-
```graphql
|
|
85
|
-
mutation DeleteCluster {
|
|
86
|
-
clusterDelete(input: {
|
|
87
|
-
organizationId: "org-id"
|
|
88
|
-
id: "cluster-id"
|
|
89
|
-
}) {
|
|
90
|
-
deletedClusterId
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
---
|
|
96
|
-
|
|
97
|
-
## Queues
|
|
98
|
-
|
|
99
|
-
### Create a self-hosted queue
|
|
100
|
-
|
|
101
|
-
```graphql
|
|
102
|
-
mutation CreateSelfHostedQueue {
|
|
103
|
-
clusterQueueCreate(input: {
|
|
104
|
-
organizationId: "org-id"
|
|
105
|
-
clusterId: "cluster-id"
|
|
106
|
-
key: "gpu-runners"
|
|
107
|
-
description: "GPU-equipped self-hosted agents for ML workloads"
|
|
108
|
-
}) {
|
|
109
|
-
clusterQueue {
|
|
110
|
-
id
|
|
111
|
-
uuid
|
|
112
|
-
key
|
|
113
|
-
description
|
|
114
|
-
dispatchPaused
|
|
115
|
-
hosted
|
|
116
|
-
createdBy { name email }
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### Create a hosted queue (Linux)
|
|
123
|
-
|
|
124
|
-
```graphql
|
|
125
|
-
mutation CreateHostedLinuxQueue {
|
|
126
|
-
clusterQueueCreate(input: {
|
|
127
|
-
organizationId: "org-id"
|
|
128
|
-
clusterId: "cluster-id"
|
|
129
|
-
key: "linux-large"
|
|
130
|
-
description: "Linux 8 vCPU / 32 GB for heavy compilation"
|
|
131
|
-
hostedAgents: {
|
|
132
|
-
instanceShape: LINUX_AMD64_8X32
|
|
133
|
-
}
|
|
134
|
-
}) {
|
|
135
|
-
clusterQueue {
|
|
136
|
-
id
|
|
137
|
-
uuid
|
|
138
|
-
key
|
|
139
|
-
description
|
|
140
|
-
hosted
|
|
141
|
-
hostedAgents {
|
|
142
|
-
instanceShape {
|
|
143
|
-
name
|
|
144
|
-
size
|
|
145
|
-
vcpu
|
|
146
|
-
memory
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
```
|
|
153
|
-
|
|
154
|
-
### Create a hosted queue (macOS)
|
|
155
|
-
|
|
156
|
-
```graphql
|
|
157
|
-
mutation CreateHostedMacOSQueue {
|
|
158
|
-
clusterQueueCreate(input: {
|
|
159
|
-
organizationId: "org-id"
|
|
160
|
-
clusterId: "cluster-id"
|
|
161
|
-
key: "macos-ci"
|
|
162
|
-
description: "macOS M4 for Xcode builds"
|
|
163
|
-
hostedAgents: {
|
|
164
|
-
instanceShape: MACOS_M4_12X56
|
|
165
|
-
macosVersion: SEQUOIA
|
|
166
|
-
}
|
|
167
|
-
}) {
|
|
168
|
-
clusterQueue {
|
|
169
|
-
id
|
|
170
|
-
key
|
|
171
|
-
hostedAgents {
|
|
172
|
-
instanceShape { name vcpu memory }
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
### Create a hosted queue with custom agent image
|
|
180
|
-
|
|
181
|
-
```graphql
|
|
182
|
-
mutation CreateHostedCustomImageQueue {
|
|
183
|
-
clusterQueueCreate(input: {
|
|
184
|
-
organizationId: "org-id"
|
|
185
|
-
clusterId: "cluster-id"
|
|
186
|
-
key: "custom-linux"
|
|
187
|
-
description: "Custom Linux image with pre-installed toolchain"
|
|
188
|
-
hostedAgents: {
|
|
189
|
-
instanceShape: LINUX_AMD64_4X16
|
|
190
|
-
agentImageRef: "my-org.registry.buildkite.com/ci-image:latest"
|
|
191
|
-
}
|
|
192
|
-
}) {
|
|
193
|
-
clusterQueue {
|
|
194
|
-
id
|
|
195
|
-
key
|
|
196
|
-
hostedAgents { instanceShape { name vcpu memory } }
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
}
|
|
200
|
-
```
|
|
201
|
-
|
|
202
|
-
### Update a queue
|
|
203
|
-
|
|
204
|
-
```graphql
|
|
205
|
-
mutation UpdateQueue {
|
|
206
|
-
clusterQueueUpdate(input: {
|
|
207
|
-
organizationId: "org-id"
|
|
208
|
-
id: "queue-id"
|
|
209
|
-
description: "Updated queue description"
|
|
210
|
-
}) {
|
|
211
|
-
clusterQueue { id key description }
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
```
|
|
215
|
-
|
|
216
|
-
### Pause dispatch
|
|
217
|
-
|
|
218
|
-
```graphql
|
|
219
|
-
mutation PauseQueue {
|
|
220
|
-
clusterQueuePauseDispatch(input: {
|
|
221
|
-
organizationId: "org-id"
|
|
222
|
-
id: "queue-id"
|
|
223
|
-
note: "Maintenance window 2026-03-26 22:00-23:00 UTC"
|
|
224
|
-
}) {
|
|
225
|
-
clusterQueue { id key dispatchPaused }
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
```
|
|
229
|
-
|
|
230
|
-
### Resume dispatch
|
|
231
|
-
|
|
232
|
-
```graphql
|
|
233
|
-
mutation ResumeQueue {
|
|
234
|
-
clusterQueueResumeDispatch(input: {
|
|
235
|
-
organizationId: "org-id"
|
|
236
|
-
id: "queue-id"
|
|
237
|
-
}) {
|
|
238
|
-
clusterQueue { id key dispatchPaused }
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
```
|
|
242
|
-
|
|
243
|
-
### Delete a queue
|
|
244
|
-
|
|
245
|
-
```graphql
|
|
246
|
-
mutation DeleteQueue {
|
|
247
|
-
clusterQueueDelete(input: {
|
|
248
|
-
organizationId: "org-id"
|
|
249
|
-
id: "queue-id"
|
|
250
|
-
}) {
|
|
251
|
-
deletedClusterQueueId
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
---
|
|
257
|
-
|
|
258
|
-
## Agent Tokens
|
|
259
|
-
|
|
260
|
-
### Create a clustered agent token
|
|
261
|
-
|
|
262
|
-
```graphql
|
|
263
|
-
mutation CreateClusterToken {
|
|
264
|
-
clusterAgentTokenCreate(input: {
|
|
265
|
-
organizationId: "org-id"
|
|
266
|
-
clusterId: "cluster-id"
|
|
267
|
-
description: "Backend CI agents - production"
|
|
268
|
-
allowedIpAddresses: "10.0.0.0/8,172.16.0.0/12"
|
|
269
|
-
}) {
|
|
270
|
-
clusterAgentTokenEdge {
|
|
271
|
-
node {
|
|
272
|
-
id
|
|
273
|
-
uuid
|
|
274
|
-
description
|
|
275
|
-
allowedIpAddresses
|
|
276
|
-
token # Only returned at creation — store immediately
|
|
277
|
-
createdAt
|
|
278
|
-
}
|
|
279
|
-
}
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
### Create an unclustered agent token
|
|
285
|
-
|
|
286
|
-
```graphql
|
|
287
|
-
mutation CreateUnclusteredToken {
|
|
288
|
-
agentTokenCreate(input: {
|
|
289
|
-
organizationId: "org-id"
|
|
290
|
-
description: "Legacy unclustered agents"
|
|
291
|
-
}) {
|
|
292
|
-
agentTokenEdge {
|
|
293
|
-
node {
|
|
294
|
-
id
|
|
295
|
-
description
|
|
296
|
-
token # Only returned at creation
|
|
297
|
-
}
|
|
298
|
-
}
|
|
299
|
-
}
|
|
300
|
-
}
|
|
301
|
-
```
|
|
302
|
-
|
|
303
|
-
### Revoke a token
|
|
304
|
-
|
|
305
|
-
```graphql
|
|
306
|
-
mutation RevokeToken {
|
|
307
|
-
agentTokenRevoke(input: {
|
|
308
|
-
id: "token-id"
|
|
309
|
-
reason: "Compromised — rotated to new token"
|
|
310
|
-
}) {
|
|
311
|
-
agentToken { id description revokedAt revokedReason }
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
```
|
|
315
|
-
|
|
316
|
-
---
|
|
317
|
-
|
|
318
|
-
## Pipeline Templates
|
|
319
|
-
|
|
320
|
-
Enterprise-only. Templates define standard pipeline YAML that pipelines can inherit.
|
|
321
|
-
|
|
322
|
-
### Create a template
|
|
323
|
-
|
|
324
|
-
```graphql
|
|
325
|
-
mutation CreateTemplate {
|
|
326
|
-
pipelineTemplateCreate(input: {
|
|
327
|
-
organizationId: "org-id"
|
|
328
|
-
name: "Standard CI Template"
|
|
329
|
-
description: "Organization-standard pipeline with security scanning"
|
|
330
|
-
available: true
|
|
331
|
-
configuration: """
|
|
332
|
-
steps:
|
|
333
|
-
- label: ":pipeline: Upload"
|
|
334
|
-
command: buildkite-agent pipeline upload
|
|
335
|
-
|
|
336
|
-
- wait
|
|
337
|
-
|
|
338
|
-
- label: ":shield: Security Scan"
|
|
339
|
-
command: "scripts/security-scan.sh"
|
|
340
|
-
agents:
|
|
341
|
-
queue: "security-scanners"
|
|
342
|
-
retry:
|
|
343
|
-
automatic:
|
|
344
|
-
- exit_status: -1
|
|
345
|
-
limit: 2
|
|
346
|
-
|
|
347
|
-
- wait
|
|
348
|
-
|
|
349
|
-
- label: ":rocket: Deploy"
|
|
350
|
-
command: "scripts/deploy.sh"
|
|
351
|
-
branches: "main"
|
|
352
|
-
concurrency: 1
|
|
353
|
-
concurrency_group: "deploy/production"
|
|
354
|
-
"""
|
|
355
|
-
}) {
|
|
356
|
-
pipelineTemplate {
|
|
357
|
-
id
|
|
358
|
-
uuid
|
|
359
|
-
name
|
|
360
|
-
description
|
|
361
|
-
available
|
|
362
|
-
configuration
|
|
363
|
-
}
|
|
364
|
-
}
|
|
365
|
-
}
|
|
366
|
-
```
|
|
367
|
-
|
|
368
|
-
### Update a template
|
|
369
|
-
|
|
370
|
-
```graphql
|
|
371
|
-
mutation UpdateTemplate {
|
|
372
|
-
pipelineTemplateUpdate(input: {
|
|
373
|
-
id: "template-id"
|
|
374
|
-
name: "Standard CI Template v2"
|
|
375
|
-
description: "Updated with artifact signing step"
|
|
376
|
-
available: true
|
|
377
|
-
configuration: "..."
|
|
378
|
-
}) {
|
|
379
|
-
pipelineTemplate { id name available }
|
|
380
|
-
}
|
|
381
|
-
}
|
|
382
|
-
```
|
|
383
|
-
|
|
384
|
-
### Delete a template
|
|
385
|
-
|
|
386
|
-
```graphql
|
|
387
|
-
mutation DeleteTemplate {
|
|
388
|
-
pipelineTemplateDelete(input: {
|
|
389
|
-
id: "template-id"
|
|
390
|
-
}) {
|
|
391
|
-
deletedPipelineTemplateId
|
|
392
|
-
}
|
|
393
|
-
}
|
|
394
|
-
```
|
|
395
|
-
|
|
396
|
-
---
|
|
397
|
-
|
|
398
|
-
## SSO Providers
|
|
399
|
-
|
|
400
|
-
### Create a SAML provider
|
|
401
|
-
|
|
402
|
-
```graphql
|
|
403
|
-
mutation CreateSAMLProvider {
|
|
404
|
-
ssoProviderCreate(input: {
|
|
405
|
-
organizationId: "org-id"
|
|
406
|
-
type: SAML
|
|
407
|
-
emailDomain: "example.com"
|
|
408
|
-
emailDomainVerificationAddress: "admin@example.com"
|
|
409
|
-
}) {
|
|
410
|
-
ssoProvider {
|
|
411
|
-
id
|
|
412
|
-
state
|
|
413
|
-
emailDomain
|
|
414
|
-
emailDomainVerificationAddress
|
|
415
|
-
serviceProvider {
|
|
416
|
-
metadata { url }
|
|
417
|
-
ssoURL # ACS URL — configure this in the IdP
|
|
418
|
-
issuer # Entity ID — configure this in the IdP
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
}
|
|
423
|
-
```
|
|
424
|
-
|
|
425
|
-
### Update provider with IdP metadata URL
|
|
426
|
-
|
|
427
|
-
```graphql
|
|
428
|
-
mutation UpdateSSOWithMetadataURL {
|
|
429
|
-
ssoProviderUpdate(input: {
|
|
430
|
-
id: "sso-provider-id"
|
|
431
|
-
identityProvider: {
|
|
432
|
-
metadata: {
|
|
433
|
-
url: "https://idp.example.com/app/abc123/sso/saml/metadata"
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
}) {
|
|
437
|
-
ssoProvider {
|
|
438
|
-
id
|
|
439
|
-
state
|
|
440
|
-
... on SSOProviderSAML {
|
|
441
|
-
identityProvider {
|
|
442
|
-
ssoURL
|
|
443
|
-
issuer
|
|
444
|
-
metadata { url }
|
|
445
|
-
}
|
|
446
|
-
}
|
|
447
|
-
}
|
|
448
|
-
}
|
|
449
|
-
}
|
|
450
|
-
```
|
|
451
|
-
|
|
452
|
-
### Update provider with manual configuration
|
|
453
|
-
|
|
454
|
-
```graphql
|
|
455
|
-
mutation UpdateSSOManual {
|
|
456
|
-
ssoProviderUpdate(input: {
|
|
457
|
-
id: "sso-provider-id"
|
|
458
|
-
identityProvider: {
|
|
459
|
-
ssoURL: "https://idp.example.com/saml/sso"
|
|
460
|
-
issuer: "https://idp.example.com"
|
|
461
|
-
certificate: "-----BEGIN CERTIFICATE-----\nMIID...base64...==\n-----END CERTIFICATE-----"
|
|
462
|
-
}
|
|
463
|
-
}) {
|
|
464
|
-
ssoProvider { id state }
|
|
465
|
-
}
|
|
466
|
-
}
|
|
467
|
-
```
|
|
468
|
-
|
|
469
|
-
### Enable a provider
|
|
470
|
-
|
|
471
|
-
```graphql
|
|
472
|
-
mutation EnableSSO {
|
|
473
|
-
ssoProviderEnable(input: {
|
|
474
|
-
id: "sso-provider-id"
|
|
475
|
-
}) {
|
|
476
|
-
ssoProvider { id state enabledAt }
|
|
477
|
-
}
|
|
478
|
-
}
|
|
479
|
-
```
|
|
480
|
-
|
|
481
|
-
### Disable a provider
|
|
482
|
-
|
|
483
|
-
```graphql
|
|
484
|
-
mutation DisableSSO {
|
|
485
|
-
ssoProviderDisable(input: {
|
|
486
|
-
id: "sso-provider-id"
|
|
487
|
-
disabledReason: "Migrating to new IdP"
|
|
488
|
-
}) {
|
|
489
|
-
ssoProvider { id state }
|
|
490
|
-
}
|
|
491
|
-
}
|
|
492
|
-
```
|
|
493
|
-
|
|
494
|
-
### Query all SSO providers
|
|
495
|
-
|
|
496
|
-
```graphql
|
|
497
|
-
query ListSSOProviders {
|
|
498
|
-
organization(slug: "my-org") {
|
|
499
|
-
ssoProviders(first: 10) {
|
|
500
|
-
edges {
|
|
501
|
-
node {
|
|
502
|
-
id
|
|
503
|
-
type
|
|
504
|
-
state
|
|
505
|
-
emailDomain
|
|
506
|
-
emailDomainVerificationAddress
|
|
507
|
-
emailDomainVerifiedAt
|
|
508
|
-
createdAt
|
|
509
|
-
enabledAt
|
|
510
|
-
url
|
|
511
|
-
... on SSOProviderSAML {
|
|
512
|
-
identityProvider {
|
|
513
|
-
ssoURL
|
|
514
|
-
issuer
|
|
515
|
-
certificate
|
|
516
|
-
metadata { url xml }
|
|
517
|
-
}
|
|
518
|
-
}
|
|
519
|
-
... on SSOProviderGoogleGSuite {
|
|
520
|
-
googleHostedDomain
|
|
521
|
-
discloseGoogleHostedDomain
|
|
522
|
-
}
|
|
523
|
-
}
|
|
524
|
-
}
|
|
525
|
-
}
|
|
526
|
-
}
|
|
527
|
-
}
|
|
528
|
-
```
|
|
529
|
-
|
|
530
|
-
---
|
|
531
|
-
|
|
532
|
-
## Audit Events
|
|
533
|
-
|
|
534
|
-
### Query recent audit events
|
|
535
|
-
|
|
536
|
-
```graphql
|
|
537
|
-
query RecentAuditEvents {
|
|
538
|
-
organization(slug: "my-org") {
|
|
539
|
-
auditEvents(
|
|
540
|
-
first: 100
|
|
541
|
-
occurredAtFrom: "2026-03-01T00:00:00Z"
|
|
542
|
-
occurredAtTo: "2026-03-31T23:59:59Z"
|
|
543
|
-
order: RECENTLY_OCCURRED
|
|
544
|
-
) {
|
|
545
|
-
edges {
|
|
546
|
-
node {
|
|
547
|
-
type
|
|
548
|
-
occurredAt
|
|
549
|
-
actor { name type uuid }
|
|
550
|
-
subject { name type uuid }
|
|
551
|
-
data
|
|
552
|
-
context
|
|
553
|
-
}
|
|
554
|
-
}
|
|
555
|
-
pageInfo {
|
|
556
|
-
hasNextPage
|
|
557
|
-
endCursor
|
|
558
|
-
}
|
|
559
|
-
}
|
|
560
|
-
}
|
|
561
|
-
}
|
|
562
|
-
```
|
|
563
|
-
|
|
564
|
-
### Filter by event type
|
|
565
|
-
|
|
566
|
-
```graphql
|
|
567
|
-
query AgentTokenEvents {
|
|
568
|
-
organization(slug: "my-org") {
|
|
569
|
-
auditEvents(
|
|
570
|
-
first: 50
|
|
571
|
-
type: AGENT_TOKEN_CREATED
|
|
572
|
-
) {
|
|
573
|
-
edges {
|
|
574
|
-
node {
|
|
575
|
-
type
|
|
576
|
-
occurredAt
|
|
577
|
-
actor { name }
|
|
578
|
-
subject { name type }
|
|
579
|
-
}
|
|
580
|
-
}
|
|
581
|
-
}
|
|
582
|
-
}
|
|
583
|
-
}
|
|
584
|
-
```
|
|
585
|
-
|
|
586
|
-
### Filter by subject
|
|
587
|
-
|
|
588
|
-
```graphql
|
|
589
|
-
query PipelineAuditTrail {
|
|
590
|
-
organization(slug: "my-org") {
|
|
591
|
-
auditEvents(
|
|
592
|
-
first: 50
|
|
593
|
-
subjectType: PIPELINE
|
|
594
|
-
subjectUUID: "pipeline-uuid"
|
|
595
|
-
) {
|
|
596
|
-
edges {
|
|
597
|
-
node {
|
|
598
|
-
type
|
|
599
|
-
occurredAt
|
|
600
|
-
actor { name }
|
|
601
|
-
data
|
|
602
|
-
}
|
|
603
|
-
}
|
|
604
|
-
}
|
|
605
|
-
}
|
|
606
|
-
}
|
|
607
|
-
```
|
|
608
|
-
|
|
609
|
-
---
|
|
610
|
-
|
|
611
|
-
## Pipelines — Create with Cluster and Team Assignment
|
|
612
|
-
|
|
613
|
-
### Create a pipeline in a cluster
|
|
614
|
-
|
|
615
|
-
```graphql
|
|
616
|
-
mutation CreatePipeline {
|
|
617
|
-
pipelineCreate(input: {
|
|
618
|
-
organizationId: "org-id"
|
|
619
|
-
name: "backend-api"
|
|
620
|
-
repository: {
|
|
621
|
-
url: "git@github.com:my-org/backend-api.git"
|
|
622
|
-
}
|
|
623
|
-
clusterId: "cluster-id"
|
|
624
|
-
steps: {
|
|
625
|
-
yaml: """
|
|
626
|
-
steps:
|
|
627
|
-
- label: ":pipeline: Upload"
|
|
628
|
-
command: buildkite-agent pipeline upload
|
|
629
|
-
"""
|
|
630
|
-
}
|
|
631
|
-
teams: [
|
|
632
|
-
{ id: "team-id" }
|
|
633
|
-
]
|
|
634
|
-
}) {
|
|
635
|
-
pipeline {
|
|
636
|
-
id
|
|
637
|
-
slug
|
|
638
|
-
name
|
|
639
|
-
cluster { id name }
|
|
640
|
-
}
|
|
641
|
-
}
|
|
642
|
-
}
|
|
643
|
-
```
|
|
644
|
-
|
|
645
|
-
---
|
|
646
|
-
|
|
647
|
-
## Organization — Teams and Permissions
|
|
648
|
-
|
|
649
|
-
### List teams with pipeline creation permissions
|
|
650
|
-
|
|
651
|
-
```graphql
|
|
652
|
-
query TeamsWithPipelineCreation {
|
|
653
|
-
organization(slug: "my-org") {
|
|
654
|
-
teams(first: 100) {
|
|
655
|
-
edges {
|
|
656
|
-
node {
|
|
657
|
-
id
|
|
658
|
-
slug
|
|
659
|
-
name
|
|
660
|
-
membersCanCreatePipelines
|
|
661
|
-
members(first: 100) {
|
|
662
|
-
edges {
|
|
663
|
-
node {
|
|
664
|
-
role
|
|
665
|
-
user { name email }
|
|
666
|
-
}
|
|
667
|
-
}
|
|
668
|
-
}
|
|
669
|
-
}
|
|
670
|
-
}
|
|
671
|
-
}
|
|
672
|
-
}
|
|
673
|
-
}
|
|
674
|
-
```
|
|
675
|
-
|
|
676
|
-
### Check organization permissions
|
|
677
|
-
|
|
678
|
-
```graphql
|
|
679
|
-
query OrgPermissions {
|
|
680
|
-
organization(slug: "my-org") {
|
|
681
|
-
permissions {
|
|
682
|
-
ssoProviderCreate { allowed }
|
|
683
|
-
ssoProviderUpdate { allowed }
|
|
684
|
-
teamAdmin { allowed }
|
|
685
|
-
teamCreate { allowed }
|
|
686
|
-
teamEnabledChange { allowed }
|
|
687
|
-
}
|
|
688
|
-
}
|
|
689
|
-
}
|
|
690
|
-
```
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# Hosted Agent Instance Shapes
|
|
2
|
-
|
|
3
|
-
Hosted agent compute sizes available for queue creation.
|
|
4
|
-
|
|
5
|
-
## Linux AMD64
|
|
6
|
-
|
|
7
|
-
| Shape | vCPU | Memory |
|
|
8
|
-
|-------|------|--------|
|
|
9
|
-
| `LINUX_AMD64_2X4` | 2 | 4 GB |
|
|
10
|
-
| `LINUX_AMD64_4X16` | 4 | 16 GB |
|
|
11
|
-
| `LINUX_AMD64_8X32` | 8 | 32 GB |
|
|
12
|
-
| `LINUX_AMD64_16X64` | 16 | 64 GB |
|
|
13
|
-
|
|
14
|
-
## Linux ARM64
|
|
15
|
-
|
|
16
|
-
| Shape | vCPU | Memory |
|
|
17
|
-
|-------|------|--------|
|
|
18
|
-
| `LINUX_ARM64_2X4` | 2 | 4 GB |
|
|
19
|
-
| `LINUX_ARM64_4X16` | 4 | 16 GB |
|
|
20
|
-
| `LINUX_ARM64_8X32` | 8 | 32 GB |
|
|
21
|
-
| `LINUX_ARM64_16X64` | 16 | 64 GB |
|
|
22
|
-
|
|
23
|
-
## macOS M2
|
|
24
|
-
|
|
25
|
-
| Shape | vCPU | Memory |
|
|
26
|
-
|-------|------|--------|
|
|
27
|
-
| `MACOS_M2_4X7` | 4 | 7 GB |
|
|
28
|
-
| `MACOS_M2_6X14` | 6 | 14 GB |
|
|
29
|
-
| `MACOS_M2_12X28` | 12 | 28 GB |
|
|
30
|
-
|
|
31
|
-
## macOS M4
|
|
32
|
-
|
|
33
|
-
| Shape | vCPU | Memory |
|
|
34
|
-
|-------|------|--------|
|
|
35
|
-
| `MACOS_M4_6X28` | 6 | 28 GB |
|
|
36
|
-
| `MACOS_M4_12X56` | 12 | 56 GB |
|
|
37
|
-
|
|
38
|
-
macOS queues accept additional settings: `macosVersion` (`SONOMA`, `SEQUOIA`, `TAHOE`) and `xcodeVersion`. Linux queues accept `agentImageRef` for custom Docker images.
|