Skip to content

Commit c5aab4c

Browse files
authored
feat(edge_services): add ListPipelinesWithStages (#1495)
1 parent 52d2f83 commit c5aab4c

File tree

4 files changed

+102
-0
lines changed

4 files changed

+102
-0
lines changed

packages/clients/src/api/edge_services/v1alpha1/api.gen.ts

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ import {
3939
unmarshalListCacheStagesResponse,
4040
unmarshalListDNSStagesResponse,
4141
unmarshalListPipelinesResponse,
42+
unmarshalListPipelinesWithStagesResponse,
4243
unmarshalListPlansResponse,
4344
unmarshalListPurgeRequestsResponse,
4445
unmarshalListTLSStagesResponse,
@@ -86,6 +87,8 @@ import type {
8687
ListDNSStagesResponse,
8788
ListPipelinesRequest,
8889
ListPipelinesResponse,
90+
ListPipelinesWithStagesRequest,
91+
ListPipelinesWithStagesResponse,
8992
ListPlansResponse,
9093
ListPurgeRequestsRequest,
9194
ListPurgeRequestsResponse,
@@ -202,6 +205,37 @@ export class API extends ParentAPI {
202205
options,
203206
)
204207

208+
protected pageOfListPipelinesWithStages = (
209+
request: Readonly<ListPipelinesWithStagesRequest> = {},
210+
) =>
211+
this.client.fetch<ListPipelinesWithStagesResponse>(
212+
{
213+
method: 'GET',
214+
path: `/edge-services/v1alpha1/pipelines-stages`,
215+
urlParams: urlParams(
216+
['name', request.name],
217+
['order_by', request.orderBy],
218+
['organization_id', request.organizationId],
219+
['page', request.page],
220+
[
221+
'page_size',
222+
request.pageSize ?? this.client.settings.defaultPageSize,
223+
],
224+
['project_id', request.projectId],
225+
),
226+
},
227+
unmarshalListPipelinesWithStagesResponse,
228+
)
229+
230+
listPipelinesWithStages = (
231+
request: Readonly<ListPipelinesWithStagesRequest> = {},
232+
) =>
233+
enrichForPagination(
234+
'pipelines',
235+
this.pageOfListPipelinesWithStages,
236+
request,
237+
)
238+
205239
/**
206240
* Update pipeline. Update the parameters of an existing pipeline, specified
207241
* by its `pipeline_id`. Parameters which can be updated include the `name`,

packages/clients/src/api/edge_services/v1alpha1/index.gen.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,9 @@ export type {
4848
ListPipelinesRequest,
4949
ListPipelinesRequestOrderBy,
5050
ListPipelinesResponse,
51+
ListPipelinesWithStagesRequest,
52+
ListPipelinesWithStagesRequestOrderBy,
53+
ListPipelinesWithStagesResponse,
5154
ListPlansResponse,
5255
ListPurgeRequestsRequest,
5356
ListPurgeRequestsRequestOrderBy,
@@ -61,6 +64,7 @@ export type {
6164
PipelineErrorSeverity,
6265
PipelineErrorStage,
6366
PipelineErrorType,
67+
PipelineStages,
6468
PipelineStatus,
6569
Plan,
6670
PlanDetails,

packages/clients/src/api/edge_services/v1alpha1/marshalling.gen.ts

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,11 +30,13 @@ import type {
3030
ListCacheStagesResponse,
3131
ListDNSStagesResponse,
3232
ListPipelinesResponse,
33+
ListPipelinesWithStagesResponse,
3334
ListPlansResponse,
3435
ListPurgeRequestsResponse,
3536
ListTLSStagesResponse,
3637
Pipeline,
3738
PipelineError,
39+
PipelineStages,
3840
Plan,
3941
PlanDetails,
4042
PurgeRequest,
@@ -229,6 +231,25 @@ export const unmarshalTLSStage = (data: unknown): TLSStage => {
229231
} as TLSStage
230232
}
231233

234+
export const unmarshalPipelineStages = (data: unknown): PipelineStages => {
235+
if (!isJSONObject(data)) {
236+
throw new TypeError(
237+
`Unmarshalling the type 'PipelineStages' failed as data isn't a dictionary.`,
238+
)
239+
}
240+
241+
return {
242+
backendStages: unmarshalArrayOfObject(
243+
data.backend_stages,
244+
unmarshalBackendStage,
245+
),
246+
cacheStages: unmarshalArrayOfObject(data.cache_stages, unmarshalCacheStage),
247+
dnsStages: unmarshalArrayOfObject(data.dns_stages, unmarshalDNSStage),
248+
pipeline: data.pipeline ? unmarshalPipeline(data.pipeline) : undefined,
249+
tlsStages: unmarshalArrayOfObject(data.tls_stages, unmarshalTLSStage),
250+
} as PipelineStages
251+
}
252+
232253
export const unmarshalPurgeRequest = (data: unknown): PurgeRequest => {
233254
if (!isJSONObject(data)) {
234255
throw new TypeError(
@@ -391,6 +412,21 @@ export const unmarshalListPipelinesResponse = (
391412
} as ListPipelinesResponse
392413
}
393414

415+
export const unmarshalListPipelinesWithStagesResponse = (
416+
data: unknown,
417+
): ListPipelinesWithStagesResponse => {
418+
if (!isJSONObject(data)) {
419+
throw new TypeError(
420+
`Unmarshalling the type 'ListPipelinesWithStagesResponse' failed as data isn't a dictionary.`,
421+
)
422+
}
423+
424+
return {
425+
pipelines: unmarshalArrayOfObject(data.pipelines, unmarshalPipelineStages),
426+
totalCount: data.total_count,
427+
} as ListPipelinesWithStagesResponse
428+
}
429+
394430
export const unmarshalListPlansResponse = (
395431
data: unknown,
396432
): ListPlansResponse => {

packages/clients/src/api/edge_services/v1alpha1/types.gen.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,12 @@ export type ListPipelinesRequestOrderBy =
2424
| 'name_asc'
2525
| 'name_desc'
2626

27+
export type ListPipelinesWithStagesRequestOrderBy =
28+
| 'created_at_asc'
29+
| 'created_at_desc'
30+
| 'name_asc'
31+
| 'name_desc'
32+
2733
export type ListPurgeRequestsRequestOrderBy =
2834
| 'created_at_asc'
2935
| 'created_at_desc'
@@ -287,6 +293,14 @@ export interface PlanDetails {
287293
pipelineLimit: number
288294
}
289295

296+
export interface PipelineStages {
297+
pipeline?: Pipeline
298+
dnsStages: DNSStage[]
299+
tlsStages: TLSStage[]
300+
cacheStages: CacheStage[]
301+
backendStages: BackendStage[]
302+
}
303+
290304
export interface PurgeRequest {
291305
/** ID of the purge request. */
292306
id: string
@@ -709,6 +723,20 @@ export interface ListPipelinesResponse {
709723
totalCount: number
710724
}
711725

726+
export type ListPipelinesWithStagesRequest = {
727+
orderBy?: ListPipelinesWithStagesRequestOrderBy
728+
page?: number
729+
pageSize?: number
730+
name?: string
731+
organizationId?: string
732+
projectId?: string
733+
}
734+
735+
export interface ListPipelinesWithStagesResponse {
736+
pipelines: PipelineStages[]
737+
totalCount: number
738+
}
739+
712740
export interface ListPlansResponse {
713741
totalCount: number
714742
plans: PlanDetails[]

0 commit comments

Comments
 (0)