@akashnetwork/chain-sdk 1.0.0-alpha.28 → 1.0.0-alpha.29

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/esm/index.js CHANGED
@@ -37,7 +37,7 @@ import {
37
37
  validateSDL,
38
38
  withMetadata,
39
39
  yaml
40
- } from "./chunk-PN5ITHYB.js";
40
+ } from "./chunk-C7JHIHHY.js";
41
41
  import "./chunk-2XL6OX6E.js";
42
42
  import "./chunk-M2ZK7HEC.js";
43
43
  import "./chunk-UKRRRF5V.js";
@@ -31,7 +31,7 @@ import {
31
31
  transaction,
32
32
  validateSDL,
33
33
  yaml
34
- } from "./chunk-PN5ITHYB.js";
34
+ } from "./chunk-C7JHIHHY.js";
35
35
  import "./chunk-2XL6OX6E.js";
36
36
  import "./chunk-M2ZK7HEC.js";
37
37
  import "./chunk-UKRRRF5V.js";
@@ -57,6 +57,31 @@ definitions:
57
57
  - amount
58
58
  type: object
59
59
 
60
+ storageRamClassMustNotBePersistent:
61
+ description: RAM storage class must not have persistent=true
62
+ not:
63
+ properties:
64
+ class: { const: ram }
65
+ persistent:
66
+ oneOf:
67
+ - { const: true }
68
+ - { const: "true" }
69
+ required: [class, persistent]
70
+
71
+ storageNonRamClassRequiresPersistent:
72
+ description: Non-RAM storage classes (beta1, beta2, beta3, default) require persistent=true
73
+ if:
74
+ properties:
75
+ class: { enum: [beta1, beta2, beta3, default] }
76
+ required: [class]
77
+ then:
78
+ properties:
79
+ persistent:
80
+ oneOf:
81
+ - { const: true }
82
+ - { const: "true" }
83
+ required: [persistent]
84
+
60
85
  storageAttributesValidation:
61
86
  description: |
62
87
  Storage attributes validation:
@@ -70,14 +95,10 @@ definitions:
70
95
  oneOf:
71
96
  - type: boolean
72
97
  - type: string
73
- not:
74
- properties:
75
- class: { const: ram }
76
- persistent:
77
- oneOf:
78
- - { const: true }
79
- - { const: "true" }
80
- required: [class, persistent]
98
+ allOf:
99
+ - $ref: '#/definitions/storageRamClassMustNotBePersistent'
100
+ - $ref: '#/definitions/storageNonRamClassRequiresPersistent'
101
+ required: [class, persistent]
81
102
  type: object
82
103
 
83
104
  storageVolume:
@@ -100,6 +121,40 @@ definitions:
100
121
  minLength: 1
101
122
  pattern: '^/'
102
123
 
124
+ gpuUnitsGt0RequiresAttributes:
125
+ description: GPU units > 0 requires attributes to be present
126
+ if:
127
+ properties:
128
+ units:
129
+ oneOf:
130
+ - type: number
131
+ exclusiveMinimum: 0
132
+ - type: string
133
+ not:
134
+ pattern: '^0+(\.0+)?$'
135
+ required:
136
+ - units
137
+ then:
138
+ required:
139
+ - attributes
140
+
141
+ gpuAttributesRequireUnitsGt0:
142
+ description: GPU attributes present requires units > 0
143
+ if:
144
+ required:
145
+ - attributes
146
+ then:
147
+ properties:
148
+ units:
149
+ oneOf:
150
+ - type: number
151
+ exclusiveMinimum: 0
152
+ - type: string
153
+ not:
154
+ pattern: '^0+(\.0+)?$'
155
+ required:
156
+ - units
157
+
103
158
  exposeToWithIpEnforcesGlobal:
104
159
  description: Expose to with IP enforces global
105
160
  if:
@@ -218,7 +273,9 @@ properties:
218
273
  oneOf:
219
274
  - type: string
220
275
  - type: number
221
- required: [units]
276
+ allOf:
277
+ - $ref: '#/definitions/gpuUnitsGt0RequiresAttributes'
278
+ - $ref: '#/definitions/gpuAttributesRequireUnitsGt0'
222
279
  type: object
223
280
  memory:
