@azure/container-registry 1.0.0-beta.3 → 1.0.0
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/CHANGELOG.md +32 -0
- package/README.md +70 -37
- package/dist/index.js +1255 -1123
- package/dist/index.js.map +1 -1
- package/dist-esm/src/containerRegistryChallengeHandler.js +35 -38
- package/dist-esm/src/containerRegistryChallengeHandler.js.map +1 -1
- package/dist-esm/src/containerRegistryClient.js +69 -50
- package/dist-esm/src/containerRegistryClient.js.map +1 -1
- package/dist-esm/src/containerRegistryTokenCredential.js +39 -126
- package/dist-esm/src/containerRegistryTokenCredential.js.map +1 -1
- package/dist-esm/src/containerRepository.js +100 -63
- package/dist-esm/src/containerRepository.js.map +1 -1
- package/dist-esm/src/generated/generatedClient.js +7 -6
- package/dist-esm/src/generated/generatedClient.js.map +1 -1
- package/dist-esm/src/generated/generatedClientContext.js +13 -2
- package/dist-esm/src/generated/generatedClientContext.js.map +1 -1
- package/dist-esm/src/generated/index.js +1 -0
- package/dist-esm/src/generated/index.js.map +1 -1
- package/dist-esm/src/generated/models/index.js +61 -1
- package/dist-esm/src/generated/models/index.js.map +1 -1
- package/dist-esm/src/generated/models/mappers.js +514 -557
- package/dist-esm/src/generated/models/mappers.js.map +1 -1
- package/dist-esm/src/generated/models/parameters.js +87 -7
- package/dist-esm/src/generated/models/parameters.js.map +1 -1
- package/dist-esm/src/generated/operations/authentication.js +28 -8
- package/dist-esm/src/generated/operations/authentication.js.map +1 -1
- package/dist-esm/src/generated/operations/containerRegistry.js +27 -7
- package/dist-esm/src/generated/operations/containerRegistry.js.map +1 -1
- package/dist-esm/src/generated/operations/containerRegistryBlob.js +2 -2
- package/dist-esm/src/generated/operations/containerRegistryBlob.js.map +1 -1
- package/dist-esm/src/generated/operationsInterfaces/authentication.js +9 -0
- package/dist-esm/src/generated/operationsInterfaces/authentication.js.map +1 -0
- package/dist-esm/src/generated/operationsInterfaces/containerRegistry.js +9 -0
- package/dist-esm/src/generated/operationsInterfaces/containerRegistry.js.map +1 -0
- package/dist-esm/src/generated/operationsInterfaces/containerRegistryBlob.js +9 -0
- package/dist-esm/src/generated/operationsInterfaces/containerRegistryBlob.js.map +1 -0
- package/dist-esm/src/generated/operationsInterfaces/index.js +11 -0
- package/dist-esm/src/generated/operationsInterfaces/index.js.map +1 -0
- package/dist-esm/src/index.js.map +1 -1
- package/dist-esm/src/models.js +43 -2
- package/dist-esm/src/models.js.map +1 -1
- package/dist-esm/src/registryArtifact.js +176 -135
- package/dist-esm/src/registryArtifact.js.map +1 -1
- package/dist-esm/src/tracing.js +1 -1
- package/dist-esm/src/tracing.js.map +1 -1
- package/dist-esm/src/transformations.js +2 -2
- package/dist-esm/src/transformations.js.map +1 -1
- package/dist-esm/src/{base64.browser.js → utils/base64.browser.js} +0 -0
- package/dist-esm/src/utils/base64.browser.js.map +1 -0
- package/dist-esm/src/{base64.js → utils/base64.js} +0 -0
- package/dist-esm/src/utils/base64.js.map +1 -0
- package/dist-esm/src/{utils.js → utils/helpers.js} +1 -1
- package/dist-esm/src/utils/helpers.js.map +1 -0
- package/dist-esm/src/{tokenCycler.js → utils/tokenCycler.js} +29 -34
- package/dist-esm/src/utils/tokenCycler.js.map +1 -0
- package/dist-esm/src/{url.browser.js → utils/url.browser.js} +0 -0
- package/dist-esm/src/utils/url.browser.js.map +1 -0
- package/dist-esm/src/{url.js → utils/url.js} +0 -0
- package/dist-esm/src/utils/url.js.map +1 -0
- package/dist-esm/src/{wwwAuthenticateParser.js → utils/wwwAuthenticateParser.js} +0 -0
- package/dist-esm/src/utils/wwwAuthenticateParser.js.map +1 -0
- package/package.json +22 -25
- package/types/container-registry.d.ts +258 -83
- package/dist-esm/src/base64.browser.js.map +0 -1
- package/dist-esm/src/base64.js.map +0 -1
- package/dist-esm/src/constants.js +0 -4
- package/dist-esm/src/constants.js.map +0 -1
- package/dist-esm/src/tokenCycler.js.map +0 -1
- package/dist-esm/src/url.browser.js.map +0 -1
- package/dist-esm/src/url.js.map +0 -1
- package/dist-esm/src/utils.js.map +0 -1
- package/dist-esm/src/wwwAuthenticateParser.js.map +0 -1
package/dist/index.js
CHANGED
|
@@ -11,10 +11,6 @@ var logger$1 = require('@azure/logger');
|
|
|
11
11
|
var coreClient = require('@azure/core-client');
|
|
12
12
|
var url$1 = require('url');
|
|
13
13
|
|
|
14
|
-
// Copyright (c) Microsoft Corporation.
|
|
15
|
-
// Licensed under the MIT license.
|
|
16
|
-
const SDK_VERSION = "1.0.0-beta.3";
|
|
17
|
-
|
|
18
14
|
// Copyright (c) Microsoft Corporation.
|
|
19
15
|
/**
|
|
20
16
|
* The \@azure/logger configuration for this package.
|
|
@@ -70,7 +66,8 @@ const AcrErrorInfo = {
|
|
|
70
66
|
detail: {
|
|
71
67
|
serializedName: "detail",
|
|
72
68
|
type: {
|
|
73
|
-
name: "
|
|
69
|
+
name: "Dictionary",
|
|
70
|
+
value: { type: { name: "any" } }
|
|
74
71
|
}
|
|
75
72
|
}
|
|
76
73
|
}
|
|
@@ -90,397 +87,344 @@ const Manifest = {
|
|
|
90
87
|
}
|
|
91
88
|
}
|
|
92
89
|
};
|
|
93
|
-
const
|
|
90
|
+
const ManifestListAttributes = {
|
|
94
91
|
type: {
|
|
95
92
|
name: "Composite",
|
|
96
|
-
className: "
|
|
93
|
+
className: "ManifestListAttributes",
|
|
97
94
|
modelProperties: {
|
|
98
|
-
|
|
99
|
-
serializedName: "
|
|
95
|
+
mediaType: {
|
|
96
|
+
serializedName: "mediaType",
|
|
100
97
|
type: {
|
|
101
|
-
name: "
|
|
102
|
-
element: {
|
|
103
|
-
type: {
|
|
104
|
-
name: "String"
|
|
105
|
-
}
|
|
106
|
-
}
|
|
98
|
+
name: "String"
|
|
107
99
|
}
|
|
108
100
|
},
|
|
109
|
-
|
|
110
|
-
serializedName: "
|
|
101
|
+
size: {
|
|
102
|
+
serializedName: "size",
|
|
103
|
+
type: {
|
|
104
|
+
name: "Number"
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
digest: {
|
|
108
|
+
serializedName: "digest",
|
|
111
109
|
type: {
|
|
112
110
|
name: "String"
|
|
113
111
|
}
|
|
112
|
+
},
|
|
113
|
+
platform: {
|
|
114
|
+
serializedName: "platform",
|
|
115
|
+
type: {
|
|
116
|
+
name: "Composite",
|
|
117
|
+
className: "Platform"
|
|
118
|
+
}
|
|
114
119
|
}
|
|
115
120
|
}
|
|
116
121
|
}
|
|
117
122
|
};
|
|
118
|
-
const
|
|
123
|
+
const Platform = {
|
|
119
124
|
type: {
|
|
120
125
|
name: "Composite",
|
|
121
|
-
className: "
|
|
126
|
+
className: "Platform",
|
|
122
127
|
modelProperties: {
|
|
123
|
-
|
|
124
|
-
serializedName: "
|
|
125
|
-
required: true,
|
|
126
|
-
readOnly: true,
|
|
128
|
+
architecture: {
|
|
129
|
+
serializedName: "architecture",
|
|
127
130
|
type: {
|
|
128
131
|
name: "String"
|
|
129
132
|
}
|
|
130
133
|
},
|
|
131
|
-
|
|
132
|
-
serializedName: "
|
|
133
|
-
required: true,
|
|
134
|
-
readOnly: true,
|
|
134
|
+
os: {
|
|
135
|
+
serializedName: "os",
|
|
135
136
|
type: {
|
|
136
137
|
name: "String"
|
|
137
138
|
}
|
|
138
139
|
},
|
|
139
|
-
|
|
140
|
-
serializedName: "
|
|
141
|
-
required: true,
|
|
142
|
-
readOnly: true,
|
|
143
|
-
type: {
|
|
144
|
-
name: "DateTime"
|
|
145
|
-
}
|
|
146
|
-
},
|
|
147
|
-
lastUpdatedOn: {
|
|
148
|
-
serializedName: "lastUpdateTime",
|
|
149
|
-
required: true,
|
|
150
|
-
readOnly: true,
|
|
151
|
-
type: {
|
|
152
|
-
name: "DateTime"
|
|
153
|
-
}
|
|
154
|
-
},
|
|
155
|
-
manifestCount: {
|
|
156
|
-
serializedName: "manifestCount",
|
|
157
|
-
required: true,
|
|
158
|
-
readOnly: true,
|
|
159
|
-
type: {
|
|
160
|
-
name: "Number"
|
|
161
|
-
}
|
|
162
|
-
},
|
|
163
|
-
tagCount: {
|
|
164
|
-
serializedName: "tagCount",
|
|
165
|
-
required: true,
|
|
166
|
-
readOnly: true,
|
|
167
|
-
type: {
|
|
168
|
-
name: "Number"
|
|
169
|
-
}
|
|
170
|
-
},
|
|
171
|
-
canDelete: {
|
|
172
|
-
serializedName: "changeableAttributes.deleteEnabled",
|
|
173
|
-
type: {
|
|
174
|
-
name: "Boolean"
|
|
175
|
-
}
|
|
176
|
-
},
|
|
177
|
-
canWrite: {
|
|
178
|
-
serializedName: "changeableAttributes.writeEnabled",
|
|
140
|
+
osVersion: {
|
|
141
|
+
serializedName: "os\\.version",
|
|
179
142
|
type: {
|
|
180
|
-
name: "
|
|
143
|
+
name: "String"
|
|
181
144
|
}
|
|
182
145
|
},
|
|
183
|
-
|
|
184
|
-
serializedName: "
|
|
146
|
+
osFeatures: {
|
|
147
|
+
serializedName: "os\\.features",
|
|
185
148
|
type: {
|
|
186
|
-
name: "
|
|
149
|
+
name: "Sequence",
|
|
150
|
+
element: {
|
|
151
|
+
type: {
|
|
152
|
+
name: "String"
|
|
153
|
+
}
|
|
154
|
+
}
|
|
187
155
|
}
|
|
188
156
|
},
|
|
189
|
-
|
|
190
|
-
serializedName: "
|
|
157
|
+
variant: {
|
|
158
|
+
serializedName: "variant",
|
|
191
159
|
type: {
|
|
192
|
-
name: "
|
|
160
|
+
name: "String"
|
|
193
161
|
}
|
|
194
162
|
},
|
|
195
|
-
|
|
196
|
-
serializedName: "
|
|
163
|
+
features: {
|
|
164
|
+
serializedName: "features",
|
|
197
165
|
type: {
|
|
198
|
-
name: "
|
|
166
|
+
name: "Sequence",
|
|
167
|
+
element: {
|
|
168
|
+
type: {
|
|
169
|
+
name: "String"
|
|
170
|
+
}
|
|
171
|
+
}
|
|
199
172
|
}
|
|
200
173
|
}
|
|
201
174
|
}
|
|
202
175
|
}
|
|
203
176
|
};
|
|
204
|
-
const
|
|
177
|
+
const Descriptor = {
|
|
205
178
|
type: {
|
|
206
179
|
name: "Composite",
|
|
207
|
-
className: "
|
|
180
|
+
className: "Descriptor",
|
|
208
181
|
modelProperties: {
|
|
209
|
-
|
|
210
|
-
serializedName: "
|
|
182
|
+
mediaType: {
|
|
183
|
+
serializedName: "mediaType",
|
|
211
184
|
type: {
|
|
212
|
-
name: "
|
|
185
|
+
name: "String"
|
|
213
186
|
}
|
|
214
187
|
},
|
|
215
|
-
|
|
216
|
-
serializedName: "
|
|
188
|
+
size: {
|
|
189
|
+
serializedName: "size",
|
|
217
190
|
type: {
|
|
218
|
-
name: "
|
|
191
|
+
name: "Number"
|
|
219
192
|
}
|
|
220
193
|
},
|
|
221
|
-
|
|
222
|
-
serializedName: "
|
|
194
|
+
digest: {
|
|
195
|
+
serializedName: "digest",
|
|
223
196
|
type: {
|
|
224
|
-
name: "
|
|
197
|
+
name: "String"
|
|
225
198
|
}
|
|
226
199
|
},
|
|
227
|
-
|
|
228
|
-
serializedName: "
|
|
200
|
+
urls: {
|
|
201
|
+
serializedName: "urls",
|
|
229
202
|
type: {
|
|
230
|
-
name: "
|
|
203
|
+
name: "Sequence",
|
|
204
|
+
element: {
|
|
205
|
+
type: {
|
|
206
|
+
name: "String"
|
|
207
|
+
}
|
|
208
|
+
}
|
|
231
209
|
}
|
|
232
210
|
},
|
|
233
|
-
|
|
234
|
-
serializedName: "
|
|
211
|
+
annotations: {
|
|
212
|
+
serializedName: "annotations",
|
|
235
213
|
type: {
|
|
236
|
-
name: "
|
|
214
|
+
name: "Composite",
|
|
215
|
+
className: "Annotations"
|
|
237
216
|
}
|
|
238
217
|
}
|
|
239
218
|
}
|
|
240
219
|
}
|
|
241
220
|
};
|
|
242
|
-
const
|
|
221
|
+
const Annotations = {
|
|
243
222
|
type: {
|
|
244
223
|
name: "Composite",
|
|
245
|
-
className: "
|
|
224
|
+
className: "Annotations",
|
|
225
|
+
additionalProperties: { type: { name: "Object" } },
|
|
246
226
|
modelProperties: {
|
|
247
|
-
|
|
248
|
-
serializedName: "
|
|
249
|
-
required: true,
|
|
227
|
+
created: {
|
|
228
|
+
serializedName: "org\\.opencontainers.image.created",
|
|
250
229
|
type: {
|
|
251
|
-
name: "
|
|
230
|
+
name: "DateTime"
|
|
252
231
|
}
|
|
253
232
|
},
|
|
254
|
-
|
|
255
|
-
serializedName: "
|
|
256
|
-
required: true,
|
|
233
|
+
authors: {
|
|
234
|
+
serializedName: "org\\.opencontainers.image.authors",
|
|
257
235
|
type: {
|
|
258
236
|
name: "String"
|
|
259
237
|
}
|
|
260
238
|
},
|
|
261
|
-
|
|
262
|
-
serializedName: "
|
|
263
|
-
required: true,
|
|
239
|
+
url: {
|
|
240
|
+
serializedName: "org\\.opencontainers.image.url",
|
|
264
241
|
type: {
|
|
265
|
-
name: "
|
|
266
|
-
element: {
|
|
267
|
-
type: {
|
|
268
|
-
name: "Composite",
|
|
269
|
-
className: "TagAttributesBase"
|
|
270
|
-
}
|
|
271
|
-
}
|
|
242
|
+
name: "String"
|
|
272
243
|
}
|
|
273
244
|
},
|
|
274
|
-
|
|
275
|
-
serializedName: "
|
|
245
|
+
documentation: {
|
|
246
|
+
serializedName: "org\\.opencontainers.image.documentation",
|
|
276
247
|
type: {
|
|
277
248
|
name: "String"
|
|
278
249
|
}
|
|
279
|
-
}
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
};
|
|
283
|
-
const TagAttributesBase = {
|
|
284
|
-
type: {
|
|
285
|
-
name: "Composite",
|
|
286
|
-
className: "TagAttributesBase",
|
|
287
|
-
modelProperties: {
|
|
288
|
-
name: {
|
|
289
|
-
serializedName: "name",
|
|
290
|
-
required: true,
|
|
291
|
-
readOnly: true,
|
|
250
|
+
},
|
|
251
|
+
source: {
|
|
252
|
+
serializedName: "org\\.opencontainers.image.source",
|
|
292
253
|
type: {
|
|
293
254
|
name: "String"
|
|
294
255
|
}
|
|
295
256
|
},
|
|
296
|
-
|
|
297
|
-
serializedName: "
|
|
298
|
-
required: true,
|
|
299
|
-
readOnly: true,
|
|
257
|
+
version: {
|
|
258
|
+
serializedName: "org\\.opencontainers.image.version",
|
|
300
259
|
type: {
|
|
301
260
|
name: "String"
|
|
302
261
|
}
|
|
303
262
|
},
|
|
304
|
-
|
|
305
|
-
serializedName: "
|
|
306
|
-
required: true,
|
|
307
|
-
readOnly: true,
|
|
263
|
+
revision: {
|
|
264
|
+
serializedName: "org\\.opencontainers.image.revision",
|
|
308
265
|
type: {
|
|
309
|
-
name: "
|
|
266
|
+
name: "String"
|
|
310
267
|
}
|
|
311
268
|
},
|
|
312
|
-
|
|
313
|
-
serializedName: "
|
|
314
|
-
required: true,
|
|
315
|
-
readOnly: true,
|
|
269
|
+
vendor: {
|
|
270
|
+
serializedName: "org\\.opencontainers.image.vendor",
|
|
316
271
|
type: {
|
|
317
|
-
name: "
|
|
272
|
+
name: "String"
|
|
318
273
|
}
|
|
319
274
|
},
|
|
320
|
-
|
|
321
|
-
serializedName: "
|
|
275
|
+
licenses: {
|
|
276
|
+
serializedName: "org\\.opencontainers.image.licenses",
|
|
322
277
|
type: {
|
|
323
|
-
name: "
|
|
278
|
+
name: "String"
|
|
324
279
|
}
|
|
325
280
|
},
|
|
326
|
-
|
|
327
|
-
serializedName: "
|
|
281
|
+
name: {
|
|
282
|
+
serializedName: "org\\.opencontainers.image.ref.name",
|
|
328
283
|
type: {
|
|
329
|
-
name: "
|
|
284
|
+
name: "String"
|
|
330
285
|
}
|
|
331
286
|
},
|
|
332
|
-
|
|
333
|
-
serializedName: "
|
|
287
|
+
title: {
|
|
288
|
+
serializedName: "org\\.opencontainers.image.title",
|
|
334
289
|
type: {
|
|
335
|
-
name: "
|
|
290
|
+
name: "String"
|
|
336
291
|
}
|
|
337
292
|
},
|
|
338
|
-
|
|
339
|
-
serializedName: "
|
|
293
|
+
description: {
|
|
294
|
+
serializedName: "org\\.opencontainers.image.description",
|
|
340
295
|
type: {
|
|
341
|
-
name: "
|
|
296
|
+
name: "String"
|
|
342
297
|
}
|
|
343
298
|
}
|
|
344
299
|
}
|
|
345
300
|
}
|
|
346
301
|
};
|
|
347
|
-
const
|
|
302
|
+
const FsLayer = {
|
|
348
303
|
type: {
|
|
349
304
|
name: "Composite",
|
|
350
|
-
className: "
|
|
305
|
+
className: "FsLayer",
|
|
351
306
|
modelProperties: {
|
|
352
|
-
|
|
353
|
-
serializedName: "
|
|
354
|
-
type: {
|
|
355
|
-
name: "Boolean"
|
|
356
|
-
}
|
|
357
|
-
},
|
|
358
|
-
canWrite: {
|
|
359
|
-
serializedName: "writeEnabled",
|
|
360
|
-
type: {
|
|
361
|
-
name: "Boolean"
|
|
362
|
-
}
|
|
363
|
-
},
|
|
364
|
-
canList: {
|
|
365
|
-
serializedName: "listEnabled",
|
|
307
|
+
blobSum: {
|
|
308
|
+
serializedName: "blobSum",
|
|
366
309
|
type: {
|
|
367
|
-
name: "
|
|
310
|
+
name: "String"
|
|
368
311
|
}
|
|
369
|
-
}
|
|
370
|
-
|
|
371
|
-
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
};
|
|
316
|
+
const History = {
|
|
317
|
+
type: {
|
|
318
|
+
name: "Composite",
|
|
319
|
+
className: "History",
|
|
320
|
+
modelProperties: {
|
|
321
|
+
v1Compatibility: {
|
|
322
|
+
serializedName: "v1Compatibility",
|
|
372
323
|
type: {
|
|
373
|
-
name: "
|
|
324
|
+
name: "String"
|
|
374
325
|
}
|
|
375
326
|
}
|
|
376
327
|
}
|
|
377
328
|
}
|
|
378
329
|
};
|
|
379
|
-
const
|
|
330
|
+
const ImageSignature = {
|
|
380
331
|
type: {
|
|
381
332
|
name: "Composite",
|
|
382
|
-
className: "
|
|
333
|
+
className: "ImageSignature",
|
|
383
334
|
modelProperties: {
|
|
384
|
-
|
|
385
|
-
serializedName: "
|
|
386
|
-
required: true,
|
|
387
|
-
readOnly: true,
|
|
335
|
+
header: {
|
|
336
|
+
serializedName: "header",
|
|
388
337
|
type: {
|
|
389
|
-
name: "
|
|
338
|
+
name: "Composite",
|
|
339
|
+
className: "Jwk"
|
|
390
340
|
}
|
|
391
341
|
},
|
|
392
|
-
|
|
393
|
-
serializedName: "
|
|
394
|
-
required: true,
|
|
395
|
-
readOnly: true,
|
|
342
|
+
signature: {
|
|
343
|
+
serializedName: "signature",
|
|
396
344
|
type: {
|
|
397
345
|
name: "String"
|
|
398
346
|
}
|
|
399
347
|
},
|
|
400
|
-
|
|
401
|
-
serializedName: "
|
|
402
|
-
required: true,
|
|
403
|
-
readOnly: true,
|
|
348
|
+
protected: {
|
|
349
|
+
serializedName: "protected",
|
|
404
350
|
type: {
|
|
405
351
|
name: "String"
|
|
406
352
|
}
|
|
407
|
-
}
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
}
|
|
356
|
+
};
|
|
357
|
+
const Jwk = {
|
|
358
|
+
type: {
|
|
359
|
+
name: "Composite",
|
|
360
|
+
className: "Jwk",
|
|
361
|
+
modelProperties: {
|
|
362
|
+
jwk: {
|
|
363
|
+
serializedName: "jwk",
|
|
412
364
|
type: {
|
|
413
|
-
name: "
|
|
365
|
+
name: "Composite",
|
|
366
|
+
className: "JWKHeader"
|
|
414
367
|
}
|
|
415
368
|
},
|
|
416
|
-
|
|
417
|
-
serializedName: "
|
|
418
|
-
required: true,
|
|
419
|
-
readOnly: true,
|
|
369
|
+
alg: {
|
|
370
|
+
serializedName: "alg",
|
|
420
371
|
type: {
|
|
421
|
-
name: "
|
|
372
|
+
name: "String"
|
|
422
373
|
}
|
|
423
|
-
}
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
}
|
|
377
|
+
};
|
|
378
|
+
const JWKHeader = {
|
|
379
|
+
type: {
|
|
380
|
+
name: "Composite",
|
|
381
|
+
className: "JWKHeader",
|
|
382
|
+
modelProperties: {
|
|
383
|
+
crv: {
|
|
384
|
+
serializedName: "crv",
|
|
428
385
|
type: {
|
|
429
|
-
name: "
|
|
386
|
+
name: "String"
|
|
430
387
|
}
|
|
431
388
|
},
|
|
432
|
-
|
|
433
|
-
serializedName: "
|
|
389
|
+
kid: {
|
|
390
|
+
serializedName: "kid",
|
|
434
391
|
type: {
|
|
435
|
-
name: "
|
|
392
|
+
name: "String"
|
|
436
393
|
}
|
|
437
394
|
},
|
|
438
|
-
|
|
439
|
-
serializedName: "
|
|
395
|
+
kty: {
|
|
396
|
+
serializedName: "kty",
|
|
440
397
|
type: {
|
|
441
|
-
name: "
|
|
398
|
+
name: "String"
|
|
442
399
|
}
|
|
443
400
|
},
|
|
444
|
-
|
|
445
|
-
serializedName: "
|
|
401
|
+
x: {
|
|
402
|
+
serializedName: "x",
|
|
446
403
|
type: {
|
|
447
|
-
name: "
|
|
404
|
+
name: "String"
|
|
448
405
|
}
|
|
449
406
|
},
|
|
450
|
-
|
|
451
|
-
serializedName: "
|
|
407
|
+
y: {
|
|
408
|
+
serializedName: "y",
|
|
452
409
|
type: {
|
|
453
|
-
name: "
|
|
410
|
+
name: "String"
|
|
454
411
|
}
|
|
455
412
|
}
|
|
456
413
|
}
|
|
457
414
|
}
|
|
458
415
|
};
|
|
459
|
-
const
|
|
416
|
+
const Repositories = {
|
|
460
417
|
type: {
|
|
461
418
|
name: "Composite",
|
|
462
|
-
className: "
|
|
419
|
+
className: "Repositories",
|
|
463
420
|
modelProperties: {
|
|
464
|
-
|
|
465
|
-
serializedName: "
|
|
466
|
-
type: {
|
|
467
|
-
name: "String"
|
|
468
|
-
}
|
|
469
|
-
},
|
|
470
|
-
repository: {
|
|
471
|
-
serializedName: "imageName",
|
|
472
|
-
type: {
|
|
473
|
-
name: "String"
|
|
474
|
-
}
|
|
475
|
-
},
|
|
476
|
-
manifests: {
|
|
477
|
-
serializedName: "manifests",
|
|
421
|
+
repositories: {
|
|
422
|
+
serializedName: "repositories",
|
|
478
423
|
type: {
|
|
479
424
|
name: "Sequence",
|
|
480
425
|
element: {
|
|
481
426
|
type: {
|
|
482
|
-
name: "
|
|
483
|
-
className: "ManifestAttributesBase"
|
|
427
|
+
name: "String"
|
|
484
428
|
}
|
|
485
429
|
}
|
|
486
430
|
}
|
|
@@ -494,24 +438,25 @@ const AcrManifests = {
|
|
|
494
438
|
}
|
|
495
439
|
}
|
|
496
440
|
};
|
|
497
|
-
const
|
|
441
|
+
const ContainerRepositoryProperties = {
|
|
498
442
|
type: {
|
|
499
443
|
name: "Composite",
|
|
500
|
-
className: "
|
|
444
|
+
className: "ContainerRepositoryProperties",
|
|
501
445
|
modelProperties: {
|
|
502
|
-
|
|
503
|
-
serializedName: "
|
|
446
|
+
registryLoginServer: {
|
|
447
|
+
serializedName: "registry",
|
|
504
448
|
required: true,
|
|
505
449
|
readOnly: true,
|
|
506
450
|
type: {
|
|
507
451
|
name: "String"
|
|
508
452
|
}
|
|
509
453
|
},
|
|
510
|
-
|
|
511
|
-
serializedName: "
|
|
454
|
+
name: {
|
|
455
|
+
serializedName: "imageName",
|
|
456
|
+
required: true,
|
|
512
457
|
readOnly: true,
|
|
513
458
|
type: {
|
|
514
|
-
name: "
|
|
459
|
+
name: "String"
|
|
515
460
|
}
|
|
516
461
|
},
|
|
517
462
|
createdOn: {
|
|
@@ -530,45 +475,20 @@ const ManifestAttributesBase = {
|
|
|
530
475
|
name: "DateTime"
|
|
531
476
|
}
|
|
532
477
|
},
|
|
533
|
-
|
|
534
|
-
serializedName: "
|
|
535
|
-
|
|
536
|
-
nullable: true,
|
|
537
|
-
type: {
|
|
538
|
-
name: "String"
|
|
539
|
-
}
|
|
540
|
-
},
|
|
541
|
-
operatingSystem: {
|
|
542
|
-
serializedName: "os",
|
|
543
|
-
readOnly: true,
|
|
544
|
-
nullable: true,
|
|
545
|
-
type: {
|
|
546
|
-
name: "String"
|
|
547
|
-
}
|
|
548
|
-
},
|
|
549
|
-
relatedArtifacts: {
|
|
550
|
-
serializedName: "references",
|
|
478
|
+
manifestCount: {
|
|
479
|
+
serializedName: "manifestCount",
|
|
480
|
+
required: true,
|
|
551
481
|
readOnly: true,
|
|
552
482
|
type: {
|
|
553
|
-
name: "
|
|
554
|
-
element: {
|
|
555
|
-
type: {
|
|
556
|
-
name: "Composite",
|
|
557
|
-
className: "ArtifactManifestPlatform"
|
|
558
|
-
}
|
|
559
|
-
}
|
|
483
|
+
name: "Number"
|
|
560
484
|
}
|
|
561
485
|
},
|
|
562
|
-
|
|
563
|
-
serializedName: "
|
|
486
|
+
tagCount: {
|
|
487
|
+
serializedName: "tagCount",
|
|
488
|
+
required: true,
|
|
564
489
|
readOnly: true,
|
|
565
490
|
type: {
|
|
566
|
-
name: "
|
|
567
|
-
element: {
|
|
568
|
-
type: {
|
|
569
|
-
name: "String"
|
|
570
|
-
}
|
|
571
|
-
}
|
|
491
|
+
name: "Number"
|
|
572
492
|
}
|
|
573
493
|
},
|
|
574
494
|
canDelete: {
|
|
@@ -594,56 +514,14 @@ const ManifestAttributesBase = {
|
|
|
594
514
|
type: {
|
|
595
515
|
name: "Boolean"
|
|
596
516
|
}
|
|
597
|
-
},
|
|
598
|
-
quarantineState: {
|
|
599
|
-
serializedName: "changeableAttributes.quarantineState",
|
|
600
|
-
type: {
|
|
601
|
-
name: "String"
|
|
602
|
-
}
|
|
603
|
-
},
|
|
604
|
-
quarantineDetails: {
|
|
605
|
-
serializedName: "changeableAttributes.quarantineDetails",
|
|
606
|
-
type: {
|
|
607
|
-
name: "String"
|
|
608
|
-
}
|
|
609
|
-
}
|
|
610
|
-
}
|
|
611
|
-
}
|
|
612
|
-
};
|
|
613
|
-
const ArtifactManifestPlatform = {
|
|
614
|
-
type: {
|
|
615
|
-
name: "Composite",
|
|
616
|
-
className: "ArtifactManifestPlatform",
|
|
617
|
-
modelProperties: {
|
|
618
|
-
digest: {
|
|
619
|
-
serializedName: "digest",
|
|
620
|
-
required: true,
|
|
621
|
-
readOnly: true,
|
|
622
|
-
type: {
|
|
623
|
-
name: "String"
|
|
624
|
-
}
|
|
625
|
-
},
|
|
626
|
-
architecture: {
|
|
627
|
-
serializedName: "architecture",
|
|
628
|
-
readOnly: true,
|
|
629
|
-
type: {
|
|
630
|
-
name: "String"
|
|
631
|
-
}
|
|
632
|
-
},
|
|
633
|
-
operatingSystem: {
|
|
634
|
-
serializedName: "os",
|
|
635
|
-
readOnly: true,
|
|
636
|
-
type: {
|
|
637
|
-
name: "String"
|
|
638
|
-
}
|
|
639
517
|
}
|
|
640
518
|
}
|
|
641
519
|
}
|
|
642
520
|
};
|
|
643
|
-
const
|
|
521
|
+
const RepositoryWriteableProperties = {
|
|
644
522
|
type: {
|
|
645
523
|
name: "Composite",
|
|
646
|
-
className: "
|
|
524
|
+
className: "RepositoryWriteableProperties",
|
|
647
525
|
modelProperties: {
|
|
648
526
|
canDelete: {
|
|
649
527
|
serializedName: "deleteEnabled",
|
|
@@ -668,58 +546,74 @@ const ManifestWriteableProperties = {
|
|
|
668
546
|
type: {
|
|
669
547
|
name: "Boolean"
|
|
670
548
|
}
|
|
671
|
-
},
|
|
672
|
-
quarantineState: {
|
|
673
|
-
serializedName: "quarantineState",
|
|
674
|
-
type: {
|
|
675
|
-
name: "String"
|
|
676
|
-
}
|
|
677
|
-
},
|
|
678
|
-
quarantineDetails: {
|
|
679
|
-
serializedName: "quarantineDetails",
|
|
680
|
-
type: {
|
|
681
|
-
name: "String"
|
|
682
|
-
}
|
|
683
549
|
}
|
|
684
550
|
}
|
|
685
551
|
}
|
|
686
552
|
};
|
|
687
|
-
const
|
|
553
|
+
const TagList = {
|
|
688
554
|
type: {
|
|
689
555
|
name: "Composite",
|
|
690
|
-
className: "
|
|
556
|
+
className: "TagList",
|
|
691
557
|
modelProperties: {
|
|
692
558
|
registryLoginServer: {
|
|
693
559
|
serializedName: "registry",
|
|
694
|
-
|
|
560
|
+
required: true,
|
|
695
561
|
type: {
|
|
696
562
|
name: "String"
|
|
697
563
|
}
|
|
698
564
|
},
|
|
699
|
-
|
|
565
|
+
repository: {
|
|
700
566
|
serializedName: "imageName",
|
|
701
|
-
|
|
567
|
+
required: true,
|
|
702
568
|
type: {
|
|
703
569
|
name: "String"
|
|
704
570
|
}
|
|
705
571
|
},
|
|
706
|
-
|
|
707
|
-
serializedName: "
|
|
572
|
+
tagAttributeBases: {
|
|
573
|
+
serializedName: "tags",
|
|
574
|
+
required: true,
|
|
575
|
+
type: {
|
|
576
|
+
name: "Sequence",
|
|
577
|
+
element: {
|
|
578
|
+
type: {
|
|
579
|
+
name: "Composite",
|
|
580
|
+
className: "TagAttributesBase"
|
|
581
|
+
}
|
|
582
|
+
}
|
|
583
|
+
}
|
|
584
|
+
},
|
|
585
|
+
link: {
|
|
586
|
+
serializedName: "link",
|
|
587
|
+
type: {
|
|
588
|
+
name: "String"
|
|
589
|
+
}
|
|
590
|
+
}
|
|
591
|
+
}
|
|
592
|
+
}
|
|
593
|
+
};
|
|
594
|
+
const TagAttributesBase = {
|
|
595
|
+
type: {
|
|
596
|
+
name: "Composite",
|
|
597
|
+
className: "TagAttributesBase",
|
|
598
|
+
modelProperties: {
|
|
599
|
+
name: {
|
|
600
|
+
serializedName: "name",
|
|
708
601
|
required: true,
|
|
709
602
|
readOnly: true,
|
|
710
603
|
type: {
|
|
711
604
|
name: "String"
|
|
712
605
|
}
|
|
713
606
|
},
|
|
714
|
-
|
|
715
|
-
serializedName: "
|
|
607
|
+
digest: {
|
|
608
|
+
serializedName: "digest",
|
|
609
|
+
required: true,
|
|
716
610
|
readOnly: true,
|
|
717
611
|
type: {
|
|
718
|
-
name: "
|
|
612
|
+
name: "String"
|
|
719
613
|
}
|
|
720
614
|
},
|
|
721
615
|
createdOn: {
|
|
722
|
-
serializedName: "
|
|
616
|
+
serializedName: "createdTime",
|
|
723
617
|
required: true,
|
|
724
618
|
readOnly: true,
|
|
725
619
|
type: {
|
|
@@ -727,479 +621,554 @@ const ArtifactManifestProperties = {
|
|
|
727
621
|
}
|
|
728
622
|
},
|
|
729
623
|
lastUpdatedOn: {
|
|
730
|
-
serializedName: "
|
|
624
|
+
serializedName: "lastUpdateTime",
|
|
731
625
|
required: true,
|
|
732
626
|
readOnly: true,
|
|
733
627
|
type: {
|
|
734
628
|
name: "DateTime"
|
|
735
629
|
}
|
|
736
630
|
},
|
|
737
|
-
|
|
738
|
-
serializedName: "
|
|
739
|
-
readOnly: true,
|
|
740
|
-
nullable: true,
|
|
631
|
+
canDelete: {
|
|
632
|
+
serializedName: "changeableAttributes.deleteEnabled",
|
|
741
633
|
type: {
|
|
742
|
-
name: "
|
|
634
|
+
name: "Boolean"
|
|
743
635
|
}
|
|
744
636
|
},
|
|
745
|
-
|
|
746
|
-
serializedName: "
|
|
747
|
-
readOnly: true,
|
|
748
|
-
nullable: true,
|
|
637
|
+
canWrite: {
|
|
638
|
+
serializedName: "changeableAttributes.writeEnabled",
|
|
749
639
|
type: {
|
|
750
|
-
name: "
|
|
640
|
+
name: "Boolean"
|
|
751
641
|
}
|
|
752
642
|
},
|
|
753
|
-
|
|
754
|
-
serializedName: "
|
|
755
|
-
readOnly: true,
|
|
643
|
+
canList: {
|
|
644
|
+
serializedName: "changeableAttributes.listEnabled",
|
|
756
645
|
type: {
|
|
757
|
-
name: "
|
|
758
|
-
element: {
|
|
759
|
-
type: {
|
|
760
|
-
name: "Composite",
|
|
761
|
-
className: "ArtifactManifestPlatform"
|
|
762
|
-
}
|
|
763
|
-
}
|
|
646
|
+
name: "Boolean"
|
|
764
647
|
}
|
|
765
648
|
},
|
|
766
|
-
|
|
767
|
-
serializedName: "
|
|
768
|
-
readOnly: true,
|
|
649
|
+
canRead: {
|
|
650
|
+
serializedName: "changeableAttributes.readEnabled",
|
|
769
651
|
type: {
|
|
770
|
-
name: "
|
|
771
|
-
element: {
|
|
772
|
-
type: {
|
|
773
|
-
name: "String"
|
|
774
|
-
}
|
|
775
|
-
}
|
|
652
|
+
name: "Boolean"
|
|
776
653
|
}
|
|
777
|
-
}
|
|
654
|
+
}
|
|
655
|
+
}
|
|
656
|
+
}
|
|
657
|
+
};
|
|
658
|
+
const TagWriteableProperties = {
|
|
659
|
+
type: {
|
|
660
|
+
name: "Composite",
|
|
661
|
+
className: "TagWriteableProperties",
|
|
662
|
+
modelProperties: {
|
|
778
663
|
canDelete: {
|
|
779
|
-
serializedName: "
|
|
664
|
+
serializedName: "deleteEnabled",
|
|
780
665
|
type: {
|
|
781
666
|
name: "Boolean"
|
|
782
667
|
}
|
|
783
668
|
},
|
|
784
669
|
canWrite: {
|
|
785
|
-
serializedName: "
|
|
670
|
+
serializedName: "writeEnabled",
|
|
786
671
|
type: {
|
|
787
672
|
name: "Boolean"
|
|
788
673
|
}
|
|
789
674
|
},
|
|
790
675
|
canList: {
|
|
791
|
-
serializedName: "
|
|
676
|
+
serializedName: "listEnabled",
|
|
792
677
|
type: {
|
|
793
678
|
name: "Boolean"
|
|
794
679
|
}
|
|
795
680
|
},
|
|
796
681
|
canRead: {
|
|
797
|
-
serializedName: "
|
|
682
|
+
serializedName: "readEnabled",
|
|
798
683
|
type: {
|
|
799
684
|
name: "Boolean"
|
|
800
685
|
}
|
|
801
|
-
},
|
|
802
|
-
quarantineState: {
|
|
803
|
-
serializedName: "manifest.changeableAttributes.quarantineState",
|
|
804
|
-
type: {
|
|
805
|
-
name: "String"
|
|
806
|
-
}
|
|
807
|
-
},
|
|
808
|
-
quarantineDetails: {
|
|
809
|
-
serializedName: "manifest.changeableAttributes.quarantineDetails",
|
|
810
|
-
type: {
|
|
811
|
-
name: "String"
|
|
812
|
-
}
|
|
813
686
|
}
|
|
814
687
|
}
|
|
815
688
|
}
|
|
816
689
|
};
|
|
817
|
-
const
|
|
690
|
+
const ArtifactTagProperties = {
|
|
818
691
|
type: {
|
|
819
692
|
name: "Composite",
|
|
820
|
-
className: "
|
|
693
|
+
className: "ArtifactTagProperties",
|
|
821
694
|
modelProperties: {
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
695
|
+
registryLoginServer: {
|
|
696
|
+
serializedName: "registry",
|
|
697
|
+
required: true,
|
|
698
|
+
readOnly: true,
|
|
826
699
|
type: {
|
|
827
700
|
name: "String"
|
|
828
701
|
}
|
|
829
702
|
},
|
|
830
|
-
|
|
831
|
-
serializedName: "
|
|
703
|
+
repositoryName: {
|
|
704
|
+
serializedName: "imageName",
|
|
832
705
|
required: true,
|
|
706
|
+
readOnly: true,
|
|
833
707
|
type: {
|
|
834
708
|
name: "String"
|
|
835
709
|
}
|
|
836
710
|
},
|
|
837
|
-
|
|
838
|
-
serializedName: "
|
|
711
|
+
name: {
|
|
712
|
+
serializedName: "tag.name",
|
|
839
713
|
required: true,
|
|
714
|
+
readOnly: true,
|
|
840
715
|
type: {
|
|
841
716
|
name: "String"
|
|
842
717
|
}
|
|
843
|
-
}
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
type: {
|
|
849
|
-
name: "Composite",
|
|
850
|
-
className: "AcrRefreshToken",
|
|
851
|
-
modelProperties: {
|
|
852
|
-
refreshToken: {
|
|
853
|
-
serializedName: "refresh_token",
|
|
718
|
+
},
|
|
719
|
+
digest: {
|
|
720
|
+
serializedName: "tag.digest",
|
|
721
|
+
required: true,
|
|
722
|
+
readOnly: true,
|
|
854
723
|
type: {
|
|
855
724
|
name: "String"
|
|
856
725
|
}
|
|
857
|
-
}
|
|
858
|
-
|
|
859
|
-
|
|
860
|
-
};
|
|
861
|
-
const PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema = {
|
|
862
|
-
type: {
|
|
863
|
-
name: "Composite",
|
|
864
|
-
className: "PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema",
|
|
865
|
-
modelProperties: {
|
|
866
|
-
service: {
|
|
867
|
-
serializedName: "service",
|
|
726
|
+
},
|
|
727
|
+
createdOn: {
|
|
728
|
+
serializedName: "tag.createdTime",
|
|
868
729
|
required: true,
|
|
730
|
+
readOnly: true,
|
|
869
731
|
type: {
|
|
870
|
-
name: "
|
|
732
|
+
name: "DateTime"
|
|
871
733
|
}
|
|
872
734
|
},
|
|
873
|
-
|
|
874
|
-
serializedName: "
|
|
735
|
+
lastUpdatedOn: {
|
|
736
|
+
serializedName: "tag.lastUpdateTime",
|
|
875
737
|
required: true,
|
|
738
|
+
readOnly: true,
|
|
876
739
|
type: {
|
|
877
|
-
name: "
|
|
740
|
+
name: "DateTime"
|
|
878
741
|
}
|
|
879
742
|
},
|
|
880
|
-
|
|
881
|
-
serializedName: "
|
|
882
|
-
required: true,
|
|
743
|
+
canDelete: {
|
|
744
|
+
serializedName: "tag.changeableAttributes.deleteEnabled",
|
|
883
745
|
type: {
|
|
884
|
-
name: "
|
|
746
|
+
name: "Boolean"
|
|
885
747
|
}
|
|
886
748
|
},
|
|
887
|
-
|
|
888
|
-
serializedName: "
|
|
889
|
-
required: true,
|
|
749
|
+
canWrite: {
|
|
750
|
+
serializedName: "tag.changeableAttributes.writeEnabled",
|
|
890
751
|
type: {
|
|
891
|
-
name: "
|
|
892
|
-
|
|
752
|
+
name: "Boolean"
|
|
753
|
+
}
|
|
754
|
+
},
|
|
755
|
+
canList: {
|
|
756
|
+
serializedName: "tag.changeableAttributes.listEnabled",
|
|
757
|
+
type: {
|
|
758
|
+
name: "Boolean"
|
|
759
|
+
}
|
|
760
|
+
},
|
|
761
|
+
canRead: {
|
|
762
|
+
serializedName: "tag.changeableAttributes.readEnabled",
|
|
763
|
+
type: {
|
|
764
|
+
name: "Boolean"
|
|
893
765
|
}
|
|
894
766
|
}
|
|
895
767
|
}
|
|
896
768
|
}
|
|
897
769
|
};
|
|
898
|
-
const
|
|
770
|
+
const AcrManifests = {
|
|
899
771
|
type: {
|
|
900
772
|
name: "Composite",
|
|
901
|
-
className: "
|
|
773
|
+
className: "AcrManifests",
|
|
902
774
|
modelProperties: {
|
|
903
|
-
|
|
904
|
-
serializedName: "
|
|
775
|
+
registryLoginServer: {
|
|
776
|
+
serializedName: "registry",
|
|
905
777
|
type: {
|
|
906
778
|
name: "String"
|
|
907
779
|
}
|
|
908
|
-
}
|
|
909
|
-
|
|
910
|
-
|
|
911
|
-
};
|
|
912
|
-
const RepositoryTags = {
|
|
913
|
-
type: {
|
|
914
|
-
name: "Composite",
|
|
915
|
-
className: "RepositoryTags",
|
|
916
|
-
modelProperties: {
|
|
917
|
-
name: {
|
|
918
|
-
serializedName: "name",
|
|
780
|
+
},
|
|
781
|
+
repository: {
|
|
782
|
+
serializedName: "imageName",
|
|
919
783
|
type: {
|
|
920
784
|
name: "String"
|
|
921
785
|
}
|
|
922
786
|
},
|
|
923
|
-
|
|
924
|
-
serializedName: "
|
|
787
|
+
manifests: {
|
|
788
|
+
serializedName: "manifests",
|
|
925
789
|
type: {
|
|
926
790
|
name: "Sequence",
|
|
927
791
|
element: {
|
|
928
792
|
type: {
|
|
929
|
-
name: "
|
|
793
|
+
name: "Composite",
|
|
794
|
+
className: "ManifestAttributesBase"
|
|
930
795
|
}
|
|
931
796
|
}
|
|
932
797
|
}
|
|
798
|
+
},
|
|
799
|
+
link: {
|
|
800
|
+
serializedName: "link",
|
|
801
|
+
type: {
|
|
802
|
+
name: "String"
|
|
803
|
+
}
|
|
933
804
|
}
|
|
934
805
|
}
|
|
935
806
|
}
|
|
936
807
|
};
|
|
937
|
-
const
|
|
808
|
+
const ManifestAttributesBase = {
|
|
938
809
|
type: {
|
|
939
810
|
name: "Composite",
|
|
940
|
-
className: "
|
|
811
|
+
className: "ManifestAttributesBase",
|
|
941
812
|
modelProperties: {
|
|
942
|
-
|
|
943
|
-
serializedName: "
|
|
813
|
+
digest: {
|
|
814
|
+
serializedName: "digest",
|
|
815
|
+
required: true,
|
|
816
|
+
readOnly: true,
|
|
944
817
|
type: {
|
|
945
|
-
name: "
|
|
946
|
-
className: "Jwk"
|
|
818
|
+
name: "String"
|
|
947
819
|
}
|
|
948
820
|
},
|
|
949
|
-
|
|
950
|
-
serializedName: "
|
|
821
|
+
size: {
|
|
822
|
+
serializedName: "imageSize",
|
|
823
|
+
readOnly: true,
|
|
951
824
|
type: {
|
|
952
|
-
name: "
|
|
825
|
+
name: "Number"
|
|
953
826
|
}
|
|
954
827
|
},
|
|
955
|
-
|
|
956
|
-
serializedName: "
|
|
828
|
+
createdOn: {
|
|
829
|
+
serializedName: "createdTime",
|
|
830
|
+
required: true,
|
|
831
|
+
readOnly: true,
|
|
957
832
|
type: {
|
|
958
|
-
name: "
|
|
833
|
+
name: "DateTime"
|
|
959
834
|
}
|
|
960
|
-
}
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
type: {
|
|
966
|
-
name: "Composite",
|
|
967
|
-
className: "Jwk",
|
|
968
|
-
modelProperties: {
|
|
969
|
-
jwk: {
|
|
970
|
-
serializedName: "jwk",
|
|
835
|
+
},
|
|
836
|
+
lastUpdatedOn: {
|
|
837
|
+
serializedName: "lastUpdateTime",
|
|
838
|
+
required: true,
|
|
839
|
+
readOnly: true,
|
|
971
840
|
type: {
|
|
972
|
-
name: "
|
|
973
|
-
className: "JWKHeader"
|
|
841
|
+
name: "DateTime"
|
|
974
842
|
}
|
|
975
843
|
},
|
|
976
|
-
|
|
977
|
-
serializedName: "
|
|
844
|
+
architecture: {
|
|
845
|
+
serializedName: "architecture",
|
|
846
|
+
readOnly: true,
|
|
847
|
+
nullable: true,
|
|
978
848
|
type: {
|
|
979
849
|
name: "String"
|
|
980
850
|
}
|
|
981
|
-
}
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
type: {
|
|
987
|
-
name: "Composite",
|
|
988
|
-
className: "JWKHeader",
|
|
989
|
-
modelProperties: {
|
|
990
|
-
crv: {
|
|
991
|
-
serializedName: "crv",
|
|
851
|
+
},
|
|
852
|
+
operatingSystem: {
|
|
853
|
+
serializedName: "os",
|
|
854
|
+
readOnly: true,
|
|
855
|
+
nullable: true,
|
|
992
856
|
type: {
|
|
993
857
|
name: "String"
|
|
994
858
|
}
|
|
995
859
|
},
|
|
996
|
-
|
|
997
|
-
serializedName: "
|
|
860
|
+
relatedArtifacts: {
|
|
861
|
+
serializedName: "references",
|
|
862
|
+
readOnly: true,
|
|
998
863
|
type: {
|
|
999
|
-
name: "
|
|
864
|
+
name: "Sequence",
|
|
865
|
+
element: {
|
|
866
|
+
type: {
|
|
867
|
+
name: "Composite",
|
|
868
|
+
className: "ArtifactManifestPlatform"
|
|
869
|
+
}
|
|
870
|
+
}
|
|
1000
871
|
}
|
|
1001
872
|
},
|
|
1002
|
-
|
|
1003
|
-
serializedName: "
|
|
873
|
+
tags: {
|
|
874
|
+
serializedName: "tags",
|
|
875
|
+
readOnly: true,
|
|
1004
876
|
type: {
|
|
1005
|
-
name: "
|
|
877
|
+
name: "Sequence",
|
|
878
|
+
element: {
|
|
879
|
+
type: {
|
|
880
|
+
name: "String"
|
|
881
|
+
}
|
|
882
|
+
}
|
|
1006
883
|
}
|
|
1007
884
|
},
|
|
1008
|
-
|
|
1009
|
-
serializedName: "
|
|
885
|
+
canDelete: {
|
|
886
|
+
serializedName: "changeableAttributes.deleteEnabled",
|
|
1010
887
|
type: {
|
|
1011
|
-
name: "
|
|
888
|
+
name: "Boolean"
|
|
1012
889
|
}
|
|
1013
890
|
},
|
|
1014
|
-
|
|
1015
|
-
serializedName: "
|
|
891
|
+
canWrite: {
|
|
892
|
+
serializedName: "changeableAttributes.writeEnabled",
|
|
1016
893
|
type: {
|
|
1017
|
-
name: "
|
|
894
|
+
name: "Boolean"
|
|
895
|
+
}
|
|
896
|
+
},
|
|
897
|
+
canList: {
|
|
898
|
+
serializedName: "changeableAttributes.listEnabled",
|
|
899
|
+
type: {
|
|
900
|
+
name: "Boolean"
|
|
901
|
+
}
|
|
902
|
+
},
|
|
903
|
+
canRead: {
|
|
904
|
+
serializedName: "changeableAttributes.readEnabled",
|
|
905
|
+
type: {
|
|
906
|
+
name: "Boolean"
|
|
1018
907
|
}
|
|
1019
908
|
}
|
|
1020
909
|
}
|
|
1021
910
|
}
|
|
1022
911
|
};
|
|
1023
|
-
const
|
|
912
|
+
const ArtifactManifestPlatform = {
|
|
1024
913
|
type: {
|
|
1025
914
|
name: "Composite",
|
|
1026
|
-
className: "
|
|
915
|
+
className: "ArtifactManifestPlatform",
|
|
1027
916
|
modelProperties: {
|
|
1028
|
-
|
|
1029
|
-
serializedName: "
|
|
917
|
+
digest: {
|
|
918
|
+
serializedName: "digest",
|
|
919
|
+
required: true,
|
|
920
|
+
readOnly: true,
|
|
1030
921
|
type: {
|
|
1031
922
|
name: "String"
|
|
1032
923
|
}
|
|
1033
|
-
}
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
};
|
|
1037
|
-
const DeleteRepositoryResult = {
|
|
1038
|
-
type: {
|
|
1039
|
-
name: "Composite",
|
|
1040
|
-
className: "DeleteRepositoryResult",
|
|
1041
|
-
modelProperties: {
|
|
1042
|
-
deletedManifests: {
|
|
1043
|
-
serializedName: "manifestsDeleted",
|
|
924
|
+
},
|
|
925
|
+
architecture: {
|
|
926
|
+
serializedName: "architecture",
|
|
1044
927
|
readOnly: true,
|
|
1045
928
|
type: {
|
|
1046
|
-
name: "
|
|
1047
|
-
element: {
|
|
1048
|
-
type: {
|
|
1049
|
-
name: "String"
|
|
1050
|
-
}
|
|
1051
|
-
}
|
|
929
|
+
name: "String"
|
|
1052
930
|
}
|
|
1053
931
|
},
|
|
1054
|
-
|
|
1055
|
-
serializedName: "
|
|
932
|
+
operatingSystem: {
|
|
933
|
+
serializedName: "os",
|
|
1056
934
|
readOnly: true,
|
|
1057
935
|
type: {
|
|
1058
|
-
name: "
|
|
1059
|
-
element: {
|
|
1060
|
-
type: {
|
|
1061
|
-
name: "String"
|
|
1062
|
-
}
|
|
1063
|
-
}
|
|
936
|
+
name: "String"
|
|
1064
937
|
}
|
|
1065
938
|
}
|
|
1066
939
|
}
|
|
1067
940
|
}
|
|
1068
941
|
};
|
|
1069
|
-
const
|
|
942
|
+
const ManifestWriteableProperties = {
|
|
1070
943
|
type: {
|
|
1071
944
|
name: "Composite",
|
|
1072
|
-
className: "
|
|
945
|
+
className: "ManifestWriteableProperties",
|
|
1073
946
|
modelProperties: {
|
|
1074
|
-
|
|
1075
|
-
serializedName: "
|
|
947
|
+
canDelete: {
|
|
948
|
+
serializedName: "deleteEnabled",
|
|
1076
949
|
type: {
|
|
1077
|
-
name: "
|
|
950
|
+
name: "Boolean"
|
|
951
|
+
}
|
|
952
|
+
},
|
|
953
|
+
canWrite: {
|
|
954
|
+
serializedName: "writeEnabled",
|
|
955
|
+
type: {
|
|
956
|
+
name: "Boolean"
|
|
957
|
+
}
|
|
958
|
+
},
|
|
959
|
+
canList: {
|
|
960
|
+
serializedName: "listEnabled",
|
|
961
|
+
type: {
|
|
962
|
+
name: "Boolean"
|
|
963
|
+
}
|
|
964
|
+
},
|
|
965
|
+
canRead: {
|
|
966
|
+
serializedName: "readEnabled",
|
|
967
|
+
type: {
|
|
968
|
+
name: "Boolean"
|
|
1078
969
|
}
|
|
1079
970
|
}
|
|
1080
971
|
}
|
|
1081
972
|
}
|
|
1082
973
|
};
|
|
1083
|
-
const
|
|
974
|
+
const ArtifactManifestProperties = {
|
|
1084
975
|
type: {
|
|
1085
976
|
name: "Composite",
|
|
1086
|
-
className: "
|
|
977
|
+
className: "ArtifactManifestProperties",
|
|
1087
978
|
modelProperties: {
|
|
1088
|
-
|
|
1089
|
-
serializedName: "
|
|
979
|
+
registryLoginServer: {
|
|
980
|
+
serializedName: "registry",
|
|
981
|
+
readOnly: true,
|
|
1090
982
|
type: {
|
|
1091
983
|
name: "String"
|
|
1092
984
|
}
|
|
1093
985
|
},
|
|
1094
|
-
|
|
1095
|
-
serializedName: "
|
|
986
|
+
repositoryName: {
|
|
987
|
+
serializedName: "imageName",
|
|
988
|
+
readOnly: true,
|
|
1096
989
|
type: {
|
|
1097
|
-
name: "
|
|
990
|
+
name: "String"
|
|
1098
991
|
}
|
|
1099
992
|
},
|
|
1100
993
|
digest: {
|
|
1101
|
-
serializedName: "digest",
|
|
994
|
+
serializedName: "manifest.digest",
|
|
995
|
+
required: true,
|
|
996
|
+
readOnly: true,
|
|
1102
997
|
type: {
|
|
1103
998
|
name: "String"
|
|
1104
999
|
}
|
|
1105
1000
|
},
|
|
1106
|
-
|
|
1107
|
-
serializedName: "
|
|
1001
|
+
size: {
|
|
1002
|
+
serializedName: "manifest.imageSize",
|
|
1003
|
+
readOnly: true,
|
|
1108
1004
|
type: {
|
|
1109
|
-
name: "
|
|
1110
|
-
element: {
|
|
1111
|
-
type: {
|
|
1112
|
-
name: "String"
|
|
1113
|
-
}
|
|
1114
|
-
}
|
|
1005
|
+
name: "Number"
|
|
1115
1006
|
}
|
|
1116
1007
|
},
|
|
1117
|
-
|
|
1118
|
-
serializedName: "
|
|
1008
|
+
createdOn: {
|
|
1009
|
+
serializedName: "manifest.createdTime",
|
|
1010
|
+
required: true,
|
|
1011
|
+
readOnly: true,
|
|
1119
1012
|
type: {
|
|
1120
|
-
name: "
|
|
1121
|
-
className: "Annotations"
|
|
1013
|
+
name: "DateTime"
|
|
1122
1014
|
}
|
|
1123
|
-
}
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
type: {
|
|
1129
|
-
name: "Composite",
|
|
1130
|
-
className: "Annotations",
|
|
1131
|
-
additionalProperties: { type: { name: "Object" } },
|
|
1132
|
-
modelProperties: {
|
|
1133
|
-
created: {
|
|
1134
|
-
serializedName: "org\\.opencontainers.image.created",
|
|
1015
|
+
},
|
|
1016
|
+
lastUpdatedOn: {
|
|
1017
|
+
serializedName: "manifest.lastUpdateTime",
|
|
1018
|
+
required: true,
|
|
1019
|
+
readOnly: true,
|
|
1135
1020
|
type: {
|
|
1136
1021
|
name: "DateTime"
|
|
1137
1022
|
}
|
|
1138
1023
|
},
|
|
1139
|
-
|
|
1140
|
-
serializedName: "
|
|
1024
|
+
architecture: {
|
|
1025
|
+
serializedName: "manifest.architecture",
|
|
1026
|
+
readOnly: true,
|
|
1027
|
+
nullable: true,
|
|
1141
1028
|
type: {
|
|
1142
1029
|
name: "String"
|
|
1143
1030
|
}
|
|
1144
1031
|
},
|
|
1145
|
-
|
|
1146
|
-
serializedName: "
|
|
1032
|
+
operatingSystem: {
|
|
1033
|
+
serializedName: "manifest.os",
|
|
1034
|
+
readOnly: true,
|
|
1035
|
+
nullable: true,
|
|
1147
1036
|
type: {
|
|
1148
1037
|
name: "String"
|
|
1149
1038
|
}
|
|
1150
1039
|
},
|
|
1151
|
-
|
|
1152
|
-
serializedName: "
|
|
1040
|
+
relatedArtifacts: {
|
|
1041
|
+
serializedName: "manifest.references",
|
|
1042
|
+
readOnly: true,
|
|
1153
1043
|
type: {
|
|
1154
|
-
name: "
|
|
1044
|
+
name: "Sequence",
|
|
1045
|
+
element: {
|
|
1046
|
+
type: {
|
|
1047
|
+
name: "Composite",
|
|
1048
|
+
className: "ArtifactManifestPlatform"
|
|
1049
|
+
}
|
|
1050
|
+
}
|
|
1155
1051
|
}
|
|
1156
1052
|
},
|
|
1157
|
-
|
|
1158
|
-
serializedName: "
|
|
1053
|
+
tags: {
|
|
1054
|
+
serializedName: "manifest.tags",
|
|
1055
|
+
readOnly: true,
|
|
1159
1056
|
type: {
|
|
1160
|
-
name: "
|
|
1057
|
+
name: "Sequence",
|
|
1058
|
+
element: {
|
|
1059
|
+
type: {
|
|
1060
|
+
name: "String"
|
|
1061
|
+
}
|
|
1062
|
+
}
|
|
1161
1063
|
}
|
|
1162
1064
|
},
|
|
1163
|
-
|
|
1164
|
-
serializedName: "
|
|
1065
|
+
canDelete: {
|
|
1066
|
+
serializedName: "manifest.changeableAttributes.deleteEnabled",
|
|
1165
1067
|
type: {
|
|
1166
|
-
name: "
|
|
1068
|
+
name: "Boolean"
|
|
1167
1069
|
}
|
|
1168
1070
|
},
|
|
1169
|
-
|
|
1170
|
-
serializedName: "
|
|
1071
|
+
canWrite: {
|
|
1072
|
+
serializedName: "manifest.changeableAttributes.writeEnabled",
|
|
1073
|
+
type: {
|
|
1074
|
+
name: "Boolean"
|
|
1075
|
+
}
|
|
1076
|
+
},
|
|
1077
|
+
canList: {
|
|
1078
|
+
serializedName: "manifest.changeableAttributes.listEnabled",
|
|
1079
|
+
type: {
|
|
1080
|
+
name: "Boolean"
|
|
1081
|
+
}
|
|
1082
|
+
},
|
|
1083
|
+
canRead: {
|
|
1084
|
+
serializedName: "manifest.changeableAttributes.readEnabled",
|
|
1171
1085
|
type: {
|
|
1172
|
-
name: "
|
|
1086
|
+
name: "Boolean"
|
|
1173
1087
|
}
|
|
1174
|
-
}
|
|
1175
|
-
|
|
1176
|
-
|
|
1088
|
+
}
|
|
1089
|
+
}
|
|
1090
|
+
}
|
|
1091
|
+
};
|
|
1092
|
+
const AcrRefreshToken = {
|
|
1093
|
+
type: {
|
|
1094
|
+
name: "Composite",
|
|
1095
|
+
className: "AcrRefreshToken",
|
|
1096
|
+
modelProperties: {
|
|
1097
|
+
refreshToken: {
|
|
1098
|
+
serializedName: "refresh_token",
|
|
1177
1099
|
type: {
|
|
1178
1100
|
name: "String"
|
|
1179
1101
|
}
|
|
1180
|
-
}
|
|
1181
|
-
|
|
1182
|
-
|
|
1102
|
+
}
|
|
1103
|
+
}
|
|
1104
|
+
}
|
|
1105
|
+
};
|
|
1106
|
+
const AcrAccessToken = {
|
|
1107
|
+
type: {
|
|
1108
|
+
name: "Composite",
|
|
1109
|
+
className: "AcrAccessToken",
|
|
1110
|
+
modelProperties: {
|
|
1111
|
+
accessToken: {
|
|
1112
|
+
serializedName: "access_token",
|
|
1183
1113
|
type: {
|
|
1184
1114
|
name: "String"
|
|
1185
1115
|
}
|
|
1186
|
-
}
|
|
1116
|
+
}
|
|
1117
|
+
}
|
|
1118
|
+
}
|
|
1119
|
+
};
|
|
1120
|
+
const RepositoryTags = {
|
|
1121
|
+
type: {
|
|
1122
|
+
name: "Composite",
|
|
1123
|
+
className: "RepositoryTags",
|
|
1124
|
+
modelProperties: {
|
|
1187
1125
|
name: {
|
|
1188
|
-
serializedName: "
|
|
1126
|
+
serializedName: "name",
|
|
1189
1127
|
type: {
|
|
1190
1128
|
name: "String"
|
|
1191
1129
|
}
|
|
1192
1130
|
},
|
|
1193
|
-
|
|
1194
|
-
serializedName: "
|
|
1131
|
+
tags: {
|
|
1132
|
+
serializedName: "tags",
|
|
1195
1133
|
type: {
|
|
1196
|
-
name: "
|
|
1134
|
+
name: "Sequence",
|
|
1135
|
+
element: {
|
|
1136
|
+
type: {
|
|
1137
|
+
name: "String"
|
|
1138
|
+
}
|
|
1139
|
+
}
|
|
1140
|
+
}
|
|
1141
|
+
}
|
|
1142
|
+
}
|
|
1143
|
+
}
|
|
1144
|
+
};
|
|
1145
|
+
const DeleteRepositoryResult = {
|
|
1146
|
+
type: {
|
|
1147
|
+
name: "Composite",
|
|
1148
|
+
className: "DeleteRepositoryResult",
|
|
1149
|
+
modelProperties: {
|
|
1150
|
+
deletedManifests: {
|
|
1151
|
+
serializedName: "manifestsDeleted",
|
|
1152
|
+
readOnly: true,
|
|
1153
|
+
type: {
|
|
1154
|
+
name: "Sequence",
|
|
1155
|
+
element: {
|
|
1156
|
+
type: {
|
|
1157
|
+
name: "String"
|
|
1158
|
+
}
|
|
1159
|
+
}
|
|
1197
1160
|
}
|
|
1198
1161
|
},
|
|
1199
|
-
|
|
1200
|
-
serializedName: "
|
|
1162
|
+
deletedTags: {
|
|
1163
|
+
serializedName: "tagsDeleted",
|
|
1164
|
+
readOnly: true,
|
|
1201
1165
|
type: {
|
|
1202
|
-
name: "
|
|
1166
|
+
name: "Sequence",
|
|
1167
|
+
element: {
|
|
1168
|
+
type: {
|
|
1169
|
+
name: "String"
|
|
1170
|
+
}
|
|
1171
|
+
}
|
|
1203
1172
|
}
|
|
1204
1173
|
}
|
|
1205
1174
|
}
|
|
@@ -1235,98 +1204,82 @@ const ManifestAttributesManifest = {
|
|
|
1235
1204
|
}
|
|
1236
1205
|
}
|
|
1237
1206
|
}
|
|
1238
|
-
},
|
|
1239
|
-
quarantineTag: {
|
|
1240
|
-
serializedName: "quarantineTag",
|
|
1241
|
-
type: {
|
|
1242
|
-
name: "String"
|
|
1243
|
-
}
|
|
1244
1207
|
}
|
|
1245
1208
|
}
|
|
1246
1209
|
}
|
|
1247
1210
|
};
|
|
1248
|
-
const
|
|
1211
|
+
const Paths108HwamOauth2ExchangePostRequestbodyContentApplicationXWwwFormUrlencodedSchema = {
|
|
1249
1212
|
type: {
|
|
1250
1213
|
name: "Composite",
|
|
1251
|
-
className: "
|
|
1214
|
+
className: "Paths108HwamOauth2ExchangePostRequestbodyContentApplicationXWwwFormUrlencodedSchema",
|
|
1252
1215
|
modelProperties: {
|
|
1253
|
-
|
|
1254
|
-
serializedName: "
|
|
1216
|
+
grantType: {
|
|
1217
|
+
serializedName: "grant_type",
|
|
1218
|
+
required: true,
|
|
1255
1219
|
type: {
|
|
1256
1220
|
name: "String"
|
|
1257
1221
|
}
|
|
1258
1222
|
},
|
|
1259
|
-
|
|
1260
|
-
serializedName: "
|
|
1223
|
+
service: {
|
|
1224
|
+
serializedName: "service",
|
|
1225
|
+
required: true,
|
|
1261
1226
|
type: {
|
|
1262
|
-
name: "
|
|
1227
|
+
name: "String"
|
|
1263
1228
|
}
|
|
1264
1229
|
},
|
|
1265
|
-
|
|
1266
|
-
serializedName: "
|
|
1230
|
+
tenant: {
|
|
1231
|
+
serializedName: "tenant",
|
|
1267
1232
|
type: {
|
|
1268
1233
|
name: "String"
|
|
1269
1234
|
}
|
|
1270
1235
|
},
|
|
1271
|
-
|
|
1272
|
-
serializedName: "
|
|
1236
|
+
refreshToken: {
|
|
1237
|
+
serializedName: "refresh_token",
|
|
1273
1238
|
type: {
|
|
1274
|
-
name: "
|
|
1275
|
-
|
|
1239
|
+
name: "String"
|
|
1240
|
+
}
|
|
1241
|
+
},
|
|
1242
|
+
aadAccessToken: {
|
|
1243
|
+
serializedName: "access_token",
|
|
1244
|
+
type: {
|
|
1245
|
+
name: "String"
|
|
1276
1246
|
}
|
|
1277
1247
|
}
|
|
1278
1248
|
}
|
|
1279
1249
|
}
|
|
1280
1250
|
};
|
|
1281
|
-
const
|
|
1251
|
+
const PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema = {
|
|
1282
1252
|
type: {
|
|
1283
1253
|
name: "Composite",
|
|
1284
|
-
className: "
|
|
1254
|
+
className: "PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema",
|
|
1285
1255
|
modelProperties: {
|
|
1286
|
-
|
|
1287
|
-
serializedName: "
|
|
1288
|
-
|
|
1289
|
-
name: "String"
|
|
1290
|
-
}
|
|
1291
|
-
},
|
|
1292
|
-
os: {
|
|
1293
|
-
serializedName: "os",
|
|
1256
|
+
service: {
|
|
1257
|
+
serializedName: "service",
|
|
1258
|
+
required: true,
|
|
1294
1259
|
type: {
|
|
1295
1260
|
name: "String"
|
|
1296
1261
|
}
|
|
1297
1262
|
},
|
|
1298
|
-
|
|
1299
|
-
serializedName: "
|
|
1263
|
+
scope: {
|
|
1264
|
+
serializedName: "scope",
|
|
1265
|
+
required: true,
|
|
1300
1266
|
type: {
|
|
1301
1267
|
name: "String"
|
|
1302
1268
|
}
|
|
1303
1269
|
},
|
|
1304
|
-
|
|
1305
|
-
serializedName: "
|
|
1306
|
-
|
|
1307
|
-
name: "Sequence",
|
|
1308
|
-
element: {
|
|
1309
|
-
type: {
|
|
1310
|
-
name: "String"
|
|
1311
|
-
}
|
|
1312
|
-
}
|
|
1313
|
-
}
|
|
1314
|
-
},
|
|
1315
|
-
variant: {
|
|
1316
|
-
serializedName: "variant",
|
|
1270
|
+
acrRefreshToken: {
|
|
1271
|
+
serializedName: "refresh_token",
|
|
1272
|
+
required: true,
|
|
1317
1273
|
type: {
|
|
1318
1274
|
name: "String"
|
|
1319
1275
|
}
|
|
1320
1276
|
},
|
|
1321
|
-
|
|
1322
|
-
serializedName: "
|
|
1277
|
+
grantType: {
|
|
1278
|
+
serializedName: "grant_type",
|
|
1279
|
+
required: true,
|
|
1323
1280
|
type: {
|
|
1324
|
-
name: "
|
|
1325
|
-
|
|
1326
|
-
type: {
|
|
1327
|
-
name: "String"
|
|
1328
|
-
}
|
|
1329
|
-
}
|
|
1281
|
+
name: "Enum",
|
|
1282
|
+
allowedValues: ["refresh_token", "password"]
|
|
1330
1283
|
}
|
|
1331
1284
|
}
|
|
1332
1285
|
}
|
|
@@ -1926,6 +1879,15 @@ var Mappers = /*#__PURE__*/Object.freeze({
|
|
|
1926
1879
|
AcrErrors: AcrErrors,
|
|
1927
1880
|
AcrErrorInfo: AcrErrorInfo,
|
|
1928
1881
|
Manifest: Manifest,
|
|
1882
|
+
ManifestListAttributes: ManifestListAttributes,
|
|
1883
|
+
Platform: Platform,
|
|
1884
|
+
Descriptor: Descriptor,
|
|
1885
|
+
Annotations: Annotations,
|
|
1886
|
+
FsLayer: FsLayer,
|
|
1887
|
+
History: History,
|
|
1888
|
+
ImageSignature: ImageSignature,
|
|
1889
|
+
Jwk: Jwk,
|
|
1890
|
+
JWKHeader: JWKHeader,
|
|
1929
1891
|
Repositories: Repositories,
|
|
1930
1892
|
ContainerRepositoryProperties: ContainerRepositoryProperties,
|
|
1931
1893
|
RepositoryWriteableProperties: RepositoryWriteableProperties,
|
|
@@ -1938,23 +1900,14 @@ var Mappers = /*#__PURE__*/Object.freeze({
|
|
|
1938
1900
|
ArtifactManifestPlatform: ArtifactManifestPlatform,
|
|
1939
1901
|
ManifestWriteableProperties: ManifestWriteableProperties,
|
|
1940
1902
|
ArtifactManifestProperties: ArtifactManifestProperties,
|
|
1941
|
-
Paths108HwamOauth2ExchangePostRequestbodyContentApplicationXWwwFormUrlencodedSchema: Paths108HwamOauth2ExchangePostRequestbodyContentApplicationXWwwFormUrlencodedSchema,
|
|
1942
1903
|
AcrRefreshToken: AcrRefreshToken,
|
|
1943
|
-
PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema: PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema,
|
|
1944
1904
|
AcrAccessToken: AcrAccessToken,
|
|
1945
1905
|
RepositoryTags: RepositoryTags,
|
|
1946
|
-
ImageSignature: ImageSignature,
|
|
1947
|
-
Jwk: Jwk,
|
|
1948
|
-
JWKHeader: JWKHeader,
|
|
1949
|
-
History: History,
|
|
1950
1906
|
DeleteRepositoryResult: DeleteRepositoryResult,
|
|
1951
|
-
FsLayer: FsLayer,
|
|
1952
|
-
Descriptor: Descriptor,
|
|
1953
|
-
Annotations: Annotations,
|
|
1954
1907
|
TagAttributesTag: TagAttributesTag,
|
|
1955
1908
|
ManifestAttributesManifest: ManifestAttributesManifest,
|
|
1956
|
-
|
|
1957
|
-
|
|
1909
|
+
Paths108HwamOauth2ExchangePostRequestbodyContentApplicationXWwwFormUrlencodedSchema: Paths108HwamOauth2ExchangePostRequestbodyContentApplicationXWwwFormUrlencodedSchema,
|
|
1910
|
+
PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema: PathsV3R3RxOauth2TokenPostRequestbodyContentApplicationXWwwFormUrlencodedSchema,
|
|
1958
1911
|
ManifestWrapper: ManifestWrapper,
|
|
1959
1912
|
ManifestList: ManifestList,
|
|
1960
1913
|
V2Manifest: V2Manifest,
|
|
@@ -2071,6 +2024,16 @@ const n = {
|
|
|
2071
2024
|
}
|
|
2072
2025
|
}
|
|
2073
2026
|
};
|
|
2027
|
+
const apiVersion = {
|
|
2028
|
+
parameterPath: "apiVersion",
|
|
2029
|
+
mapper: {
|
|
2030
|
+
serializedName: "api-version",
|
|
2031
|
+
required: true,
|
|
2032
|
+
type: {
|
|
2033
|
+
name: "String"
|
|
2034
|
+
}
|
|
2035
|
+
}
|
|
2036
|
+
};
|
|
2074
2037
|
const contentType1 = {
|
|
2075
2038
|
parameterPath: ["options", "contentType"],
|
|
2076
2039
|
mapper: {
|
|
@@ -2247,9 +2210,52 @@ const contentType3 = {
|
|
|
2247
2210
|
}
|
|
2248
2211
|
}
|
|
2249
2212
|
};
|
|
2250
|
-
const
|
|
2251
|
-
parameterPath:
|
|
2252
|
-
mapper:
|
|
2213
|
+
const grantType = {
|
|
2214
|
+
parameterPath: "grantType",
|
|
2215
|
+
mapper: {
|
|
2216
|
+
serializedName: "grant_type",
|
|
2217
|
+
required: true,
|
|
2218
|
+
type: {
|
|
2219
|
+
name: "String"
|
|
2220
|
+
}
|
|
2221
|
+
}
|
|
2222
|
+
};
|
|
2223
|
+
const service = {
|
|
2224
|
+
parameterPath: "service",
|
|
2225
|
+
mapper: {
|
|
2226
|
+
serializedName: "service",
|
|
2227
|
+
required: true,
|
|
2228
|
+
type: {
|
|
2229
|
+
name: "String"
|
|
2230
|
+
}
|
|
2231
|
+
}
|
|
2232
|
+
};
|
|
2233
|
+
const tenant = {
|
|
2234
|
+
parameterPath: ["options", "tenant"],
|
|
2235
|
+
mapper: {
|
|
2236
|
+
serializedName: "tenant",
|
|
2237
|
+
type: {
|
|
2238
|
+
name: "String"
|
|
2239
|
+
}
|
|
2240
|
+
}
|
|
2241
|
+
};
|
|
2242
|
+
const refreshToken = {
|
|
2243
|
+
parameterPath: ["options", "refreshToken"],
|
|
2244
|
+
mapper: {
|
|
2245
|
+
serializedName: "refresh_token",
|
|
2246
|
+
type: {
|
|
2247
|
+
name: "String"
|
|
2248
|
+
}
|
|
2249
|
+
}
|
|
2250
|
+
};
|
|
2251
|
+
const accessToken = {
|
|
2252
|
+
parameterPath: ["options", "accessToken"],
|
|
2253
|
+
mapper: {
|
|
2254
|
+
serializedName: "access_token",
|
|
2255
|
+
type: {
|
|
2256
|
+
name: "String"
|
|
2257
|
+
}
|
|
2258
|
+
}
|
|
2253
2259
|
};
|
|
2254
2260
|
const accept4 = {
|
|
2255
2261
|
parameterPath: "accept",
|
|
@@ -2262,9 +2268,36 @@ const accept4 = {
|
|
|
2262
2268
|
}
|
|
2263
2269
|
}
|
|
2264
2270
|
};
|
|
2265
|
-
const
|
|
2266
|
-
parameterPath:
|
|
2267
|
-
mapper:
|
|
2271
|
+
const scope = {
|
|
2272
|
+
parameterPath: "scope",
|
|
2273
|
+
mapper: {
|
|
2274
|
+
serializedName: "scope",
|
|
2275
|
+
required: true,
|
|
2276
|
+
type: {
|
|
2277
|
+
name: "String"
|
|
2278
|
+
}
|
|
2279
|
+
}
|
|
2280
|
+
};
|
|
2281
|
+
const refreshToken1 = {
|
|
2282
|
+
parameterPath: "refreshToken",
|
|
2283
|
+
mapper: {
|
|
2284
|
+
serializedName: "refresh_token",
|
|
2285
|
+
required: true,
|
|
2286
|
+
type: {
|
|
2287
|
+
name: "String"
|
|
2288
|
+
}
|
|
2289
|
+
}
|
|
2290
|
+
};
|
|
2291
|
+
const grantType1 = {
|
|
2292
|
+
parameterPath: "grantType",
|
|
2293
|
+
mapper: {
|
|
2294
|
+
serializedName: "grant_type",
|
|
2295
|
+
required: true,
|
|
2296
|
+
type: {
|
|
2297
|
+
name: "Enum",
|
|
2298
|
+
allowedValues: ["refresh_token", "password"]
|
|
2299
|
+
}
|
|
2300
|
+
}
|
|
2268
2301
|
};
|
|
2269
2302
|
|
|
2270
2303
|
/*
|
|
@@ -2274,8 +2307,8 @@ const acrRefreshToken = {
|
|
|
2274
2307
|
* Code generated by Microsoft (R) AutoRest Code Generator.
|
|
2275
2308
|
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
|
2276
2309
|
*/
|
|
2277
|
-
/** Class
|
|
2278
|
-
class
|
|
2310
|
+
/** Class containing ContainerRegistry operations. */
|
|
2311
|
+
class ContainerRegistryImpl {
|
|
2279
2312
|
/**
|
|
2280
2313
|
* Initialize a new instance of the class ContainerRegistry class.
|
|
2281
2314
|
* @param client Reference to the service client
|
|
@@ -2458,7 +2491,7 @@ const getManifestOperationSpec = {
|
|
|
2458
2491
|
httpMethod: "GET",
|
|
2459
2492
|
responses: {
|
|
2460
2493
|
200: {
|
|
2461
|
-
bodyMapper:
|
|
2494
|
+
bodyMapper: ManifestWrapper
|
|
2462
2495
|
},
|
|
2463
2496
|
default: {
|
|
2464
2497
|
bodyMapper: AcrErrors
|
|
@@ -2512,7 +2545,7 @@ const getRepositoriesOperationSpec = {
|
|
|
2512
2545
|
bodyMapper: AcrErrors
|
|
2513
2546
|
}
|
|
2514
2547
|
},
|
|
2515
|
-
queryParameters: [last, n],
|
|
2548
|
+
queryParameters: [last, n, apiVersion],
|
|
2516
2549
|
urlParameters: [url],
|
|
2517
2550
|
headerParameters: [accept],
|
|
2518
2551
|
serializer
|
|
@@ -2528,6 +2561,7 @@ const getPropertiesOperationSpec = {
|
|
|
2528
2561
|
bodyMapper: AcrErrors
|
|
2529
2562
|
}
|
|
2530
2563
|
},
|
|
2564
|
+
queryParameters: [apiVersion],
|
|
2531
2565
|
urlParameters: [url, name],
|
|
2532
2566
|
headerParameters: [accept],
|
|
2533
2567
|
serializer
|
|
@@ -2542,6 +2576,7 @@ const deleteRepositoryOperationSpec = {
|
|
|
2542
2576
|
bodyMapper: AcrErrors
|
|
2543
2577
|
}
|
|
2544
2578
|
},
|
|
2579
|
+
queryParameters: [apiVersion],
|
|
2545
2580
|
urlParameters: [url, name],
|
|
2546
2581
|
headerParameters: [accept],
|
|
2547
2582
|
serializer
|
|
@@ -2558,6 +2593,7 @@ const updatePropertiesOperationSpec = {
|
|
|
2558
2593
|
}
|
|
2559
2594
|
},
|
|
2560
2595
|
requestBody: value,
|
|
2596
|
+
queryParameters: [apiVersion],
|
|
2561
2597
|
urlParameters: [url, name],
|
|
2562
2598
|
headerParameters: [accept, contentType1],
|
|
2563
2599
|
mediaType: "json",
|
|
@@ -2578,6 +2614,7 @@ const getTagsOperationSpec = {
|
|
|
2578
2614
|
queryParameters: [
|
|
2579
2615
|
last,
|
|
2580
2616
|
n,
|
|
2617
|
+
apiVersion,
|
|
2581
2618
|
orderby,
|
|
2582
2619
|
digest
|
|
2583
2620
|
],
|
|
@@ -2596,6 +2633,7 @@ const getTagPropertiesOperationSpec = {
|
|
|
2596
2633
|
bodyMapper: AcrErrors
|
|
2597
2634
|
}
|
|
2598
2635
|
},
|
|
2636
|
+
queryParameters: [apiVersion],
|
|
2599
2637
|
urlParameters: [url, name, reference],
|
|
2600
2638
|
headerParameters: [accept],
|
|
2601
2639
|
serializer
|
|
@@ -2612,6 +2650,7 @@ const updateTagAttributesOperationSpec = {
|
|
|
2612
2650
|
}
|
|
2613
2651
|
},
|
|
2614
2652
|
requestBody: value1,
|
|
2653
|
+
queryParameters: [apiVersion],
|
|
2615
2654
|
urlParameters: [url, name, reference],
|
|
2616
2655
|
headerParameters: [accept, contentType1],
|
|
2617
2656
|
mediaType: "json",
|
|
@@ -2627,6 +2666,7 @@ const deleteTagOperationSpec = {
|
|
|
2627
2666
|
bodyMapper: AcrErrors
|
|
2628
2667
|
}
|
|
2629
2668
|
},
|
|
2669
|
+
queryParameters: [apiVersion],
|
|
2630
2670
|
urlParameters: [url, name, reference],
|
|
2631
2671
|
headerParameters: [accept],
|
|
2632
2672
|
serializer
|
|
@@ -2643,7 +2683,12 @@ const getManifestsOperationSpec = {
|
|
|
2643
2683
|
bodyMapper: AcrErrors
|
|
2644
2684
|
}
|
|
2645
2685
|
},
|
|
2646
|
-
queryParameters: [
|
|
2686
|
+
queryParameters: [
|
|
2687
|
+
last,
|
|
2688
|
+
n,
|
|
2689
|
+
apiVersion,
|
|
2690
|
+
orderby
|
|
2691
|
+
],
|
|
2647
2692
|
urlParameters: [url, name],
|
|
2648
2693
|
headerParameters: [accept],
|
|
2649
2694
|
serializer
|
|
@@ -2659,6 +2704,7 @@ const getManifestPropertiesOperationSpec = {
|
|
|
2659
2704
|
bodyMapper: AcrErrors
|
|
2660
2705
|
}
|
|
2661
2706
|
},
|
|
2707
|
+
queryParameters: [apiVersion],
|
|
2662
2708
|
urlParameters: [url, name, digest1],
|
|
2663
2709
|
headerParameters: [accept],
|
|
2664
2710
|
serializer
|
|
@@ -2675,6 +2721,7 @@ const updateManifestPropertiesOperationSpec = {
|
|
|
2675
2721
|
}
|
|
2676
2722
|
},
|
|
2677
2723
|
requestBody: value2,
|
|
2724
|
+
queryParameters: [apiVersion],
|
|
2678
2725
|
urlParameters: [url, name, digest1],
|
|
2679
2726
|
headerParameters: [accept, contentType1],
|
|
2680
2727
|
mediaType: "json",
|
|
@@ -2692,7 +2739,7 @@ const getRepositoriesNextOperationSpec = {
|
|
|
2692
2739
|
bodyMapper: AcrErrors
|
|
2693
2740
|
}
|
|
2694
2741
|
},
|
|
2695
|
-
queryParameters: [last, n],
|
|
2742
|
+
queryParameters: [last, n, apiVersion],
|
|
2696
2743
|
urlParameters: [url, nextLink],
|
|
2697
2744
|
headerParameters: [accept],
|
|
2698
2745
|
serializer
|
|
@@ -2712,6 +2759,7 @@ const getTagsNextOperationSpec = {
|
|
|
2712
2759
|
queryParameters: [
|
|
2713
2760
|
last,
|
|
2714
2761
|
n,
|
|
2762
|
+
apiVersion,
|
|
2715
2763
|
orderby,
|
|
2716
2764
|
digest
|
|
2717
2765
|
],
|
|
@@ -2731,7 +2779,12 @@ const getManifestsNextOperationSpec = {
|
|
|
2731
2779
|
bodyMapper: AcrErrors
|
|
2732
2780
|
}
|
|
2733
2781
|
},
|
|
2734
|
-
queryParameters: [
|
|
2782
|
+
queryParameters: [
|
|
2783
|
+
last,
|
|
2784
|
+
n,
|
|
2785
|
+
apiVersion,
|
|
2786
|
+
orderby
|
|
2787
|
+
],
|
|
2735
2788
|
urlParameters: [url, name, nextLink],
|
|
2736
2789
|
headerParameters: [accept],
|
|
2737
2790
|
serializer
|
|
@@ -2744,8 +2797,8 @@ const getManifestsNextOperationSpec = {
|
|
|
2744
2797
|
* Code generated by Microsoft (R) AutoRest Code Generator.
|
|
2745
2798
|
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
|
2746
2799
|
*/
|
|
2747
|
-
/** Class
|
|
2748
|
-
class
|
|
2800
|
+
/** Class containing ContainerRegistryBlob operations. */
|
|
2801
|
+
class ContainerRegistryBlobImpl {
|
|
2749
2802
|
/**
|
|
2750
2803
|
* Initialize a new instance of the class ContainerRegistryBlob class.
|
|
2751
2804
|
* @param client Reference to the service client
|
|
@@ -3053,8 +3106,8 @@ const checkChunkExistsOperationSpec = {
|
|
|
3053
3106
|
* Code generated by Microsoft (R) AutoRest Code Generator.
|
|
3054
3107
|
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
|
|
3055
3108
|
*/
|
|
3056
|
-
/** Class
|
|
3057
|
-
class
|
|
3109
|
+
/** Class containing Authentication operations. */
|
|
3110
|
+
class AuthenticationImpl {
|
|
3058
3111
|
/**
|
|
3059
3112
|
* Initialize a new instance of the class Authentication class.
|
|
3060
3113
|
* @param client Reference to the service client
|
|
@@ -3064,17 +3117,24 @@ class Authentication {
|
|
|
3064
3117
|
}
|
|
3065
3118
|
/**
|
|
3066
3119
|
* Exchange AAD tokens for an ACR refresh Token
|
|
3120
|
+
* @param grantType Can take a value of access_token_refresh_token, or access_token, or refresh_token
|
|
3121
|
+
* @param service Indicates the name of your Azure container registry.
|
|
3067
3122
|
* @param options The options parameters.
|
|
3068
3123
|
*/
|
|
3069
|
-
exchangeAadAccessTokenForAcrRefreshToken(options) {
|
|
3070
|
-
return this.client.sendOperationRequest({ options }, exchangeAadAccessTokenForAcrRefreshTokenOperationSpec);
|
|
3124
|
+
exchangeAadAccessTokenForAcrRefreshToken(grantType, service, options) {
|
|
3125
|
+
return this.client.sendOperationRequest({ grantType, service, options }, exchangeAadAccessTokenForAcrRefreshTokenOperationSpec);
|
|
3071
3126
|
}
|
|
3072
3127
|
/**
|
|
3073
3128
|
* Exchange ACR Refresh token for an ACR Access Token
|
|
3129
|
+
* @param service Indicates the name of your Azure container registry.
|
|
3130
|
+
* @param scope Which is expected to be a valid scope, and can be specified more than once for multiple
|
|
3131
|
+
* scope requests. You obtained this from the Www-Authenticate response header from the challenge.
|
|
3132
|
+
* @param refreshToken Must be a valid ACR refresh token
|
|
3133
|
+
* @param grantType Grant type is expected to be refresh_token
|
|
3074
3134
|
* @param options The options parameters.
|
|
3075
3135
|
*/
|
|
3076
|
-
exchangeAcrRefreshTokenForAcrAccessToken(options) {
|
|
3077
|
-
return this.client.sendOperationRequest({ options }, exchangeAcrRefreshTokenForAcrAccessTokenOperationSpec);
|
|
3136
|
+
exchangeAcrRefreshTokenForAcrAccessToken(service, scope, refreshToken, grantType, options) {
|
|
3137
|
+
return this.client.sendOperationRequest({ service, scope, refreshToken, grantType, options }, exchangeAcrRefreshTokenForAcrAccessTokenOperationSpec);
|
|
3078
3138
|
}
|
|
3079
3139
|
}
|
|
3080
3140
|
// Operation Specifications
|
|
@@ -3090,7 +3150,14 @@ const exchangeAadAccessTokenForAcrRefreshTokenOperationSpec = {
|
|
|
3090
3150
|
bodyMapper: AcrErrors
|
|
3091
3151
|
}
|
|
3092
3152
|
},
|
|
3093
|
-
formDataParameters: [
|
|
3153
|
+
formDataParameters: [
|
|
3154
|
+
grantType,
|
|
3155
|
+
service,
|
|
3156
|
+
tenant,
|
|
3157
|
+
refreshToken,
|
|
3158
|
+
accessToken
|
|
3159
|
+
],
|
|
3160
|
+
queryParameters: [apiVersion],
|
|
3094
3161
|
urlParameters: [url],
|
|
3095
3162
|
headerParameters: [contentType3, accept4],
|
|
3096
3163
|
serializer: serializer$2
|
|
@@ -3106,7 +3173,13 @@ const exchangeAcrRefreshTokenForAcrAccessTokenOperationSpec = {
|
|
|
3106
3173
|
bodyMapper: AcrErrors
|
|
3107
3174
|
}
|
|
3108
3175
|
},
|
|
3109
|
-
formDataParameters: [
|
|
3176
|
+
formDataParameters: [
|
|
3177
|
+
service,
|
|
3178
|
+
scope,
|
|
3179
|
+
refreshToken1,
|
|
3180
|
+
grantType1
|
|
3181
|
+
],
|
|
3182
|
+
queryParameters: [apiVersion],
|
|
3110
3183
|
urlParameters: [url],
|
|
3111
3184
|
headerParameters: [contentType3, accept4],
|
|
3112
3185
|
serializer: serializer$2
|
|
@@ -3124,12 +3197,16 @@ class GeneratedClientContext extends coreClient.ServiceClient {
|
|
|
3124
3197
|
/**
|
|
3125
3198
|
* Initializes a new instance of the GeneratedClientContext class.
|
|
3126
3199
|
* @param url Registry login URL
|
|
3200
|
+
* @param apiVersion Api Version
|
|
3127
3201
|
* @param options The parameter options
|
|
3128
3202
|
*/
|
|
3129
|
-
constructor(url, options) {
|
|
3203
|
+
constructor(url, apiVersion, options) {
|
|
3130
3204
|
if (url === undefined) {
|
|
3131
3205
|
throw new Error("'url' cannot be null");
|
|
3132
3206
|
}
|
|
3207
|
+
if (apiVersion === undefined) {
|
|
3208
|
+
throw new Error("'apiVersion' cannot be null");
|
|
3209
|
+
}
|
|
3133
3210
|
// Initializing default values for options
|
|
3134
3211
|
if (!options) {
|
|
3135
3212
|
options = {};
|
|
@@ -3137,10 +3214,17 @@ class GeneratedClientContext extends coreClient.ServiceClient {
|
|
|
3137
3214
|
const defaults = {
|
|
3138
3215
|
requestContentType: "application/json; charset=utf-8"
|
|
3139
3216
|
};
|
|
3140
|
-
const
|
|
3217
|
+
const packageDetails = `azsdk-js-container-registry/1.0.0`;
|
|
3218
|
+
const userAgentPrefix = options.userAgentOptions && options.userAgentOptions.userAgentPrefix
|
|
3219
|
+
? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
|
|
3220
|
+
: `${packageDetails}`;
|
|
3221
|
+
const optionsWithDefaults = Object.assign(Object.assign(Object.assign({}, defaults), options), { userAgentOptions: {
|
|
3222
|
+
userAgentPrefix
|
|
3223
|
+
}, baseUri: options.endpoint || "{url}" });
|
|
3141
3224
|
super(optionsWithDefaults);
|
|
3142
3225
|
// Parameter assignments
|
|
3143
3226
|
this.url = url;
|
|
3227
|
+
this.apiVersion = apiVersion;
|
|
3144
3228
|
}
|
|
3145
3229
|
}
|
|
3146
3230
|
|
|
@@ -3156,13 +3240,14 @@ class GeneratedClient extends GeneratedClientContext {
|
|
|
3156
3240
|
/**
|
|
3157
3241
|
* Initializes a new instance of the GeneratedClient class.
|
|
3158
3242
|
* @param url Registry login URL
|
|
3243
|
+
* @param apiVersion Api Version
|
|
3159
3244
|
* @param options The parameter options
|
|
3160
3245
|
*/
|
|
3161
|
-
constructor(url, options) {
|
|
3162
|
-
super(url, options);
|
|
3163
|
-
this.containerRegistry = new
|
|
3164
|
-
this.containerRegistryBlob = new
|
|
3165
|
-
this.authentication = new
|
|
3246
|
+
constructor(url, apiVersion, options) {
|
|
3247
|
+
super(url, apiVersion, options);
|
|
3248
|
+
this.containerRegistry = new ContainerRegistryImpl(this);
|
|
3249
|
+
this.containerRegistryBlob = new ContainerRegistryBlobImpl(this);
|
|
3250
|
+
this.authentication = new AuthenticationImpl(this);
|
|
3166
3251
|
}
|
|
3167
3252
|
}
|
|
3168
3253
|
|
|
@@ -3177,7 +3262,7 @@ class GeneratedClient extends GeneratedClientContext {
|
|
|
3177
3262
|
*/
|
|
3178
3263
|
const createSpan = coreTracing.createSpanFunction({
|
|
3179
3264
|
namespace: "Azure.Containers",
|
|
3180
|
-
packagePrefix: "Azure.Containers.ContainerRegistry"
|
|
3265
|
+
packagePrefix: "Azure.Containers.ContainerRegistry",
|
|
3181
3266
|
});
|
|
3182
3267
|
|
|
3183
3268
|
// Copyright (c) Microsoft Corporation.
|
|
@@ -3222,6 +3307,7 @@ function parseWWWAuthenticate(wwwAuthenticate) {
|
|
|
3222
3307
|
}
|
|
3223
3308
|
|
|
3224
3309
|
// Copyright (c) Microsoft Corporation.
|
|
3310
|
+
// Licensed under the MIT license.
|
|
3225
3311
|
function delay(t, value) {
|
|
3226
3312
|
return new Promise((resolve) => setTimeout(() => resolve(value), t));
|
|
3227
3313
|
}
|
|
@@ -3229,7 +3315,7 @@ function delay(t, value) {
|
|
|
3229
3315
|
const DEFAULT_CYCLER_OPTIONS = {
|
|
3230
3316
|
forcedRefreshWindowInMs: 1000,
|
|
3231
3317
|
retryIntervalInMs: 3000,
|
|
3232
|
-
refreshWindowInMs: 1000 * 60 * 2 // Start refreshing 2m before expiry
|
|
3318
|
+
refreshWindowInMs: 1000 * 60 * 2, // Start refreshing 2m before expiry
|
|
3233
3319
|
};
|
|
3234
3320
|
/**
|
|
3235
3321
|
* Converts an an unreliable access token getter (which may resolve with null)
|
|
@@ -3241,37 +3327,33 @@ const DEFAULT_CYCLER_OPTIONS = {
|
|
|
3241
3327
|
* @param refreshTimeout - The timestamp after which the refresh attempt will fail, throwing an exception.
|
|
3242
3328
|
* @returns - A promise that, if it resolves, will resolve with an access token.
|
|
3243
3329
|
*/
|
|
3244
|
-
function beginRefresh(getAccessToken, retryIntervalInMs, refreshTimeout) {
|
|
3245
|
-
|
|
3246
|
-
|
|
3247
|
-
|
|
3248
|
-
|
|
3249
|
-
|
|
3250
|
-
|
|
3251
|
-
|
|
3252
|
-
|
|
3253
|
-
|
|
3254
|
-
|
|
3255
|
-
return null;
|
|
3256
|
-
}
|
|
3257
|
-
}
|
|
3258
|
-
else {
|
|
3259
|
-
const finalToken = yield getAccessToken();
|
|
3260
|
-
// Timeout is up, so throw if it's still null
|
|
3261
|
-
if (finalToken === null) {
|
|
3262
|
-
throw new Error("Failed to refresh access token.");
|
|
3263
|
-
}
|
|
3264
|
-
return finalToken;
|
|
3265
|
-
}
|
|
3266
|
-
});
|
|
3330
|
+
async function beginRefresh(getAccessToken, retryIntervalInMs, refreshTimeout) {
|
|
3331
|
+
// This wrapper handles exceptions gracefully as long as we haven't exceeded
|
|
3332
|
+
// the timeout.
|
|
3333
|
+
async function tryGetAccessToken() {
|
|
3334
|
+
if (Date.now() < refreshTimeout) {
|
|
3335
|
+
try {
|
|
3336
|
+
return await getAccessToken();
|
|
3337
|
+
}
|
|
3338
|
+
catch (_a) {
|
|
3339
|
+
return null;
|
|
3340
|
+
}
|
|
3267
3341
|
}
|
|
3268
|
-
|
|
3269
|
-
|
|
3270
|
-
|
|
3271
|
-
|
|
3342
|
+
else {
|
|
3343
|
+
const finalToken = await getAccessToken();
|
|
3344
|
+
// Timeout is up, so throw if it's still null
|
|
3345
|
+
if (finalToken === null) {
|
|
3346
|
+
throw new Error("Failed to refresh access token.");
|
|
3347
|
+
}
|
|
3348
|
+
return finalToken;
|
|
3272
3349
|
}
|
|
3273
|
-
|
|
3274
|
-
|
|
3350
|
+
}
|
|
3351
|
+
let token = await tryGetAccessToken();
|
|
3352
|
+
while (token === null) {
|
|
3353
|
+
await delay(retryIntervalInMs);
|
|
3354
|
+
token = await tryGetAccessToken();
|
|
3355
|
+
}
|
|
3356
|
+
return token;
|
|
3275
3357
|
}
|
|
3276
3358
|
/**
|
|
3277
3359
|
* Creates a token cycler from a credential, scopes, and optional settings.
|
|
@@ -3317,7 +3399,7 @@ function createTokenCycler(credential, tokenCyclerOptions) {
|
|
|
3317
3399
|
*/
|
|
3318
3400
|
get mustRefresh() {
|
|
3319
3401
|
return (token === null || token.expiresOnTimestamp - options.forcedRefreshWindowInMs < Date.now());
|
|
3320
|
-
}
|
|
3402
|
+
},
|
|
3321
3403
|
};
|
|
3322
3404
|
/**
|
|
3323
3405
|
* Starts a refresh job or returns the existing job if one is already
|
|
@@ -3353,7 +3435,7 @@ function createTokenCycler(credential, tokenCyclerOptions) {
|
|
|
3353
3435
|
get cachedToken() {
|
|
3354
3436
|
return token || undefined;
|
|
3355
3437
|
},
|
|
3356
|
-
getToken: (scopes, tokenOptions) =>
|
|
3438
|
+
getToken: async (scopes, tokenOptions) => {
|
|
3357
3439
|
//
|
|
3358
3440
|
// Simple rules:
|
|
3359
3441
|
// - If we MUST refresh, then return the refresh task, blocking
|
|
@@ -3369,7 +3451,7 @@ function createTokenCycler(credential, tokenCyclerOptions) {
|
|
|
3369
3451
|
refresh(scopes, tokenOptions);
|
|
3370
3452
|
}
|
|
3371
3453
|
return token;
|
|
3372
|
-
}
|
|
3454
|
+
},
|
|
3373
3455
|
};
|
|
3374
3456
|
}
|
|
3375
3457
|
|
|
@@ -3398,7 +3480,7 @@ class ChallengeHandler {
|
|
|
3398
3480
|
this.credential = credential;
|
|
3399
3481
|
this.options = options;
|
|
3400
3482
|
this.cycler = createTokenCycler(credential, {
|
|
3401
|
-
refreshWindowInMs: fiveMinutesInMs
|
|
3483
|
+
refreshWindowInMs: fiveMinutesInMs,
|
|
3402
3484
|
});
|
|
3403
3485
|
}
|
|
3404
3486
|
authorizeRequest(_options) {
|
|
@@ -3407,41 +3489,39 @@ class ChallengeHandler {
|
|
|
3407
3489
|
/**
|
|
3408
3490
|
* Updates the authentication context based on the challenge.
|
|
3409
3491
|
*/
|
|
3410
|
-
authorizeRequestOnChallenge(options) {
|
|
3492
|
+
async authorizeRequestOnChallenge(options) {
|
|
3411
3493
|
var _a;
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
|
|
3415
|
-
|
|
3416
|
-
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
|
|
3421
|
-
|
|
3422
|
-
|
|
3423
|
-
|
|
3424
|
-
|
|
3425
|
-
|
|
3426
|
-
|
|
3427
|
-
|
|
3428
|
-
|
|
3429
|
-
|
|
3430
|
-
|
|
3431
|
-
|
|
3432
|
-
|
|
3433
|
-
|
|
3434
|
-
|
|
3435
|
-
|
|
3436
|
-
|
|
3437
|
-
|
|
3438
|
-
|
|
3439
|
-
|
|
3440
|
-
|
|
3441
|
-
|
|
3442
|
-
|
|
3443
|
-
return true;
|
|
3444
|
-
});
|
|
3494
|
+
// Once we're here, we've completed Step 1.
|
|
3495
|
+
const challenge = (_a = options.response) === null || _a === void 0 ? void 0 : _a.headers.get("WWW-Authenticate");
|
|
3496
|
+
if (!challenge) {
|
|
3497
|
+
throw new Error("Failed to retrieve challenge from response headers");
|
|
3498
|
+
}
|
|
3499
|
+
// Step 2: Parse challenge string to retrieve serviceName and scope, where scope is the ACR Scope
|
|
3500
|
+
const { service, scope } = parseWWWAuthenticate(challenge);
|
|
3501
|
+
if (!service) {
|
|
3502
|
+
throw new Error("Failed to retrieve 'service' from challenge");
|
|
3503
|
+
}
|
|
3504
|
+
if (!scope) {
|
|
3505
|
+
throw new Error("Failed to retrieve 'scope' from challenge");
|
|
3506
|
+
}
|
|
3507
|
+
// Step 3: Exchange AAD Access Token for ACR Refresh Token
|
|
3508
|
+
// For anonymous access, we send the request with grant_type=password and an empty ACR refresh token
|
|
3509
|
+
// For non-anonymous access, we get an AAD token then exchange it for an ACR fresh token
|
|
3510
|
+
let grantType;
|
|
3511
|
+
let acrRefreshToken;
|
|
3512
|
+
if (this.credential.isAnonymousAccess) {
|
|
3513
|
+
grantType = "password";
|
|
3514
|
+
acrRefreshToken = "";
|
|
3515
|
+
}
|
|
3516
|
+
else {
|
|
3517
|
+
grantType = "refresh_token";
|
|
3518
|
+
acrRefreshToken = (await this.cycler.getToken(scope, Object.assign(Object.assign({}, options), { service }))).token;
|
|
3519
|
+
}
|
|
3520
|
+
// Step 4: Send in acrRefreshToken and get back acrAccessToken
|
|
3521
|
+
const acrAccessToken = await this.credential.tokenService.ExchangeAcrRefreshTokenForAcrAccessTokenAsync(acrRefreshToken, service, scope, grantType, this.options);
|
|
3522
|
+
// Step 5 - Authorize Request. At this point we're done with AAD and using an ACR access token.
|
|
3523
|
+
options.request.headers.set("Authorization", `Bearer ${acrAccessToken}`);
|
|
3524
|
+
return true;
|
|
3445
3525
|
}
|
|
3446
3526
|
}
|
|
3447
3527
|
|
|
@@ -3454,14 +3534,14 @@ function toManifestWritableProperties(from) {
|
|
|
3454
3534
|
canDelete: from.canDelete,
|
|
3455
3535
|
canList: from.canList,
|
|
3456
3536
|
canRead: from.canRead,
|
|
3457
|
-
canWrite: from.canWrite
|
|
3537
|
+
canWrite: from.canWrite,
|
|
3458
3538
|
}
|
|
3459
3539
|
: undefined;
|
|
3460
3540
|
}
|
|
3461
3541
|
function toArtifactManifestProperties(from, repositoryName, registryLoginServer) {
|
|
3462
3542
|
var _a, _b, _c, _d;
|
|
3463
3543
|
return Object.assign({ registryLoginServer,
|
|
3464
|
-
repositoryName, digest: from.digest,
|
|
3544
|
+
repositoryName, digest: from.digest, sizeInBytes: from.size, createdOn: from.createdOn, lastUpdatedOn: from.lastUpdatedOn, architecture: (_a = from.architecture) !== null && _a !== void 0 ? _a : undefined, operatingSystem: (_b = from.operatingSystem) !== null && _b !== void 0 ? _b : undefined, relatedArtifacts: (_c = from.relatedArtifacts) !== null && _c !== void 0 ? _c : [], tags: (_d = from.tags) !== null && _d !== void 0 ? _d : [] }, toManifestWritableProperties(from));
|
|
3465
3545
|
}
|
|
3466
3546
|
function toServiceTagOrderBy(orderBy) {
|
|
3467
3547
|
return orderBy === "LastUpdatedOnAscending"
|
|
@@ -3508,163 +3588,176 @@ class RegistryArtifactImpl {
|
|
|
3508
3588
|
/**
|
|
3509
3589
|
* digest of this artifact.
|
|
3510
3590
|
*/
|
|
3511
|
-
getDigest() {
|
|
3512
|
-
|
|
3513
|
-
if (this.digest) {
|
|
3514
|
-
return this.digest;
|
|
3515
|
-
}
|
|
3516
|
-
if (!isDigest(this.tagOrDigest)) {
|
|
3517
|
-
this.digest = (yield this.getTagProperties(this.tagOrDigest)).digest;
|
|
3518
|
-
}
|
|
3519
|
-
else {
|
|
3520
|
-
this.digest = this.tagOrDigest;
|
|
3521
|
-
}
|
|
3591
|
+
async getDigest() {
|
|
3592
|
+
if (this.digest) {
|
|
3522
3593
|
return this.digest;
|
|
3523
|
-
}
|
|
3594
|
+
}
|
|
3595
|
+
if (!isDigest(this.tagOrDigest)) {
|
|
3596
|
+
this.digest = (await this.getTagProperties(this.tagOrDigest)).digest;
|
|
3597
|
+
}
|
|
3598
|
+
else {
|
|
3599
|
+
this.digest = this.tagOrDigest;
|
|
3600
|
+
}
|
|
3601
|
+
return this.digest;
|
|
3524
3602
|
}
|
|
3525
3603
|
/**
|
|
3526
|
-
* Deletes this artifact.
|
|
3604
|
+
* Deletes this registry artifact by deleting its manifest.
|
|
3527
3605
|
* @param options -
|
|
3528
3606
|
*/
|
|
3529
|
-
delete(options = {}) {
|
|
3530
|
-
|
|
3531
|
-
|
|
3532
|
-
|
|
3533
|
-
|
|
3534
|
-
|
|
3535
|
-
|
|
3536
|
-
|
|
3537
|
-
|
|
3538
|
-
|
|
3539
|
-
|
|
3540
|
-
|
|
3541
|
-
}
|
|
3542
|
-
});
|
|
3607
|
+
async delete(options = {}) {
|
|
3608
|
+
const { span, updatedOptions } = createSpan("RegistryArtifact-delete", options);
|
|
3609
|
+
try {
|
|
3610
|
+
await this.client.containerRegistry.deleteManifest(this.repositoryName, await this.getDigest(), updatedOptions);
|
|
3611
|
+
}
|
|
3612
|
+
catch (e) {
|
|
3613
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3614
|
+
throw e;
|
|
3615
|
+
}
|
|
3616
|
+
finally {
|
|
3617
|
+
span.end();
|
|
3618
|
+
}
|
|
3543
3619
|
}
|
|
3544
3620
|
/**
|
|
3545
|
-
* Deletes a tag.
|
|
3546
|
-
* @param tag - the name of the tag to
|
|
3621
|
+
* Deletes a tag. This removes the tag from the artifact and its manifest.
|
|
3622
|
+
* @param tag - the name of the tag to delete.
|
|
3547
3623
|
* @param options -
|
|
3548
3624
|
*/
|
|
3549
|
-
deleteTag(tag, options = {}) {
|
|
3550
|
-
|
|
3551
|
-
|
|
3552
|
-
|
|
3553
|
-
|
|
3554
|
-
|
|
3555
|
-
|
|
3556
|
-
|
|
3557
|
-
|
|
3558
|
-
|
|
3559
|
-
|
|
3560
|
-
|
|
3561
|
-
|
|
3562
|
-
|
|
3563
|
-
|
|
3564
|
-
}
|
|
3565
|
-
});
|
|
3625
|
+
async deleteTag(tag, options = {}) {
|
|
3626
|
+
if (!tag) {
|
|
3627
|
+
throw new Error("invalid tag");
|
|
3628
|
+
}
|
|
3629
|
+
const { span, updatedOptions } = createSpan("RegistryArtifact-deleteTag", options);
|
|
3630
|
+
try {
|
|
3631
|
+
await this.client.containerRegistry.deleteTag(this.repositoryName, tag, updatedOptions);
|
|
3632
|
+
}
|
|
3633
|
+
catch (e) {
|
|
3634
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3635
|
+
throw e;
|
|
3636
|
+
}
|
|
3637
|
+
finally {
|
|
3638
|
+
span.end();
|
|
3639
|
+
}
|
|
3566
3640
|
}
|
|
3567
3641
|
/**
|
|
3568
|
-
* Retrieves properties of this
|
|
3642
|
+
* Retrieves the properties of the manifest that uniquely identifies this artifact.
|
|
3569
3643
|
* @param options -
|
|
3570
3644
|
*/
|
|
3571
|
-
getManifestProperties(options = {}) {
|
|
3572
|
-
|
|
3573
|
-
|
|
3574
|
-
|
|
3575
|
-
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3583
|
-
|
|
3584
|
-
}
|
|
3585
|
-
});
|
|
3645
|
+
async getManifestProperties(options = {}) {
|
|
3646
|
+
const { span, updatedOptions } = createSpan("RegistryArtifact-getManifestProperties", options);
|
|
3647
|
+
try {
|
|
3648
|
+
const result = await this.client.containerRegistry.getManifestProperties(this.repositoryName, await this.getDigest(), updatedOptions);
|
|
3649
|
+
return toArtifactManifestProperties(result, this.repositoryName, result.registryLoginServer);
|
|
3650
|
+
}
|
|
3651
|
+
catch (e) {
|
|
3652
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3653
|
+
throw e;
|
|
3654
|
+
}
|
|
3655
|
+
finally {
|
|
3656
|
+
span.end();
|
|
3657
|
+
}
|
|
3586
3658
|
}
|
|
3587
3659
|
/**
|
|
3588
|
-
* Updates
|
|
3660
|
+
* Updates the properties of the artifact's manifest.
|
|
3661
|
+
*
|
|
3662
|
+
* Example usage:
|
|
3663
|
+
*
|
|
3664
|
+
* ```javascript
|
|
3665
|
+
* const client = new ContainerRegistryClient(url, credential);
|
|
3666
|
+
* const artifact = client.getArtifact(repositoryName, artifactTagOrDigest)
|
|
3667
|
+
* const updated = await artifact.updateManifestProperties({
|
|
3668
|
+
* canDelete: false,
|
|
3669
|
+
* canList: false,
|
|
3670
|
+
* canRead: false,
|
|
3671
|
+
* canWrite: false
|
|
3672
|
+
* });
|
|
3673
|
+
* ```
|
|
3589
3674
|
* @param options -
|
|
3590
3675
|
*/
|
|
3591
|
-
updateManifestProperties(options
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
|
|
3595
|
-
|
|
3596
|
-
|
|
3597
|
-
|
|
3598
|
-
|
|
3599
|
-
|
|
3600
|
-
|
|
3601
|
-
|
|
3602
|
-
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
|
|
3608
|
-
|
|
3609
|
-
}
|
|
3610
|
-
});
|
|
3676
|
+
async updateManifestProperties(options) {
|
|
3677
|
+
const { span, updatedOptions } = createSpan("RegistryArtifact-updateManifestProperties", Object.assign(Object.assign({}, options), { value: {
|
|
3678
|
+
canDelete: options.canDelete,
|
|
3679
|
+
canWrite: options.canWrite,
|
|
3680
|
+
canList: options.canList,
|
|
3681
|
+
canRead: options.canRead,
|
|
3682
|
+
} }));
|
|
3683
|
+
try {
|
|
3684
|
+
const result = await this.client.containerRegistry.updateManifestProperties(this.repositoryName, await this.getDigest(), updatedOptions);
|
|
3685
|
+
return toArtifactManifestProperties(result, this.repositoryName, result.registryLoginServer);
|
|
3686
|
+
}
|
|
3687
|
+
catch (e) {
|
|
3688
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3689
|
+
throw e;
|
|
3690
|
+
}
|
|
3691
|
+
finally {
|
|
3692
|
+
span.end();
|
|
3693
|
+
}
|
|
3611
3694
|
}
|
|
3612
3695
|
/**
|
|
3613
|
-
* Retrieves properties of
|
|
3696
|
+
* Retrieves the properties of the specified tag.
|
|
3614
3697
|
* @param tag - the tag to retrieve properties.
|
|
3615
3698
|
* @param options -
|
|
3616
3699
|
*/
|
|
3617
|
-
getTagProperties(tag, options = {}) {
|
|
3618
|
-
|
|
3619
|
-
|
|
3620
|
-
|
|
3621
|
-
|
|
3622
|
-
|
|
3623
|
-
|
|
3624
|
-
|
|
3625
|
-
|
|
3626
|
-
|
|
3627
|
-
|
|
3628
|
-
|
|
3629
|
-
|
|
3630
|
-
|
|
3631
|
-
|
|
3632
|
-
}
|
|
3633
|
-
});
|
|
3700
|
+
async getTagProperties(tag, options = {}) {
|
|
3701
|
+
if (!tag) {
|
|
3702
|
+
throw new Error("invalid tag");
|
|
3703
|
+
}
|
|
3704
|
+
const { span, updatedOptions } = createSpan("RegistryArtifact-getTagProperties", options);
|
|
3705
|
+
try {
|
|
3706
|
+
return await this.client.containerRegistry.getTagProperties(this.repositoryName, tag, updatedOptions);
|
|
3707
|
+
}
|
|
3708
|
+
catch (e) {
|
|
3709
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3710
|
+
throw e;
|
|
3711
|
+
}
|
|
3712
|
+
finally {
|
|
3713
|
+
span.end();
|
|
3714
|
+
}
|
|
3634
3715
|
}
|
|
3635
3716
|
/**
|
|
3636
|
-
* Updates
|
|
3637
|
-
*
|
|
3717
|
+
* Updates the properties of a given tag.
|
|
3718
|
+
*
|
|
3719
|
+
* Example usage:
|
|
3720
|
+
*
|
|
3721
|
+
* ```javascript
|
|
3722
|
+
* const client = new ContainerRegistryClient(url, credential);
|
|
3723
|
+
* const artifact = client.getArtifact(repositoryName, artifactTagOrDigest)
|
|
3724
|
+
* const updated = await artifact.updateTagProperties(tag, {
|
|
3725
|
+
* canDelete: false,
|
|
3726
|
+
* canList: false,
|
|
3727
|
+
* canRead: false,
|
|
3728
|
+
* canWrite: false
|
|
3729
|
+
* });
|
|
3730
|
+
* ```
|
|
3731
|
+
* @param tag - name of the tag to update properties on
|
|
3638
3732
|
* @param options -
|
|
3639
3733
|
*/
|
|
3640
|
-
updateTagProperties(tag, options) {
|
|
3641
|
-
|
|
3642
|
-
|
|
3643
|
-
|
|
3644
|
-
|
|
3645
|
-
|
|
3646
|
-
|
|
3647
|
-
|
|
3648
|
-
|
|
3649
|
-
|
|
3650
|
-
|
|
3651
|
-
|
|
3652
|
-
|
|
3653
|
-
|
|
3654
|
-
|
|
3655
|
-
|
|
3656
|
-
|
|
3657
|
-
|
|
3658
|
-
|
|
3659
|
-
|
|
3660
|
-
}
|
|
3661
|
-
});
|
|
3734
|
+
async updateTagProperties(tag, options) {
|
|
3735
|
+
if (!tag) {
|
|
3736
|
+
throw new Error("invalid tag");
|
|
3737
|
+
}
|
|
3738
|
+
const { span, updatedOptions } = createSpan("RegistryArtifact-updateTagProperties", Object.assign(Object.assign({}, options), { value: {
|
|
3739
|
+
canDelete: options.canDelete,
|
|
3740
|
+
canWrite: options.canWrite,
|
|
3741
|
+
canList: options.canList,
|
|
3742
|
+
canRead: options.canRead,
|
|
3743
|
+
} }));
|
|
3744
|
+
try {
|
|
3745
|
+
return await this.client.containerRegistry.updateTagAttributes(this.repositoryName, tag, updatedOptions);
|
|
3746
|
+
}
|
|
3747
|
+
catch (e) {
|
|
3748
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3749
|
+
throw e;
|
|
3750
|
+
}
|
|
3751
|
+
finally {
|
|
3752
|
+
span.end();
|
|
3753
|
+
}
|
|
3662
3754
|
}
|
|
3663
3755
|
/**
|
|
3664
|
-
*
|
|
3756
|
+
* Returns an async iterable iterator to list the tags that uniquely identify this artifact and the properties of each.
|
|
3665
3757
|
*
|
|
3666
|
-
* Example
|
|
3667
|
-
*
|
|
3758
|
+
* Example using `for-await-of` syntax:
|
|
3759
|
+
*
|
|
3760
|
+
* ```javascript
|
|
3668
3761
|
* const client = new ContainerRegistryClient(url, credentials);
|
|
3669
3762
|
* const repository = client.getRepository(repositoryName);
|
|
3670
3763
|
* const artifact = repository.getArtifact(digest)
|
|
@@ -3672,6 +3765,34 @@ class RegistryArtifactImpl {
|
|
|
3672
3765
|
* console.log("tag: ", tag);
|
|
3673
3766
|
* }
|
|
3674
3767
|
* ```
|
|
3768
|
+
*
|
|
3769
|
+
* Example using `iter.next()`:
|
|
3770
|
+
*
|
|
3771
|
+
* ```javascript
|
|
3772
|
+
* const iter = artifact.listTagProperties();
|
|
3773
|
+
* let item = await iter.next();
|
|
3774
|
+
* while (!item.done) {
|
|
3775
|
+
* console.log("tag properties: ", item.value);
|
|
3776
|
+
* item = await iter.next();
|
|
3777
|
+
* }
|
|
3778
|
+
* ```
|
|
3779
|
+
*
|
|
3780
|
+
* Example using `byPage()`:
|
|
3781
|
+
*
|
|
3782
|
+
* ```javascript
|
|
3783
|
+
* const pages = artifact.listTagProperties().byPage({ maxPageSize: 2 });
|
|
3784
|
+
* let page = await pages.next();
|
|
3785
|
+
* let i = 1;
|
|
3786
|
+
* while (!page.done) {
|
|
3787
|
+
* if (page.value) {
|
|
3788
|
+
* console.log(`-- page ${i++}`);
|
|
3789
|
+
* for (const tagProperties of page.value) {
|
|
3790
|
+
* console.log(` repository name: ${tagProperties}`);
|
|
3791
|
+
* }
|
|
3792
|
+
* }
|
|
3793
|
+
* page = await pages.next();
|
|
3794
|
+
* }
|
|
3795
|
+
* ```
|
|
3675
3796
|
* @param options -
|
|
3676
3797
|
*/
|
|
3677
3798
|
listTagProperties(options = {}) {
|
|
@@ -3683,7 +3804,7 @@ class RegistryArtifactImpl {
|
|
|
3683
3804
|
[Symbol.asyncIterator]() {
|
|
3684
3805
|
return this;
|
|
3685
3806
|
},
|
|
3686
|
-
byPage: (settings = {}) => this.listTagsPage(settings, options)
|
|
3807
|
+
byPage: (settings = {}) => this.listTagsPage(settings, options),
|
|
3687
3808
|
};
|
|
3688
3809
|
}
|
|
3689
3810
|
listTagsItems(options = {}) {
|
|
@@ -3706,7 +3827,7 @@ class RegistryArtifactImpl {
|
|
|
3706
3827
|
}
|
|
3707
3828
|
listTagsPage(continuationState, options = {}) {
|
|
3708
3829
|
return tslib.__asyncGenerator(this, arguments, function* listTagsPage_1() {
|
|
3709
|
-
const orderby = toServiceTagOrderBy(options.
|
|
3830
|
+
const orderby = toServiceTagOrderBy(options.order);
|
|
3710
3831
|
if (!continuationState.continuationToken) {
|
|
3711
3832
|
const optionsComplete = Object.assign(Object.assign({}, options), { n: continuationState.maxPageSize, orderby });
|
|
3712
3833
|
const currentPage = yield tslib.__await(this.client.containerRegistry.getTags(this.repositoryName, optionsComplete));
|
|
@@ -3717,7 +3838,7 @@ class RegistryArtifactImpl {
|
|
|
3717
3838
|
});
|
|
3718
3839
|
yield yield tslib.__await(Object.defineProperty(array, "continuationToken", {
|
|
3719
3840
|
value: continuationState.continuationToken,
|
|
3720
|
-
enumerable: true
|
|
3841
|
+
enumerable: true,
|
|
3721
3842
|
}));
|
|
3722
3843
|
}
|
|
3723
3844
|
}
|
|
@@ -3730,7 +3851,7 @@ class RegistryArtifactImpl {
|
|
|
3730
3851
|
});
|
|
3731
3852
|
yield yield tslib.__await(Object.defineProperty(array, "continuationToken", {
|
|
3732
3853
|
value: continuationState.continuationToken,
|
|
3733
|
-
enumerable: true
|
|
3854
|
+
enumerable: true,
|
|
3734
3855
|
}));
|
|
3735
3856
|
}
|
|
3736
3857
|
}
|
|
@@ -3756,27 +3877,25 @@ class ContainerRepositoryImpl {
|
|
|
3756
3877
|
this.client = client;
|
|
3757
3878
|
}
|
|
3758
3879
|
/**
|
|
3759
|
-
* Deletes this repository.
|
|
3880
|
+
* Deletes this repository and all artifacts that are part of its logical group.
|
|
3760
3881
|
*
|
|
3761
3882
|
* @param options - optional configuration for the operation
|
|
3762
3883
|
*/
|
|
3763
|
-
delete(options = {}) {
|
|
3764
|
-
|
|
3765
|
-
|
|
3766
|
-
|
|
3767
|
-
|
|
3768
|
-
|
|
3769
|
-
|
|
3770
|
-
|
|
3771
|
-
|
|
3772
|
-
|
|
3773
|
-
|
|
3774
|
-
|
|
3775
|
-
}
|
|
3776
|
-
});
|
|
3884
|
+
async delete(options = {}) {
|
|
3885
|
+
const { span, updatedOptions } = createSpan("ContainerRepository-delete", options);
|
|
3886
|
+
try {
|
|
3887
|
+
await this.client.containerRegistry.deleteRepository(this.name, updatedOptions);
|
|
3888
|
+
}
|
|
3889
|
+
catch (e) {
|
|
3890
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3891
|
+
throw e;
|
|
3892
|
+
}
|
|
3893
|
+
finally {
|
|
3894
|
+
span.end();
|
|
3895
|
+
}
|
|
3777
3896
|
}
|
|
3778
3897
|
/**
|
|
3779
|
-
* Returns an instance of RegistryArtifact.
|
|
3898
|
+
* Returns an helper instance of {@link RegistryArtifact} for the given tag or digest.
|
|
3780
3899
|
* @param tagOrDigest - the tag or digest of the artifact
|
|
3781
3900
|
*/
|
|
3782
3901
|
getArtifact(tagOrDigest) {
|
|
@@ -3786,61 +3905,100 @@ class ContainerRepositoryImpl {
|
|
|
3786
3905
|
return new RegistryArtifactImpl(this.registryEndpoint, this.name, tagOrDigest, this.client);
|
|
3787
3906
|
}
|
|
3788
3907
|
/**
|
|
3789
|
-
* Retrieves properties of this repository.
|
|
3908
|
+
* Retrieves the properties of this repository.
|
|
3790
3909
|
* @param options -
|
|
3791
3910
|
*/
|
|
3792
|
-
getProperties(options = {}) {
|
|
3793
|
-
|
|
3794
|
-
|
|
3795
|
-
|
|
3796
|
-
|
|
3797
|
-
|
|
3798
|
-
|
|
3799
|
-
|
|
3800
|
-
|
|
3801
|
-
|
|
3802
|
-
|
|
3803
|
-
|
|
3804
|
-
}
|
|
3805
|
-
});
|
|
3911
|
+
async getProperties(options = {}) {
|
|
3912
|
+
const { span, updatedOptions } = createSpan("ContainerRepository-getProperties", options);
|
|
3913
|
+
try {
|
|
3914
|
+
return await this.client.containerRegistry.getProperties(this.name, updatedOptions);
|
|
3915
|
+
}
|
|
3916
|
+
catch (e) {
|
|
3917
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3918
|
+
throw e;
|
|
3919
|
+
}
|
|
3920
|
+
finally {
|
|
3921
|
+
span.end();
|
|
3922
|
+
}
|
|
3806
3923
|
}
|
|
3807
3924
|
/**
|
|
3808
|
-
* Updates repository
|
|
3925
|
+
* Updates the properties of this repository.
|
|
3926
|
+
*
|
|
3927
|
+
* Example usage:
|
|
3928
|
+
*
|
|
3929
|
+
* ```javascript
|
|
3930
|
+
* const client = new ContainerRegistryClient(url, credential);
|
|
3931
|
+
* const repository = client.getRepository(repositoryName)
|
|
3932
|
+
* const updated = await repository.updateProperties({
|
|
3933
|
+
* canDelete: false,
|
|
3934
|
+
* canList: false,
|
|
3935
|
+
* canRead: false,
|
|
3936
|
+
* canWrite: false
|
|
3937
|
+
* });
|
|
3938
|
+
* ```
|
|
3809
3939
|
* @param options -
|
|
3810
3940
|
*/
|
|
3811
|
-
updateProperties(options) {
|
|
3812
|
-
|
|
3813
|
-
|
|
3814
|
-
|
|
3815
|
-
|
|
3816
|
-
|
|
3817
|
-
|
|
3818
|
-
|
|
3819
|
-
|
|
3820
|
-
|
|
3821
|
-
|
|
3822
|
-
|
|
3823
|
-
}
|
|
3824
|
-
|
|
3825
|
-
|
|
3826
|
-
|
|
3827
|
-
|
|
3828
|
-
|
|
3829
|
-
span.end();
|
|
3830
|
-
}
|
|
3831
|
-
});
|
|
3941
|
+
async updateProperties(options) {
|
|
3942
|
+
const value = {
|
|
3943
|
+
canDelete: options.canDelete,
|
|
3944
|
+
canWrite: options.canWrite,
|
|
3945
|
+
canList: options.canList,
|
|
3946
|
+
canRead: options.canRead,
|
|
3947
|
+
};
|
|
3948
|
+
const { span, updatedOptions } = createSpan("ContainerRepository-updateProperties", Object.assign(Object.assign({}, options), { value }));
|
|
3949
|
+
try {
|
|
3950
|
+
return await this.client.containerRegistry.updateProperties(this.name, updatedOptions);
|
|
3951
|
+
}
|
|
3952
|
+
catch (e) {
|
|
3953
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
3954
|
+
throw e;
|
|
3955
|
+
}
|
|
3956
|
+
finally {
|
|
3957
|
+
span.end();
|
|
3958
|
+
}
|
|
3832
3959
|
}
|
|
3833
3960
|
/**
|
|
3834
|
-
*
|
|
3961
|
+
* Returns an async iterable iterator to list manifest properties.
|
|
3962
|
+
* This is useful for determining the collection of artifacts associated with
|
|
3963
|
+
* this repository, as each artifact is uniquely identified by its manifest.
|
|
3835
3964
|
*
|
|
3836
|
-
* Example
|
|
3837
|
-
*
|
|
3838
|
-
*
|
|
3965
|
+
* Example using `for-await-of` syntax:
|
|
3966
|
+
*
|
|
3967
|
+
* ```javascript
|
|
3968
|
+
* const client = new ContainerRegistryClient(url, credential);
|
|
3839
3969
|
* const repository = client.getRepository(repositoryName)
|
|
3840
3970
|
* for await (const manifest of repository.listManifestProperties()) {
|
|
3841
3971
|
* console.log("manifest: ", manifest);
|
|
3842
3972
|
* }
|
|
3843
3973
|
* ```
|
|
3974
|
+
*
|
|
3975
|
+
* Example using `iter.next()`:
|
|
3976
|
+
*
|
|
3977
|
+
* ```javascript
|
|
3978
|
+
* const iter = repository.listManifestProperties();
|
|
3979
|
+
* let item = await iter.next();
|
|
3980
|
+
* while (!item.done) {
|
|
3981
|
+
* console.log("manifest properties: ", item.value);
|
|
3982
|
+
* item = await iter.next();
|
|
3983
|
+
* }
|
|
3984
|
+
* ```
|
|
3985
|
+
*
|
|
3986
|
+
* Example using `byPage()`:
|
|
3987
|
+
*
|
|
3988
|
+
* ```javascript
|
|
3989
|
+
* const pages = repository.listManifestProperties().byPage({ maxPageSize: 2 });
|
|
3990
|
+
* let page = await pages.next();
|
|
3991
|
+
* let i = 1;
|
|
3992
|
+
* while (!page.done) {
|
|
3993
|
+
* if (page.value) {
|
|
3994
|
+
* console.log(`-- page ${i++}`);
|
|
3995
|
+
* for (const manifestProperties of page.value) {
|
|
3996
|
+
* console.log(` manifest properties: ${manifestProperties}`);
|
|
3997
|
+
* }
|
|
3998
|
+
* }
|
|
3999
|
+
* page = await pages.next();
|
|
4000
|
+
* }
|
|
4001
|
+
* ```
|
|
3844
4002
|
* @param options -
|
|
3845
4003
|
*/
|
|
3846
4004
|
listManifestProperties(options = {}) {
|
|
@@ -3852,7 +4010,7 @@ class ContainerRepositoryImpl {
|
|
|
3852
4010
|
[Symbol.asyncIterator]() {
|
|
3853
4011
|
return this;
|
|
3854
4012
|
},
|
|
3855
|
-
byPage: (settings = {}) => this.listManifestsPage(settings, options)
|
|
4013
|
+
byPage: (settings = {}) => this.listManifestsPage(settings, options),
|
|
3856
4014
|
};
|
|
3857
4015
|
}
|
|
3858
4016
|
listManifestsItems(options = {}) {
|
|
@@ -3875,7 +4033,7 @@ class ContainerRepositoryImpl {
|
|
|
3875
4033
|
}
|
|
3876
4034
|
listManifestsPage(continuationState, options = {}) {
|
|
3877
4035
|
return tslib.__asyncGenerator(this, arguments, function* listManifestsPage_1() {
|
|
3878
|
-
const orderby = toServiceManifestOrderBy(options.
|
|
4036
|
+
const orderby = toServiceManifestOrderBy(options.order);
|
|
3879
4037
|
if (!continuationState.continuationToken) {
|
|
3880
4038
|
const optionsComplete = Object.assign(Object.assign({}, options), { n: continuationState.maxPageSize, orderby });
|
|
3881
4039
|
const currentPage = yield tslib.__await(this.client.containerRegistry.getManifests(this.name, optionsComplete));
|
|
@@ -3884,7 +4042,7 @@ class ContainerRepositoryImpl {
|
|
|
3884
4042
|
const array = currentPage.manifests.map((t) => toArtifactManifestProperties(t, this.name, currentPage.registryLoginServer));
|
|
3885
4043
|
yield yield tslib.__await(Object.defineProperty(array, "continuationToken", {
|
|
3886
4044
|
value: continuationState.continuationToken,
|
|
3887
|
-
enumerable: true
|
|
4045
|
+
enumerable: true,
|
|
3888
4046
|
}));
|
|
3889
4047
|
}
|
|
3890
4048
|
}
|
|
@@ -3895,7 +4053,7 @@ class ContainerRepositoryImpl {
|
|
|
3895
4053
|
const array = currentPage.manifests.map((t) => toArtifactManifestProperties(t, this.name, currentPage.registryLoginServer));
|
|
3896
4054
|
yield yield tslib.__await(Object.defineProperty(array, "continuationToken", {
|
|
3897
4055
|
value: continuationState.continuationToken,
|
|
3898
|
-
enumerable: true
|
|
4056
|
+
enumerable: true,
|
|
3899
4057
|
}));
|
|
3900
4058
|
}
|
|
3901
4059
|
}
|
|
@@ -3924,138 +4082,56 @@ class ContainerRegistryRefreshTokenCredential {
|
|
|
3924
4082
|
this.tokenService = new ContainerRegistryTokenService(authClient);
|
|
3925
4083
|
this.isAnonymousAccess = !this.credential;
|
|
3926
4084
|
}
|
|
3927
|
-
getToken(_scopes, options) {
|
|
3928
|
-
|
|
3929
|
-
|
|
3930
|
-
return null;
|
|
3931
|
-
}
|
|
3932
|
-
const aadToken = yield this.credential.getToken(this.authenticationScope, options);
|
|
3933
|
-
if (!aadToken) {
|
|
3934
|
-
throw new Error("Failed to retrieve AAD token.");
|
|
3935
|
-
}
|
|
3936
|
-
return this.tokenService.ExchangeAadAccessTokenForAcrRefreshTokenAsync(aadToken.token, options.service, options);
|
|
3937
|
-
});
|
|
3938
|
-
}
|
|
3939
|
-
}
|
|
3940
|
-
const customExchangeAadTokenForAcrRefreshTokenOperationSpec = {
|
|
3941
|
-
path: "/oauth2/exchange",
|
|
3942
|
-
httpMethod: "POST",
|
|
3943
|
-
responses: {
|
|
3944
|
-
200: {
|
|
3945
|
-
bodyMapper: AcrRefreshToken
|
|
3946
|
-
},
|
|
3947
|
-
default: {
|
|
3948
|
-
bodyMapper: AcrErrors
|
|
3949
|
-
}
|
|
3950
|
-
},
|
|
3951
|
-
// formDataParameters: [Parameters.aadAccesstoken],
|
|
3952
|
-
requestBody: {
|
|
3953
|
-
parameterPath: ["options", "payload"],
|
|
3954
|
-
mapper: {
|
|
3955
|
-
type: {
|
|
3956
|
-
name: "Stream"
|
|
3957
|
-
}
|
|
4085
|
+
async getToken(_scopes, options) {
|
|
4086
|
+
if (!this.credential) {
|
|
4087
|
+
return null;
|
|
3958
4088
|
}
|
|
3959
|
-
|
|
3960
|
-
|
|
3961
|
-
|
|
3962
|
-
serializer: coreClient.createSerializer(Mappers, /* isXml */ false)
|
|
3963
|
-
};
|
|
3964
|
-
const customExchangeAcrRefreshTokenForAcrAccessTokenOperationSpec = {
|
|
3965
|
-
path: "/oauth2/token",
|
|
3966
|
-
httpMethod: "POST",
|
|
3967
|
-
responses: {
|
|
3968
|
-
200: {
|
|
3969
|
-
bodyMapper: AcrAccessToken
|
|
3970
|
-
},
|
|
3971
|
-
default: {
|
|
3972
|
-
bodyMapper: AcrErrors
|
|
4089
|
+
const aadToken = await this.credential.getToken(this.authenticationScope, options);
|
|
4090
|
+
if (!aadToken) {
|
|
4091
|
+
throw new Error("Failed to retrieve AAD token.");
|
|
3973
4092
|
}
|
|
3974
|
-
|
|
3975
|
-
|
|
3976
|
-
|
|
3977
|
-
parameterPath: ["options", "payload"],
|
|
3978
|
-
mapper: {
|
|
3979
|
-
type: {
|
|
3980
|
-
name: "Stream"
|
|
3981
|
-
}
|
|
3982
|
-
}
|
|
3983
|
-
},
|
|
3984
|
-
urlParameters: [url],
|
|
3985
|
-
headerParameters: [contentType3, accept4],
|
|
3986
|
-
serializer: coreClient.createSerializer(Mappers, /* isXml */ false)
|
|
3987
|
-
};
|
|
4093
|
+
return this.tokenService.ExchangeAadAccessTokenForAcrRefreshTokenAsync(aadToken.token, options.service, options);
|
|
4094
|
+
}
|
|
4095
|
+
}
|
|
3988
4096
|
class ContainerRegistryTokenService {
|
|
3989
4097
|
constructor(authClient) {
|
|
3990
4098
|
this.authClient = authClient;
|
|
3991
4099
|
}
|
|
3992
|
-
ExchangeAadAccessTokenForAcrRefreshTokenAsync(aadAccessToken, service, options) {
|
|
3993
|
-
|
|
3994
|
-
|
|
3995
|
-
|
|
3996
|
-
|
|
3997
|
-
|
|
3998
|
-
|
|
3999
|
-
|
|
4000
|
-
|
|
4001
|
-
|
|
4002
|
-
|
|
4003
|
-
|
|
4004
|
-
|
|
4005
|
-
|
|
4006
|
-
|
|
4007
|
-
|
|
4008
|
-
|
|
4009
|
-
|
|
4010
|
-
|
|
4011
|
-
|
|
4012
|
-
|
|
4013
|
-
|
|
4014
|
-
|
|
4015
|
-
throw new Error("Invalid JWT structure from ACR refresh token.");
|
|
4016
|
-
}
|
|
4017
|
-
if (!jwtParts[1]) {
|
|
4018
|
-
throw new Error("Invalid JWT payload.");
|
|
4019
|
-
}
|
|
4020
|
-
const jwtPayload = JSON.parse(base64decode(jwtParts[1]));
|
|
4021
|
-
if (!jwtPayload.exp) {
|
|
4022
|
-
throw new Error("Invalid JWT payload structure. No expiration.");
|
|
4023
|
-
}
|
|
4024
|
-
// JWT expiry is in seconds
|
|
4025
|
-
const expiry = Number.parseInt(jwtPayload.exp) * 1000;
|
|
4026
|
-
return {
|
|
4027
|
-
token: acrRefreshToken.refreshToken,
|
|
4028
|
-
expiresOnTimestamp: expiry
|
|
4029
|
-
};
|
|
4030
|
-
});
|
|
4100
|
+
async ExchangeAadAccessTokenForAcrRefreshTokenAsync(aadAccessToken, service, options) {
|
|
4101
|
+
const acrRefreshToken = await this.authClient.authentication.exchangeAadAccessTokenForAcrRefreshToken("access_token", service, Object.assign(Object.assign({}, options), { accessToken: aadAccessToken }));
|
|
4102
|
+
if (!acrRefreshToken.refreshToken) {
|
|
4103
|
+
throw new Error("Failed to exchange AAD access token for an ACR refresh token.");
|
|
4104
|
+
}
|
|
4105
|
+
// ACR refresh token expires after three hours
|
|
4106
|
+
const jwtParts = acrRefreshToken.refreshToken.split(".");
|
|
4107
|
+
if (jwtParts.length < 3) {
|
|
4108
|
+
throw new Error("Invalid JWT structure from ACR refresh token.");
|
|
4109
|
+
}
|
|
4110
|
+
if (!jwtParts[1]) {
|
|
4111
|
+
throw new Error("Invalid JWT payload.");
|
|
4112
|
+
}
|
|
4113
|
+
const jwtPayload = JSON.parse(base64decode(jwtParts[1]));
|
|
4114
|
+
if (!jwtPayload.exp) {
|
|
4115
|
+
throw new Error("Invalid JWT payload structure. No expiration.");
|
|
4116
|
+
}
|
|
4117
|
+
// JWT expiry is in seconds
|
|
4118
|
+
const expiry = Number.parseInt(jwtPayload.exp) * 1000;
|
|
4119
|
+
return {
|
|
4120
|
+
token: acrRefreshToken.refreshToken,
|
|
4121
|
+
expiresOnTimestamp: expiry,
|
|
4122
|
+
};
|
|
4031
4123
|
}
|
|
4032
|
-
ExchangeAcrRefreshTokenForAcrAccessTokenAsync(acrRefreshToken, service, scope, grantType, options) {
|
|
4033
|
-
|
|
4034
|
-
|
|
4035
|
-
|
|
4036
|
-
|
|
4037
|
-
|
|
4038
|
-
// acrRefreshToken,
|
|
4039
|
-
// service,
|
|
4040
|
-
// scope
|
|
4041
|
-
// }
|
|
4042
|
-
// }
|
|
4043
|
-
// );
|
|
4044
|
-
// TODO: (jeremymeng) revert custom sendOperationRequest call after FormData is working in core
|
|
4045
|
-
const payload = `grant_type=${grantType}&service=${encodeURIComponent(service)}&refresh_token=${acrRefreshToken ? encodeURIComponent(acrRefreshToken) : ""}&scope=${encodeURIComponent(scope)}`;
|
|
4046
|
-
const customOptions = {
|
|
4047
|
-
payload
|
|
4048
|
-
};
|
|
4049
|
-
const acrAccessToken = yield this.authClient.sendOperationRequest({ options: Object.assign(Object.assign({}, options), customOptions) }, customExchangeAcrRefreshTokenForAcrAccessTokenOperationSpec);
|
|
4050
|
-
if (!acrAccessToken.accessToken) {
|
|
4051
|
-
throw new Error("Failed to exchange ACR refresh token for an ACR access token");
|
|
4052
|
-
}
|
|
4053
|
-
return acrAccessToken.accessToken;
|
|
4054
|
-
});
|
|
4124
|
+
async ExchangeAcrRefreshTokenForAcrAccessTokenAsync(acrRefreshToken, service, scope, grantType, options) {
|
|
4125
|
+
const acrAccessToken = await this.authClient.authentication.exchangeAcrRefreshTokenForAcrAccessToken(service, scope, acrRefreshToken, grantType, options);
|
|
4126
|
+
if (!acrAccessToken.accessToken) {
|
|
4127
|
+
throw new Error("Failed to exchange ACR refresh token for an ACR access token");
|
|
4128
|
+
}
|
|
4129
|
+
return acrAccessToken.accessToken;
|
|
4055
4130
|
}
|
|
4056
4131
|
}
|
|
4057
4132
|
|
|
4058
4133
|
// Copyright (c) Microsoft Corporation.
|
|
4134
|
+
const LATEST_API_VERSION = "2021-07-01";
|
|
4059
4135
|
/**
|
|
4060
4136
|
* The client class used to interact with the Container Registry service.
|
|
4061
4137
|
*/
|
|
@@ -4075,58 +4151,50 @@ class ContainerRegistryClient {
|
|
|
4075
4151
|
else {
|
|
4076
4152
|
options = credentialOrOptions !== null && credentialOrOptions !== void 0 ? credentialOrOptions : {};
|
|
4077
4153
|
}
|
|
4078
|
-
// The below code helps us set a proper User-Agent header on all requests
|
|
4079
|
-
const libInfo = `azsdk-js-container-registry/${SDK_VERSION}`;
|
|
4080
|
-
if (!options.userAgentOptions) {
|
|
4081
|
-
options.userAgentOptions = {};
|
|
4082
|
-
}
|
|
4083
|
-
if (options.userAgentOptions.userAgentPrefix) {
|
|
4084
|
-
options.userAgentOptions.userAgentPrefix = `${options.userAgentOptions.userAgentPrefix} ${libInfo}`;
|
|
4085
|
-
}
|
|
4086
|
-
else {
|
|
4087
|
-
options.userAgentOptions.userAgentPrefix = libInfo;
|
|
4088
|
-
}
|
|
4089
4154
|
const internalPipelineOptions = Object.assign(Object.assign({}, options), { loggingOptions: {
|
|
4090
4155
|
logger: logger.info,
|
|
4091
4156
|
// This array contains header names we want to log that are not already
|
|
4092
4157
|
// included as safe. Unknown/unsafe headers are logged as "<REDACTED>".
|
|
4093
|
-
additionalAllowedQueryParameters: ["last", "n", "orderby", "digest"]
|
|
4158
|
+
additionalAllowedQueryParameters: ["last", "n", "orderby", "digest"],
|
|
4094
4159
|
} });
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
|
|
4160
|
+
// Require audience now until we have a default ACR audience from the service.
|
|
4161
|
+
if (!options.audience) {
|
|
4162
|
+
throw new Error("ContainerRegistryClientOptions.audience must be set to initialize ContainerRegistryClient.");
|
|
4163
|
+
}
|
|
4164
|
+
const defaultScope = `${options.audience}/.default`;
|
|
4165
|
+
const serviceVersion = (_a = options.serviceVersion) !== null && _a !== void 0 ? _a : LATEST_API_VERSION;
|
|
4166
|
+
const authClient = new GeneratedClient(endpoint, serviceVersion, internalPipelineOptions);
|
|
4167
|
+
this.client = new GeneratedClient(endpoint, serviceVersion, internalPipelineOptions);
|
|
4098
4168
|
this.client.pipeline.addPolicy(coreRestPipeline.bearerTokenAuthenticationPolicy({
|
|
4099
4169
|
credential,
|
|
4100
|
-
scopes: [
|
|
4101
|
-
challengeCallbacks: new ChallengeHandler(new ContainerRegistryRefreshTokenCredential(authClient,
|
|
4170
|
+
scopes: [defaultScope],
|
|
4171
|
+
challengeCallbacks: new ChallengeHandler(new ContainerRegistryRefreshTokenCredential(authClient, defaultScope, credential)),
|
|
4102
4172
|
}));
|
|
4103
4173
|
}
|
|
4104
4174
|
/**
|
|
4105
|
-
* Deletes the repository identified by the given name.
|
|
4175
|
+
* Deletes the repository identified by the given name and all associated artifacts.
|
|
4106
4176
|
*
|
|
4107
4177
|
* @param repositoryName - the name of repository to delete
|
|
4108
4178
|
* @param options - optional configuration for the operation
|
|
4109
4179
|
*/
|
|
4110
|
-
deleteRepository(repositoryName, options = {}) {
|
|
4111
|
-
|
|
4112
|
-
|
|
4113
|
-
|
|
4114
|
-
|
|
4115
|
-
|
|
4116
|
-
|
|
4117
|
-
|
|
4118
|
-
|
|
4119
|
-
|
|
4120
|
-
|
|
4121
|
-
|
|
4122
|
-
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
}
|
|
4126
|
-
});
|
|
4180
|
+
async deleteRepository(repositoryName, options = {}) {
|
|
4181
|
+
if (!repositoryName) {
|
|
4182
|
+
throw new Error("invalid repositoryName");
|
|
4183
|
+
}
|
|
4184
|
+
const { span, updatedOptions } = createSpan("ContainerRegistryClient-deleteRepository", options);
|
|
4185
|
+
try {
|
|
4186
|
+
await this.client.containerRegistry.deleteRepository(repositoryName, updatedOptions);
|
|
4187
|
+
}
|
|
4188
|
+
catch (e) {
|
|
4189
|
+
span.setStatus({ code: coreTracing.SpanStatusCode.ERROR, message: e.message });
|
|
4190
|
+
throw e;
|
|
4191
|
+
}
|
|
4192
|
+
finally {
|
|
4193
|
+
span.end();
|
|
4194
|
+
}
|
|
4127
4195
|
}
|
|
4128
4196
|
/**
|
|
4129
|
-
* Returns an
|
|
4197
|
+
* Returns an instance of {@link RegistryArtifact} for calling service methods related to the artifact specified by `repositoryName` and `tagOrDigest`.
|
|
4130
4198
|
*
|
|
4131
4199
|
* @param repositoryName - the name of repository
|
|
4132
4200
|
* @param tagOrDigest - tag or digest of the artifact to retrieve
|
|
@@ -4141,10 +4209,9 @@ class ContainerRegistryClient {
|
|
|
4141
4209
|
return new ContainerRepositoryImpl(this.endpoint, repositoryName, this.client).getArtifact(tagOrDigest);
|
|
4142
4210
|
}
|
|
4143
4211
|
/**
|
|
4144
|
-
* Returns
|
|
4212
|
+
* Returns an instance of {@link ContainerRepository} for calling service methods related to the repository specified by `repositoryName`.
|
|
4145
4213
|
*
|
|
4146
|
-
* @param repositoryName - the name of repository
|
|
4147
|
-
* @param options - optional configuration for the operation
|
|
4214
|
+
* @param repositoryName - the name of repository
|
|
4148
4215
|
*/
|
|
4149
4216
|
getRepository(repositoryName) {
|
|
4150
4217
|
if (!repositoryName) {
|
|
@@ -4153,15 +4220,43 @@ class ContainerRegistryClient {
|
|
|
4153
4220
|
return new ContainerRepositoryImpl(this.endpoint, repositoryName, this.client);
|
|
4154
4221
|
}
|
|
4155
4222
|
/**
|
|
4156
|
-
*
|
|
4223
|
+
* Returns an async iterable iterator to list names of repositories in this registry.
|
|
4157
4224
|
*
|
|
4158
4225
|
* Example usage:
|
|
4159
|
-
* ```
|
|
4160
|
-
* let client = new ContainerRegistryClient(url,
|
|
4226
|
+
* ```javascript
|
|
4227
|
+
* let client = new ContainerRegistryClient(url, credential);
|
|
4161
4228
|
* for await (const repository of client.listRepositoryNames()) {
|
|
4162
4229
|
* console.log("repository name: ", repository);
|
|
4163
4230
|
* }
|
|
4164
4231
|
* ```
|
|
4232
|
+
*
|
|
4233
|
+
* Example using `iter.next()`:
|
|
4234
|
+
*
|
|
4235
|
+
* ```javascript
|
|
4236
|
+
* let iter = client.listRepositoryNames();
|
|
4237
|
+
* let item = await iter.next();
|
|
4238
|
+
* while (!item.done) {
|
|
4239
|
+
* console.log(`repository name: ${item.value}`);
|
|
4240
|
+
* item = await iter.next();
|
|
4241
|
+
* }
|
|
4242
|
+
* ```
|
|
4243
|
+
*
|
|
4244
|
+
* Example using `byPage()`:
|
|
4245
|
+
*
|
|
4246
|
+
* ```javascript
|
|
4247
|
+
* const pages = client.listRepositoryNames().byPage({ maxPageSize: 2 });
|
|
4248
|
+
* let page = await pages.next();
|
|
4249
|
+
* let i = 1;
|
|
4250
|
+
* while (!page.done) {
|
|
4251
|
+
* if (page.value) {
|
|
4252
|
+
* console.log(`-- page ${i++}`);
|
|
4253
|
+
* for (const name of page.value) {
|
|
4254
|
+
* console.log(` repository name: ${name}`);
|
|
4255
|
+
* }
|
|
4256
|
+
* }
|
|
4257
|
+
* page = await pages.next();
|
|
4258
|
+
* }
|
|
4259
|
+
* ```
|
|
4165
4260
|
* @param options -
|
|
4166
4261
|
*/
|
|
4167
4262
|
listRepositoryNames(options = {}) {
|
|
@@ -4173,7 +4268,7 @@ class ContainerRegistryClient {
|
|
|
4173
4268
|
[Symbol.asyncIterator]() {
|
|
4174
4269
|
return this;
|
|
4175
4270
|
},
|
|
4176
|
-
byPage: (settings = {}) => this.listRepositoriesPage(settings, options)
|
|
4271
|
+
byPage: (settings = {}) => this.listRepositoriesPage(settings, options),
|
|
4177
4272
|
};
|
|
4178
4273
|
}
|
|
4179
4274
|
listRepositoryItems(options = {}) {
|
|
@@ -4204,7 +4299,7 @@ class ContainerRegistryClient {
|
|
|
4204
4299
|
const array = currentPage.repositories;
|
|
4205
4300
|
yield yield tslib.__await(Object.defineProperty(array, "continuationToken", {
|
|
4206
4301
|
value: continuationState.continuationToken,
|
|
4207
|
-
enumerable: true
|
|
4302
|
+
enumerable: true,
|
|
4208
4303
|
}));
|
|
4209
4304
|
}
|
|
4210
4305
|
}
|
|
@@ -4215,7 +4310,7 @@ class ContainerRegistryClient {
|
|
|
4215
4310
|
const array = currentPage.repositories;
|
|
4216
4311
|
yield yield tslib.__await(Object.defineProperty(array, "continuationToken", {
|
|
4217
4312
|
value: continuationState.continuationToken,
|
|
4218
|
-
enumerable: true
|
|
4313
|
+
enumerable: true,
|
|
4219
4314
|
}));
|
|
4220
4315
|
}
|
|
4221
4316
|
}
|
|
@@ -4224,35 +4319,72 @@ class ContainerRegistryClient {
|
|
|
4224
4319
|
}
|
|
4225
4320
|
|
|
4226
4321
|
// Copyright (c) Microsoft Corporation.
|
|
4322
|
+
(function (KnownContainerRegistryAudience) {
|
|
4323
|
+
/** Azure China */
|
|
4324
|
+
KnownContainerRegistryAudience["AzureResourceManagerChina"] = "https://management.chinacloudapi.cn";
|
|
4325
|
+
/** Azure Gemany */
|
|
4326
|
+
KnownContainerRegistryAudience["AzureResourceManagerGermany"] = "https://management.microsoftazure.de";
|
|
4327
|
+
/** Azure Government */
|
|
4328
|
+
KnownContainerRegistryAudience["AzureResourceManagerGovernment"] = "https://management.usgovcloudapi.net";
|
|
4329
|
+
/** Azure Public Cloud */
|
|
4330
|
+
KnownContainerRegistryAudience["AzureResourceManagerPublicCloud"] = "https://management.azure.com";
|
|
4331
|
+
})(exports.KnownContainerRegistryAudience || (exports.KnownContainerRegistryAudience = {}));
|
|
4227
4332
|
(function (KnownArtifactArchitecture) {
|
|
4333
|
+
/** i386 */
|
|
4228
4334
|
KnownArtifactArchitecture["I386"] = "386";
|
|
4335
|
+
/** AMD64 */
|
|
4229
4336
|
KnownArtifactArchitecture["Amd64"] = "amd64";
|
|
4337
|
+
/** ARM */
|
|
4230
4338
|
KnownArtifactArchitecture["Arm"] = "arm";
|
|
4339
|
+
/** ARM64 */
|
|
4231
4340
|
KnownArtifactArchitecture["Arm64"] = "arm64";
|
|
4341
|
+
/** MIPS */
|
|
4232
4342
|
KnownArtifactArchitecture["Mips"] = "mips";
|
|
4343
|
+
/** MIPSLE */
|
|
4233
4344
|
KnownArtifactArchitecture["MipsLe"] = "mipsle";
|
|
4345
|
+
/** MIPS64 */
|
|
4234
4346
|
KnownArtifactArchitecture["Mips64"] = "mips64";
|
|
4347
|
+
/** MIPS64LE */
|
|
4235
4348
|
KnownArtifactArchitecture["Mips64Le"] = "mips64le";
|
|
4349
|
+
/** PPC64 */
|
|
4236
4350
|
KnownArtifactArchitecture["Ppc64"] = "ppc64";
|
|
4351
|
+
/** PPC64LE */
|
|
4237
4352
|
KnownArtifactArchitecture["Ppc64Le"] = "ppc64le";
|
|
4353
|
+
/** RISCv64 */
|
|
4238
4354
|
KnownArtifactArchitecture["RiscV64"] = "riscv64";
|
|
4355
|
+
/** s390x */
|
|
4239
4356
|
KnownArtifactArchitecture["S390X"] = "s390x";
|
|
4357
|
+
/** Wasm */
|
|
4240
4358
|
KnownArtifactArchitecture["Wasm"] = "wasm";
|
|
4241
4359
|
})(exports.KnownArtifactArchitecture || (exports.KnownArtifactArchitecture = {}));
|
|
4242
4360
|
(function (KnownArtifactOperatingSystem) {
|
|
4361
|
+
/** Aix */
|
|
4243
4362
|
KnownArtifactOperatingSystem["Aix"] = "aix";
|
|
4363
|
+
/** Android */
|
|
4244
4364
|
KnownArtifactOperatingSystem["Android"] = "android";
|
|
4365
|
+
/** Darwin */
|
|
4245
4366
|
KnownArtifactOperatingSystem["Darwin"] = "darwin";
|
|
4367
|
+
/** Dragonfly */
|
|
4246
4368
|
KnownArtifactOperatingSystem["Dragonfly"] = "dragonfly";
|
|
4369
|
+
/** FreeBSD */
|
|
4247
4370
|
KnownArtifactOperatingSystem["FreeBsd"] = "freebsd";
|
|
4371
|
+
/** Illumos */
|
|
4248
4372
|
KnownArtifactOperatingSystem["Illumos"] = "illumos";
|
|
4373
|
+
/** iOS */
|
|
4249
4374
|
KnownArtifactOperatingSystem["iOS"] = "ios";
|
|
4375
|
+
/** JS */
|
|
4250
4376
|
KnownArtifactOperatingSystem["JS"] = "js";
|
|
4377
|
+
/** Linux */
|
|
4251
4378
|
KnownArtifactOperatingSystem["Linux"] = "linux";
|
|
4379
|
+
/** NetBSD */
|
|
4252
4380
|
KnownArtifactOperatingSystem["NetBsd"] = "netbsd";
|
|
4381
|
+
/** OpenBSD */
|
|
4253
4382
|
KnownArtifactOperatingSystem["OpenBsd"] = "openbsd";
|
|
4383
|
+
/** Plan9 */
|
|
4254
4384
|
KnownArtifactOperatingSystem["Plan9"] = "plan9";
|
|
4385
|
+
/** Solaris */
|
|
4255
4386
|
KnownArtifactOperatingSystem["Solaris"] = "solaris";
|
|
4387
|
+
/** Windows */
|
|
4256
4388
|
KnownArtifactOperatingSystem["Windows"] = "windows";
|
|
4257
4389
|
})(exports.KnownArtifactOperatingSystem || (exports.KnownArtifactOperatingSystem = {}));
|
|
4258
4390
|
|