224
281
  additionalProperties: false
@@ -312,83 +369,85 @@ properties:
312
369
  env:
313
370
  $ref: '#/definitions/stringArrayOrNull'
314
371
  expose:
315
- items:
316
- additionalProperties: false
317
- properties:
318
- accept:
319
- items:
320
- type: string
321
- type: array
322
- as:
323
- $ref: '#/definitions/portNumber'
324
- http_options:
372
+ oneOf:
373
+ - type: array
374
+ items:
325
375
  additionalProperties: false
326
376
  properties:
327
- max_body_size:
328
- type: integer
329
- minimum: 0
330
- maximum: 104857600
331
- description: Maximum body size in bytes (max 100 MB)
332
- next_cases:
333
- oneOf:
334
- - type: array
335
- items:
336
- $ref: '#/definitions/httpErrorCode'
337
- contains:
338
- const: off
339
- maxItems: 1
340
- minItems: 1
341
- - type: array
342
- items:
343
- $ref: '#/definitions/httpErrorCode'
344
- not:
345
- contains:
346
- const: off
347
- next_timeout:
348
- type: integer
349
- minimum: 0
350
- next_tries:
351
- type: integer
352
- minimum: 0
353
- read_timeout:
354
- type: integer
355
- minimum: 0
356
- maximum: 60000
357
- description: Read timeout in milliseconds (max 60 seconds)
358
- send_timeout:
359
- type: integer
360
- minimum: 0
361
- maximum: 60000
362
- description: Send timeout in milliseconds (max 60 seconds)
363
- type: object
364
- port:
365
- $ref: '#/definitions/portNumber'
366
- proto:
367
- enum:
368
- - TCP
369
- - UDP
370
- - tcp
371
- - udp
372
- type: string
373
- to:
374
- items:
375
- additionalProperties: false
376
- properties:
377
- global:
378
- type: boolean
379
- ip:
380
- minLength: 1
377
+ accept:
378
+ items:
381
379
  type: string
382
- service:
383
- type: string
384
- allOf:
385
- - $ref: '#/definitions/exposeToWithIpEnforcesGlobal'
386
- type: object
387
- type: array
388
- required:
389
- - port
390
- type: object
391
- type: array
380
+ type: array
381
+ as:
382
+ $ref: '#/definitions/portNumber'
383
+ http_options:
384
+ additionalProperties: false
385
+ properties:
386
+ max_body_size:
387
+ type: integer
388
+ minimum: 0
389
+ maximum: 104857600
390
+ description: Maximum body size in bytes (max 100 MB)
391
+ next_cases:
392
+ oneOf:
393
+ - type: array
394
+ items:
395
+ $ref: '#/definitions/httpErrorCode'
396
+ contains:
397
+ const: off
398
+ maxItems: 1
399
+ minItems: 1
400
+ - type: array
401
+ items:
402
+ $ref: '#/definitions/httpErrorCode'
403
+ not:
404
+ contains:
405
+ const: off
406
+ next_timeout:
407
+ type: integer
408
+ minimum: 0
409
+ next_tries:
410
+ type: integer
411
+ minimum: 0
412
+ read_timeout:
413
+ type: integer
414
+ minimum: 0
415
+ maximum: 60000
416
+ description: Read timeout in milliseconds (max 60 seconds)
417
+ send_timeout:
418
+ type: integer
419
+ minimum: 0
420
+ maximum: 60000
421
+ description: Send timeout in milliseconds (max 60 seconds)
422
+ type: object
423
+ port:
424
+ $ref: '#/definitions/portNumber'
425
+ proto:
426
+ enum:
427
+ - TCP
428
+ - UDP
429
+ - tcp
430
+ - udp
431
+ type: string
432
+ to:
433
+ items:
434
+ additionalProperties: false
435
+ properties:
436
+ global:
437
+ type: boolean
438
+ ip:
439
+ minLength: 1
440
+ type: string
441
+ service:
442
+ type: string
443
+ allOf:
444
+ - $ref: '#/definitions/exposeToWithIpEnforcesGlobal'
445
+ type: object
446
+ type: array
447
+ required:
448
+ - port
449
+ type: object
450
+ - type: 'null'
392
451
  image:
393
452
  type: string
394
453
  minLength: 1