@flyteorg/flyteidl 1.11.0-b0 → 1.11.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/README.md CHANGED
@@ -7,7 +7,7 @@ This is one of the core repositories of Flyte. It contains the Specification of
7
7
 
8
8
  * [flyte.org](https://flyte.org)
9
9
  * [Flyte Docs](http://docs.flyte.org)
10
- * [Flyteidl API reference documentation](https://docs.flyte.org/projects/flyteidl/en/stable/index.html)
10
+ * [Flyteidl API reference documentation](https://docs.flyte.org/en/latest/reference_flyteidl.html)
11
11
 
12
12
  ## Contributing to Flyteidl
13
13
 
@@ -84,8 +84,8 @@ export namespace flyteidl {
84
84
  /** ArtifactBindingData bindToTimePartition */
85
85
  bindToTimePartition?: (boolean|null);
86
86
 
87
- /** ArtifactBindingData transform */
88
- transform?: (string|null);
87
+ /** ArtifactBindingData timeTransform */
88
+ timeTransform?: (flyteidl.core.ITimeTransform|null);
89
89
  }
90
90
 
91
91
  /** Represents an ArtifactBindingData. */
@@ -103,8 +103,8 @@ export namespace flyteidl {
103
103
  /** ArtifactBindingData bindToTimePartition. */
104
104
  public bindToTimePartition: boolean;
105
105
 
106
- /** ArtifactBindingData transform. */
107
- public transform: string;
106
+ /** ArtifactBindingData timeTransform. */
107
+ public timeTransform?: (flyteidl.core.ITimeTransform|null);
108
108
 
109
109
  /** ArtifactBindingData partitionData. */
110
110
  public partitionData?: ("partitionKey"|"bindToTimePartition");
@@ -142,6 +142,79 @@ export namespace flyteidl {
142
142
  public static verify(message: { [k: string]: any }): (string|null);
143
143
  }
144
144
 
145
+ /** Granularity enum. */
146
+ enum Granularity {
147
+ UNSET = 0,
148
+ MINUTE = 1,
149
+ HOUR = 2,
150
+ DAY = 3,
151
+ MONTH = 4
152
+ }
153
+
154
+ /** Operator enum. */
155
+ enum Operator {
156
+ MINUS = 0,
157
+ PLUS = 1
158
+ }
159
+
160
+ /** Properties of a TimeTransform. */
161
+ interface ITimeTransform {
162
+
163
+ /** TimeTransform transform */
164
+ transform?: (string|null);
165
+
166
+ /** TimeTransform op */
167
+ op?: (flyteidl.core.Operator|null);
168
+ }
169
+
170
+ /** Represents a TimeTransform. */
171
+ class TimeTransform implements ITimeTransform {
172
+
173
+ /**
174
+ * Constructs a new TimeTransform.
175
+ * @param [properties] Properties to set
176
+ */
177
+ constructor(properties?: flyteidl.core.ITimeTransform);
178
+
179
+ /** TimeTransform transform. */
180
+ public transform: string;
181
+
182
+ /** TimeTransform op. */
183
+ public op: flyteidl.core.Operator;
184
+
185
+ /**
186
+ * Creates a new TimeTransform instance using the specified properties.
187
+ * @param [properties] Properties to set
188
+ * @returns TimeTransform instance
189
+ */
190
+ public static create(properties?: flyteidl.core.ITimeTransform): flyteidl.core.TimeTransform;
191
+
192
+ /**
193
+ * Encodes the specified TimeTransform message. Does not implicitly {@link flyteidl.core.TimeTransform.verify|verify} messages.
194
+ * @param message TimeTransform message or plain object to encode
195
+ * @param [writer] Writer to encode to
196
+ * @returns Writer
197
+ */
198
+ public static encode(message: flyteidl.core.ITimeTransform, writer?: $protobuf.Writer): $protobuf.Writer;
199
+
200
+ /**
201
+ * Decodes a TimeTransform message from the specified reader or buffer.
202
+ * @param reader Reader or buffer to decode from
203
+ * @param [length] Message length if known beforehand
204
+ * @returns TimeTransform
205
+ * @throws {Error} If the payload is not a reader or valid buffer
206
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
207
+ */
208
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): flyteidl.core.TimeTransform;
209
+
210
+ /**
211
+ * Verifies a TimeTransform message.
212
+ * @param message Plain object to verify
213
+ * @returns `null` if valid, otherwise the reason why it is not
214
+ */
215
+ public static verify(message: { [k: string]: any }): (string|null);
216
+ }
217
+
145
218
  /** Properties of an InputBindingData. */
146
219
  interface IInputBindingData {
147
220
 
@@ -194,6 +267,52 @@ export namespace flyteidl {
194
267
  public static verify(message: { [k: string]: any }): (string|null);
195
268
  }
196
269
 
270
+ /** Properties of a RuntimeBinding. */
271
+ interface IRuntimeBinding {
272
+ }
273
+
274
+ /** Represents a RuntimeBinding. */
275
+ class RuntimeBinding implements IRuntimeBinding {
276
+
277
+ /**
278
+ * Constructs a new RuntimeBinding.
279
+ * @param [properties] Properties to set
280
+ */
281
+ constructor(properties?: flyteidl.core.IRuntimeBinding);
282
+
283
+ /**
284
+ * Creates a new RuntimeBinding instance using the specified properties.
285
+ * @param [properties] Properties to set
286
+ * @returns RuntimeBinding instance
287
+ */
288
+ public static create(properties?: flyteidl.core.IRuntimeBinding): flyteidl.core.RuntimeBinding;
289
+
290
+ /**
291
+ * Encodes the specified RuntimeBinding message. Does not implicitly {@link flyteidl.core.RuntimeBinding.verify|verify} messages.
292
+ * @param message RuntimeBinding message or plain object to encode
293
+ * @param [writer] Writer to encode to
294
+ * @returns Writer
295
+ */
296
+ public static encode(message: flyteidl.core.IRuntimeBinding, writer?: $protobuf.Writer): $protobuf.Writer;
297
+
298
+ /**
299
+ * Decodes a RuntimeBinding message from the specified reader or buffer.
300
+ * @param reader Reader or buffer to decode from
301
+ * @param [length] Message length if known beforehand
302
+ * @returns RuntimeBinding
303
+ * @throws {Error} If the payload is not a reader or valid buffer
304
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
305
+ */
306
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): flyteidl.core.RuntimeBinding;
307
+
308
+ /**
309
+ * Verifies a RuntimeBinding message.
310
+ * @param message Plain object to verify
311
+ * @returns `null` if valid, otherwise the reason why it is not
312
+ */
313
+ public static verify(message: { [k: string]: any }): (string|null);
314
+ }
315
+
197
316
  /** Properties of a LabelValue. */
198
317
  interface ILabelValue {
199
318
 
@@ -208,6 +327,9 @@ export namespace flyteidl {
208
327
 
209
328
  /** LabelValue inputBinding */
210
329
  inputBinding?: (flyteidl.core.IInputBindingData|null);
330
+
331
+ /** LabelValue runtimeBinding */
332
+ runtimeBinding?: (flyteidl.core.IRuntimeBinding|null);
211
333
  }
212
334
 
213
335
  /** Represents a LabelValue. */
@@ -231,8 +353,11 @@ export namespace flyteidl {
231
353
  /** LabelValue inputBinding. */
232
354
  public inputBinding?: (flyteidl.core.IInputBindingData|null);
233
355
 
356
+ /** LabelValue runtimeBinding. */
357
+ public runtimeBinding?: (flyteidl.core.IRuntimeBinding|null);
358
+
234
359
  /** LabelValue value. */
235
- public value?: ("staticValue"|"timeValue"|"triggeredBinding"|"inputBinding");
360
+ public value?: ("staticValue"|"timeValue"|"triggeredBinding"|"inputBinding"|"runtimeBinding");
236
361
 
237
362
  /**
238
363
  * Creates a new LabelValue instance using the specified properties.
@@ -324,6 +449,9 @@ export namespace flyteidl {
324
449
 
325
450
  /** TimePartition value */
326
451
  value?: (flyteidl.core.ILabelValue|null);
452
+
453
+ /** TimePartition granularity */
454
+ granularity?: (flyteidl.core.Granularity|null);
327
455
  }
328
456
 
329
457
  /** Represents a TimePartition. */
@@ -338,6 +466,9 @@ export namespace flyteidl {
338
466
  /** TimePartition value. */
339
467
  public value?: (flyteidl.core.ILabelValue|null);
340
468
 
469
+ /** TimePartition granularity. */
470
+ public granularity: flyteidl.core.Granularity;
471
+
341
472
  /**
342
473
  * Creates a new TimePartition instance using the specified properties.
343
474
  * @param [properties] Properties to set
@@ -22616,6 +22747,9 @@ export namespace flyteidl {
22616
22747
 
22617
22748
  /** CreateUploadLocationResponse expiresAt */
22618
22749
  expiresAt?: (google.protobuf.ITimestamp|null);
22750
+
22751
+ /** CreateUploadLocationResponse headers */
22752
+ headers?: ({ [k: string]: string }|null);
22619
22753
  }
22620
22754
 
22621
22755
  /** Represents a CreateUploadLocationResponse. */
@@ -22636,6 +22770,9 @@ export namespace flyteidl {
22636
22770
  /** CreateUploadLocationResponse expiresAt. */
22637
22771
  public expiresAt?: (google.protobuf.ITimestamp|null);
22638
22772
 
22773
+ /** CreateUploadLocationResponse headers. */
22774
+ public headers: { [k: string]: string };
22775
+
22639
22776
  /**
22640
22777
  * Creates a new CreateUploadLocationResponse instance using the specified properties.
22641
22778
  * @param [properties] Properties to set
@@ -22689,6 +22826,9 @@ export namespace flyteidl {
22689
22826
 
22690
22827
  /** CreateUploadLocationRequest filenameRoot */
22691
22828
  filenameRoot?: (string|null);
22829
+
22830
+ /** CreateUploadLocationRequest addContentMd5Metadata */
22831
+ addContentMd5Metadata?: (boolean|null);
22692
22832
  }
22693
22833
 
22694
22834
  /** Represents a CreateUploadLocationRequest. */
@@ -22718,6 +22858,9 @@ export namespace flyteidl {
22718
22858
  /** CreateUploadLocationRequest filenameRoot. */
22719
22859
  public filenameRoot: string;
22720
22860
 
22861
+ /** CreateUploadLocationRequest addContentMd5Metadata. */
22862
+ public addContentMd5Metadata: boolean;
22863
+
22721
22864
  /**
22722
22865
  * Creates a new CreateUploadLocationRequest instance using the specified properties.
22723
22866
  * @param [properties] Properties to set
@@ -203,7 +203,7 @@
203
203
  * @interface IArtifactBindingData
204
204
  * @property {string|null} [partitionKey] ArtifactBindingData partitionKey
205
205
  * @property {boolean|null} [bindToTimePartition] ArtifactBindingData bindToTimePartition
206
- * @property {string|null} [transform] ArtifactBindingData transform
206
+ * @property {flyteidl.core.ITimeTransform|null} [timeTransform] ArtifactBindingData timeTransform
207
207
  */
208
208
 
209
209
  /**
@@ -238,12 +238,12 @@
238
238
  ArtifactBindingData.prototype.bindToTimePartition = false;
239
239
 
240
240
  /**
241
- * ArtifactBindingData transform.
242
- * @member {string} transform
241
+ * ArtifactBindingData timeTransform.
242
+ * @member {flyteidl.core.ITimeTransform|null|undefined} timeTransform
243
243
  * @memberof flyteidl.core.ArtifactBindingData
244
244
  * @instance
245
245
  */
246
- ArtifactBindingData.prototype.transform = "";
246
+ ArtifactBindingData.prototype.timeTransform = null;
247
247
 
248
248
  // OneOf field names bound to virtual getters and setters
249
249
  var $oneOfFields;
@@ -284,11 +284,11 @@
284
284
  if (!writer)
285
285
  writer = $Writer.create();
286
286
  if (message.partitionKey != null && message.hasOwnProperty("partitionKey"))
287
- writer.uint32(/* id 2, wireType 2 =*/18).string(message.partitionKey);
287
+ writer.uint32(/* id 5, wireType 2 =*/42).string(message.partitionKey);
288
288
  if (message.bindToTimePartition != null && message.hasOwnProperty("bindToTimePartition"))
289
- writer.uint32(/* id 3, wireType 0 =*/24).bool(message.bindToTimePartition);
290
- if (message.transform != null && message.hasOwnProperty("transform"))
291
- writer.uint32(/* id 4, wireType 2 =*/34).string(message.transform);
289
+ writer.uint32(/* id 6, wireType 0 =*/48).bool(message.bindToTimePartition);
290
+ if (message.timeTransform != null && message.hasOwnProperty("timeTransform"))
291
+ $root.flyteidl.core.TimeTransform.encode(message.timeTransform, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
292
292
  return writer;
293
293
  };
294
294
 
@@ -310,14 +310,14 @@
310
310
  while (reader.pos < end) {
311
311
  var tag = reader.uint32();
312
312
  switch (tag >>> 3) {
313
- case 2:
313
+ case 5:
314
314
  message.partitionKey = reader.string();
315
315
  break;
316
- case 3:
316
+ case 6:
317
317
  message.bindToTimePartition = reader.bool();
318
318
  break;
319
- case 4:
320
- message.transform = reader.string();
319
+ case 7:
320
+ message.timeTransform = $root.flyteidl.core.TimeTransform.decode(reader, reader.uint32());
321
321
  break;
322
322
  default:
323
323
  reader.skipType(tag & 7);
@@ -351,13 +351,181 @@
351
351
  if (typeof message.bindToTimePartition !== "boolean")
352
352
  return "bindToTimePartition: boolean expected";
353
353
  }
354
+ if (message.timeTransform != null && message.hasOwnProperty("timeTransform")) {
355
+ var error = $root.flyteidl.core.TimeTransform.verify(message.timeTransform);
356
+ if (error)
357
+ return "timeTransform." + error;
358
+ }
359
+ return null;
360
+ };
361
+
362
+ return ArtifactBindingData;
363
+ })();
364
+
365
+ /**
366
+ * Granularity enum.
367
+ * @name flyteidl.core.Granularity
368
+ * @enum {string}
369
+ * @property {number} UNSET=0 UNSET value
370
+ * @property {number} MINUTE=1 MINUTE value
371
+ * @property {number} HOUR=2 HOUR value
372
+ * @property {number} DAY=3 DAY value
373
+ * @property {number} MONTH=4 MONTH value
374
+ */
375
+ core.Granularity = (function() {
376
+ var valuesById = {}, values = Object.create(valuesById);
377
+ values[valuesById[0] = "UNSET"] = 0;
378
+ values[valuesById[1] = "MINUTE"] = 1;
379
+ values[valuesById[2] = "HOUR"] = 2;
380
+ values[valuesById[3] = "DAY"] = 3;
381
+ values[valuesById[4] = "MONTH"] = 4;
382
+ return values;
383
+ })();
384
+
385
+ /**
386
+ * Operator enum.
387
+ * @name flyteidl.core.Operator
388
+ * @enum {string}
389
+ * @property {number} MINUS=0 MINUS value
390
+ * @property {number} PLUS=1 PLUS value
391
+ */
392
+ core.Operator = (function() {
393
+ var valuesById = {}, values = Object.create(valuesById);
394
+ values[valuesById[0] = "MINUS"] = 0;
395
+ values[valuesById[1] = "PLUS"] = 1;
396
+ return values;
397
+ })();
398
+
399
+ core.TimeTransform = (function() {
400
+
401
+ /**
402
+ * Properties of a TimeTransform.
403
+ * @memberof flyteidl.core
404
+ * @interface ITimeTransform
405
+ * @property {string|null} [transform] TimeTransform transform
406
+ * @property {flyteidl.core.Operator|null} [op] TimeTransform op
407
+ */
408
+
409
+ /**
410
+ * Constructs a new TimeTransform.
411
+ * @memberof flyteidl.core
412
+ * @classdesc Represents a TimeTransform.
413
+ * @implements ITimeTransform
414
+ * @constructor
415
+ * @param {flyteidl.core.ITimeTransform=} [properties] Properties to set
416
+ */
417
+ function TimeTransform(properties) {
418
+ if (properties)
419
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
420
+ if (properties[keys[i]] != null)
421
+ this[keys[i]] = properties[keys[i]];
422
+ }
423
+
424
+ /**
425
+ * TimeTransform transform.
426
+ * @member {string} transform
427
+ * @memberof flyteidl.core.TimeTransform
428
+ * @instance
429
+ */
430
+ TimeTransform.prototype.transform = "";
431
+
432
+ /**
433
+ * TimeTransform op.
434
+ * @member {flyteidl.core.Operator} op
435
+ * @memberof flyteidl.core.TimeTransform
436
+ * @instance
437
+ */
438
+ TimeTransform.prototype.op = 0;
439
+
440
+ /**
441
+ * Creates a new TimeTransform instance using the specified properties.
442
+ * @function create
443
+ * @memberof flyteidl.core.TimeTransform
444
+ * @static
445
+ * @param {flyteidl.core.ITimeTransform=} [properties] Properties to set
446
+ * @returns {flyteidl.core.TimeTransform} TimeTransform instance
447
+ */
448
+ TimeTransform.create = function create(properties) {
449
+ return new TimeTransform(properties);
450
+ };
451
+
452
+ /**
453
+ * Encodes the specified TimeTransform message. Does not implicitly {@link flyteidl.core.TimeTransform.verify|verify} messages.
454
+ * @function encode
455
+ * @memberof flyteidl.core.TimeTransform
456
+ * @static
457
+ * @param {flyteidl.core.ITimeTransform} message TimeTransform message or plain object to encode
458
+ * @param {$protobuf.Writer} [writer] Writer to encode to
459
+ * @returns {$protobuf.Writer} Writer
460
+ */
461
+ TimeTransform.encode = function encode(message, writer) {
462
+ if (!writer)
463
+ writer = $Writer.create();
464
+ if (message.transform != null && message.hasOwnProperty("transform"))
465
+ writer.uint32(/* id 1, wireType 2 =*/10).string(message.transform);
466
+ if (message.op != null && message.hasOwnProperty("op"))
467
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.op);
468
+ return writer;
469
+ };
470
+
471
+ /**
472
+ * Decodes a TimeTransform message from the specified reader or buffer.
473
+ * @function decode
474
+ * @memberof flyteidl.core.TimeTransform
475
+ * @static
476
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
477
+ * @param {number} [length] Message length if known beforehand
478
+ * @returns {flyteidl.core.TimeTransform} TimeTransform
479
+ * @throws {Error} If the payload is not a reader or valid buffer
480
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
481
+ */
482
+ TimeTransform.decode = function decode(reader, length) {
483
+ if (!(reader instanceof $Reader))
484
+ reader = $Reader.create(reader);
485
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.flyteidl.core.TimeTransform();
486
+ while (reader.pos < end) {
487
+ var tag = reader.uint32();
488
+ switch (tag >>> 3) {
489
+ case 1:
490
+ message.transform = reader.string();
491
+ break;
492
+ case 2:
493
+ message.op = reader.int32();
494
+ break;
495
+ default:
496
+ reader.skipType(tag & 7);
497
+ break;
498
+ }
499
+ }
500
+ return message;
501
+ };
502
+
503
+ /**
504
+ * Verifies a TimeTransform message.
505
+ * @function verify
506
+ * @memberof flyteidl.core.TimeTransform
507
+ * @static
508
+ * @param {Object.<string,*>} message Plain object to verify
509
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
510
+ */
511
+ TimeTransform.verify = function verify(message) {
512
+ if (typeof message !== "object" || message === null)
513
+ return "object expected";
354
514
  if (message.transform != null && message.hasOwnProperty("transform"))
355
515
  if (!$util.isString(message.transform))
356
516
  return "transform: string expected";
517
+ if (message.op != null && message.hasOwnProperty("op"))
518
+ switch (message.op) {
519
+ default:
520
+ return "op: enum value expected";
521
+ case 0:
522
+ case 1:
523
+ break;
524
+ }
357
525
  return null;
358
526
  };
359
527
 
360
- return ArtifactBindingData;
528
+ return TimeTransform;
361
529
  })();
362
530
 
363
531
  core.InputBindingData = (function() {
@@ -470,6 +638,99 @@
470
638
  return InputBindingData;
471
639
  })();
472
640
 
641
+ core.RuntimeBinding = (function() {
642
+
643
+ /**
644
+ * Properties of a RuntimeBinding.
645
+ * @memberof flyteidl.core
646
+ * @interface IRuntimeBinding
647
+ */
648
+
649
+ /**
650
+ * Constructs a new RuntimeBinding.
651
+ * @memberof flyteidl.core
652
+ * @classdesc Represents a RuntimeBinding.
653
+ * @implements IRuntimeBinding
654
+ * @constructor
655
+ * @param {flyteidl.core.IRuntimeBinding=} [properties] Properties to set
656
+ */
657
+ function RuntimeBinding(properties) {
658
+ if (properties)
659
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
660
+ if (properties[keys[i]] != null)
661
+ this[keys[i]] = properties[keys[i]];
662
+ }
663
+
664
+ /**
665
+ * Creates a new RuntimeBinding instance using the specified properties.
666
+ * @function create
667
+ * @memberof flyteidl.core.RuntimeBinding
668
+ * @static
669
+ * @param {flyteidl.core.IRuntimeBinding=} [properties] Properties to set
670
+ * @returns {flyteidl.core.RuntimeBinding} RuntimeBinding instance
671
+ */
672
+ RuntimeBinding.create = function create(properties) {
673
+ return new RuntimeBinding(properties);
674
+ };
675
+
676
+ /**
677
+ * Encodes the specified RuntimeBinding message. Does not implicitly {@link flyteidl.core.RuntimeBinding.verify|verify} messages.
678
+ * @function encode
679
+ * @memberof flyteidl.core.RuntimeBinding
680
+ * @static
681
+ * @param {flyteidl.core.IRuntimeBinding} message RuntimeBinding message or plain object to encode
682
+ * @param {$protobuf.Writer} [writer] Writer to encode to
683
+ * @returns {$protobuf.Writer} Writer
684
+ */
685
+ RuntimeBinding.encode = function encode(message, writer) {
686
+ if (!writer)
687
+ writer = $Writer.create();
688
+ return writer;
689
+ };
690
+
691
+ /**
692
+ * Decodes a RuntimeBinding message from the specified reader or buffer.
693
+ * @function decode
694
+ * @memberof flyteidl.core.RuntimeBinding
695
+ * @static
696
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
697
+ * @param {number} [length] Message length if known beforehand
698
+ * @returns {flyteidl.core.RuntimeBinding} RuntimeBinding
699
+ * @throws {Error} If the payload is not a reader or valid buffer
700
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
701
+ */
702
+ RuntimeBinding.decode = function decode(reader, length) {
703
+ if (!(reader instanceof $Reader))
704
+ reader = $Reader.create(reader);
705
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.flyteidl.core.RuntimeBinding();
706
+ while (reader.pos < end) {
707
+ var tag = reader.uint32();
708
+ switch (tag >>> 3) {
709
+ default:
710
+ reader.skipType(tag & 7);
711
+ break;
712
+ }
713
+ }
714
+ return message;
715
+ };
716
+
717
+ /**
718
+ * Verifies a RuntimeBinding message.
719
+ * @function verify
720
+ * @memberof flyteidl.core.RuntimeBinding
721
+ * @static
722
+ * @param {Object.<string,*>} message Plain object to verify
723
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
724
+ */
725
+ RuntimeBinding.verify = function verify(message) {
726
+ if (typeof message !== "object" || message === null)
727
+ return "object expected";
728
+ return null;
729
+ };
730
+
731
+ return RuntimeBinding;
732
+ })();
733
+
473
734
  core.LabelValue = (function() {
474
735
 
475
736
  /**
@@ -480,6 +741,7 @@
480
741
  * @property {google.protobuf.ITimestamp|null} [timeValue] LabelValue timeValue
481
742
  * @property {flyteidl.core.IArtifactBindingData|null} [triggeredBinding] LabelValue triggeredBinding
482
743
  * @property {flyteidl.core.IInputBindingData|null} [inputBinding] LabelValue inputBinding
744
+ * @property {flyteidl.core.IRuntimeBinding|null} [runtimeBinding] LabelValue runtimeBinding
483
745
  */
484
746
 
485
747
  /**
@@ -529,17 +791,25 @@
529
791
  */
530
792
  LabelValue.prototype.inputBinding = null;
531
793
 
794
+ /**
795
+ * LabelValue runtimeBinding.
796
+ * @member {flyteidl.core.IRuntimeBinding|null|undefined} runtimeBinding
797
+ * @memberof flyteidl.core.LabelValue
798
+ * @instance
799
+ */
800
+ LabelValue.prototype.runtimeBinding = null;
801
+
532
802
  // OneOf field names bound to virtual getters and setters
533
803
  var $oneOfFields;
534
804
 
535
805
  /**
536
806
  * LabelValue value.
537
- * @member {"staticValue"|"timeValue"|"triggeredBinding"|"inputBinding"|undefined} value
807
+ * @member {"staticValue"|"timeValue"|"triggeredBinding"|"inputBinding"|"runtimeBinding"|undefined} value
538
808
  * @memberof flyteidl.core.LabelValue
539
809
  * @instance
540
810
  */
541
811
  Object.defineProperty(LabelValue.prototype, "value", {
542
- get: $util.oneOfGetter($oneOfFields = ["staticValue", "timeValue", "triggeredBinding", "inputBinding"]),
812
+ get: $util.oneOfGetter($oneOfFields = ["staticValue", "timeValue", "triggeredBinding", "inputBinding", "runtimeBinding"]),
543
813
  set: $util.oneOfSetter($oneOfFields)
544
814
  });
545
815
 
@@ -575,6 +845,8 @@
575
845
  $root.flyteidl.core.ArtifactBindingData.encode(message.triggeredBinding, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
576
846
  if (message.inputBinding != null && message.hasOwnProperty("inputBinding"))
577
847
  $root.flyteidl.core.InputBindingData.encode(message.inputBinding, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
848
+ if (message.runtimeBinding != null && message.hasOwnProperty("runtimeBinding"))
849
+ $root.flyteidl.core.RuntimeBinding.encode(message.runtimeBinding, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
578
850
  return writer;
579
851
  };
580
852
 
@@ -608,6 +880,9 @@
608
880
  case 4:
609
881
  message.inputBinding = $root.flyteidl.core.InputBindingData.decode(reader, reader.uint32());
610
882
  break;
883
+ case 5:
884
+ message.runtimeBinding = $root.flyteidl.core.RuntimeBinding.decode(reader, reader.uint32());
885
+ break;
611
886
  default:
612
887
  reader.skipType(tag & 7);
613
888
  break;
@@ -663,6 +938,16 @@
663
938
  return "inputBinding." + error;
664
939
  }
665
940
  }
941
+ if (message.runtimeBinding != null && message.hasOwnProperty("runtimeBinding")) {
942
+ if (properties.value === 1)
943
+ return "value: multiple values";
944
+ properties.value = 1;
945
+ {
946
+ var error = $root.flyteidl.core.RuntimeBinding.verify(message.runtimeBinding);
947
+ if (error)
948
+ return "runtimeBinding." + error;
949
+ }
950
+ }
666
951
  return null;
667
952
  };
668
953
 
@@ -802,6 +1087,7 @@
802
1087
  * @memberof flyteidl.core
803
1088
  * @interface ITimePartition
804
1089
  * @property {flyteidl.core.ILabelValue|null} [value] TimePartition value
1090
+ * @property {flyteidl.core.Granularity|null} [granularity] TimePartition granularity
805
1091
  */
806
1092
 
807
1093
  /**
@@ -827,6 +1113,14 @@
827
1113
  */
828
1114
  TimePartition.prototype.value = null;
829
1115
 
1116
+ /**
1117
+ * TimePartition granularity.
1118
+ * @member {flyteidl.core.Granularity} granularity
1119
+ * @memberof flyteidl.core.TimePartition
1120
+ * @instance
1121
+ */
1122
+ TimePartition.prototype.granularity = 0;
1123
+
830
1124
  /**
831
1125
  * Creates a new TimePartition instance using the specified properties.
832
1126
  * @function create
@@ -853,6 +1147,8 @@
853
1147
  writer = $Writer.create();
854
1148
  if (message.value != null && message.hasOwnProperty("value"))
855
1149
  $root.flyteidl.core.LabelValue.encode(message.value, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
1150
+ if (message.granularity != null && message.hasOwnProperty("granularity"))
1151
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.granularity);
856
1152
  return writer;
857
1153
  };
858
1154
 
@@ -877,6 +1173,9 @@
877
1173
  case 1:
878
1174
  message.value = $root.flyteidl.core.LabelValue.decode(reader, reader.uint32());
879
1175
  break;
1176
+ case 2:
1177
+ message.granularity = reader.int32();
1178
+ break;
880
1179
  default:
881
1180
  reader.skipType(tag & 7);
882
1181
  break;
@@ -901,6 +1200,17 @@
901
1200
  if (error)
902
1201
  return "value." + error;
903
1202
  }
1203
+ if (message.granularity != null && message.hasOwnProperty("granularity"))
1204
+ switch (message.granularity) {
1205
+ default:
1206
+ return "granularity: enum value expected";
1207
+ case 0:
1208
+ case 1:
1209
+ case 2:
1210
+ case 3:
1211
+ case 4:
1212
+ break;
1213
+ }
904
1214
  return null;
905
1215
  };
906
1216
 
@@ -53020,6 +53330,7 @@
53020
53330
  * @property {string|null} [signedUrl] CreateUploadLocationResponse signedUrl
53021
53331
  * @property {string|null} [nativeUrl] CreateUploadLocationResponse nativeUrl
53022
53332
  * @property {google.protobuf.ITimestamp|null} [expiresAt] CreateUploadLocationResponse expiresAt
53333
+ * @property {Object.<string,string>|null} [headers] CreateUploadLocationResponse headers
53023
53334
  */
53024
53335
 
53025
53336
  /**
@@ -53031,6 +53342,7 @@
53031
53342
  * @param {flyteidl.service.ICreateUploadLocationResponse=} [properties] Properties to set
53032
53343
  */
53033
53344
  function CreateUploadLocationResponse(properties) {
53345
+ this.headers = {};
53034
53346
  if (properties)
53035
53347
  for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
53036
53348
  if (properties[keys[i]] != null)
@@ -53061,6 +53373,14 @@
53061
53373
  */
53062
53374
  CreateUploadLocationResponse.prototype.expiresAt = null;
53063
53375
 
53376
+ /**
53377
+ * CreateUploadLocationResponse headers.
53378
+ * @member {Object.<string,string>} headers
53379
+ * @memberof flyteidl.service.CreateUploadLocationResponse
53380
+ * @instance
53381
+ */
53382
+ CreateUploadLocationResponse.prototype.headers = $util.emptyObject;
53383
+
53064
53384
  /**
53065
53385
  * Creates a new CreateUploadLocationResponse instance using the specified properties.
53066
53386
  * @function create
@@ -53091,6 +53411,9 @@
53091
53411
  writer.uint32(/* id 2, wireType 2 =*/18).string(message.nativeUrl);
53092
53412
  if (message.expiresAt != null && message.hasOwnProperty("expiresAt"))
53093
53413
  $root.google.protobuf.Timestamp.encode(message.expiresAt, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
53414
+ if (message.headers != null && message.hasOwnProperty("headers"))
53415
+ for (var keys = Object.keys(message.headers), i = 0; i < keys.length; ++i)
53416
+ writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.headers[keys[i]]).ldelim();
53094
53417
  return writer;
53095
53418
  };
53096
53419
 
@@ -53108,7 +53431,7 @@
53108
53431
  CreateUploadLocationResponse.decode = function decode(reader, length) {
53109
53432
  if (!(reader instanceof $Reader))
53110
53433
  reader = $Reader.create(reader);
53111
- var end = length === undefined ? reader.len : reader.pos + length, message = new $root.flyteidl.service.CreateUploadLocationResponse();
53434
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.flyteidl.service.CreateUploadLocationResponse(), key;
53112
53435
  while (reader.pos < end) {
53113
53436
  var tag = reader.uint32();
53114
53437
  switch (tag >>> 3) {
@@ -53121,6 +53444,14 @@
53121
53444
  case 3:
53122
53445
  message.expiresAt = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
53123
53446
  break;
53447
+ case 4:
53448
+ reader.skip().pos++;
53449
+ if (message.headers === $util.emptyObject)
53450
+ message.headers = {};
53451
+ key = reader.string();
53452
+ reader.pos++;
53453
+ message.headers[key] = reader.string();
53454
+ break;
53124
53455
  default:
53125
53456
  reader.skipType(tag & 7);
53126
53457
  break;
@@ -53151,6 +53482,14 @@
53151
53482
  if (error)
53152
53483
  return "expiresAt." + error;
53153
53484
  }
53485
+ if (message.headers != null && message.hasOwnProperty("headers")) {
53486
+ if (!$util.isObject(message.headers))
53487
+ return "headers: object expected";
53488
+ var key = Object.keys(message.headers);
53489
+ for (var i = 0; i < key.length; ++i)
53490
+ if (!$util.isString(message.headers[key[i]]))
53491
+ return "headers: string{k:string} expected";
53492
+ }
53154
53493
  return null;
53155
53494
  };
53156
53495
 
@@ -53169,6 +53508,7 @@
53169
53508
  * @property {google.protobuf.IDuration|null} [expiresIn] CreateUploadLocationRequest expiresIn
53170
53509
  * @property {Uint8Array|null} [contentMd5] CreateUploadLocationRequest contentMd5
53171
53510
  * @property {string|null} [filenameRoot] CreateUploadLocationRequest filenameRoot
53511
+ * @property {boolean|null} [addContentMd5Metadata] CreateUploadLocationRequest addContentMd5Metadata
53172
53512
  */
53173
53513
 
53174
53514
  /**
@@ -53234,6 +53574,14 @@
53234
53574
  */
53235
53575
  CreateUploadLocationRequest.prototype.filenameRoot = "";
53236
53576
 
53577
+ /**
53578
+ * CreateUploadLocationRequest addContentMd5Metadata.
53579
+ * @member {boolean} addContentMd5Metadata
53580
+ * @memberof flyteidl.service.CreateUploadLocationRequest
53581
+ * @instance
53582
+ */
53583
+ CreateUploadLocationRequest.prototype.addContentMd5Metadata = false;
53584
+
53237
53585
  /**
53238
53586
  * Creates a new CreateUploadLocationRequest instance using the specified properties.
53239
53587
  * @function create
@@ -53270,6 +53618,8 @@
53270
53618
  writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.contentMd5);
53271
53619
  if (message.filenameRoot != null && message.hasOwnProperty("filenameRoot"))
53272
53620
  writer.uint32(/* id 6, wireType 2 =*/50).string(message.filenameRoot);
53621
+ if (message.addContentMd5Metadata != null && message.hasOwnProperty("addContentMd5Metadata"))
53622
+ writer.uint32(/* id 7, wireType 0 =*/56).bool(message.addContentMd5Metadata);
53273
53623
  return writer;
53274
53624
  };
53275
53625
 
@@ -53309,6 +53659,9 @@
53309
53659
  case 6:
53310
53660
  message.filenameRoot = reader.string();
53311
53661
  break;
53662
+ case 7:
53663
+ message.addContentMd5Metadata = reader.bool();
53664
+ break;
53312
53665
  default:
53313
53666
  reader.skipType(tag & 7);
53314
53667
  break;
@@ -53348,6 +53701,9 @@
53348
53701
  if (message.filenameRoot != null && message.hasOwnProperty("filenameRoot"))
53349
53702
  if (!$util.isString(message.filenameRoot))
53350
53703
  return "filenameRoot: string expected";
53704
+ if (message.addContentMd5Metadata != null && message.hasOwnProperty("addContentMd5Metadata"))
53705
+ if (typeof message.addContentMd5Metadata !== "boolean")
53706
+ return "addContentMd5Metadata: boolean expected";
53351
53707
  return null;
53352
53708
  };
53353
53709
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flyteorg/flyteidl",
3
- "version": "1.11.0-b0",
3
+ "version": "1.11.0",
4
4
  "description": "Compiled protocol buffers and gRPC service clients/servers for Flyte IDLs",
5
5
  "repository": {
6
6
  "type": "git",
@@ -2206,7 +2206,7 @@ Sql represents a generic sql workload with a statement and dialect.
2206
2206
  :header: "Field", "Type", "Label", "Description"
2207
2207
  :widths: auto
2208
2208
 
2209
- "statement", ":ref:`ref_string`", "", "The actual query to run, the query can have templated parameters. We use Flyte's Golang templating format for Query templating. Refer to the templating documentation. https://docs.flyte.org/projects/cookbook/en/latest/auto/integrations/external_services/hive/hive.html#sphx-glr-auto-integrations-external-services-hive-hive-py For example, insert overwrite directory '{{ .rawOutputDataPrefix }}' stored as parquet select * from my_table where ds = '{{ .Inputs.ds }}'"
2209
+ "statement", ":ref:`ref_string`", "", "The actual query to run, the query can have templated parameters. We use Flyte's Golang templating format for Query templating. For example, insert overwrite directory '{{ .rawOutputDataPrefix }}' stored as parquet select * from my_table where ds = '{{ .Inputs.ds }}'"
2210
2210
  "dialect", ":ref:`ref_flyteidl.core.Sql.Dialect`", "", ""
2211
2211
 
2212
2212
 
@@ -0,0 +1,143 @@
1
+ syntax = "proto3";
2
+
3
+ package flyteidl.cacheservice;
4
+
5
+ import "flyteidl/core/literals.proto";
6
+ import "flyteidl/core/types.proto";
7
+ import "flyteidl/core/identifier.proto";
8
+ import "flyteidl/core/interface.proto";
9
+ import "google/protobuf/duration.proto";
10
+ import "google/protobuf/timestamp.proto";
11
+
12
+ option go_package = "github.com/flyteorg/flyte/flyteidl/gen/pb-go/flyteidl/cacheservice";
13
+
14
+ /*
15
+ * CacheService defines operations for cache management including retrieval, storage, and deletion of cached task/workflow outputs.
16
+ */
17
+ service CacheService {
18
+ // Retrieves cached data by key.
19
+ rpc Get (GetCacheRequest) returns (GetCacheResponse);
20
+
21
+ // Stores or updates cached data by key.
22
+ rpc Put (PutCacheRequest) returns (PutCacheResponse);
23
+
24
+ // Deletes cached data by key.
25
+ rpc Delete (DeleteCacheRequest) returns (DeleteCacheResponse);
26
+
27
+ // Get or extend a reservation for a cache key
28
+ rpc GetOrExtendReservation (GetOrExtendReservationRequest) returns (GetOrExtendReservationResponse);
29
+
30
+ // Release the reservation for a cache key
31
+ rpc ReleaseReservation (ReleaseReservationRequest) returns (ReleaseReservationResponse);
32
+ }
33
+
34
+ /*
35
+ * Additional metadata as key-value pairs
36
+ */
37
+ message KeyMapMetadata {
38
+ map<string, string> values = 1; // Additional metadata as key-value pairs
39
+ }
40
+
41
+ /*
42
+ * Metadata for cached outputs, including the source identifier and timestamps.
43
+ */
44
+ message Metadata {
45
+ core.Identifier source_identifier = 1; // Source task or workflow identifier
46
+ KeyMapMetadata key_map = 2; // Additional metadata as key-value pairs
47
+ google.protobuf.Timestamp created_at = 3; // Creation timestamp
48
+ google.protobuf.Timestamp last_updated_at = 4; // Last update timestamp
49
+ }
50
+
51
+ /*
52
+ * Represents cached output, either as literals or an URI, with associated metadata.
53
+ */
54
+ message CachedOutput {
55
+ oneof output {
56
+ flyteidl.core.LiteralMap output_literals = 1; // Output literals
57
+ string output_uri = 2; // URI to output data
58
+ }
59
+ Metadata metadata = 3; // Associated metadata
60
+ }
61
+
62
+ /*
63
+ * Request to retrieve cached data by key.
64
+ */
65
+ message GetCacheRequest {
66
+ string key = 1; // Cache key
67
+ }
68
+
69
+ /*
70
+ * Response with cached data for a given key.
71
+ */
72
+ message GetCacheResponse {
73
+ CachedOutput output = 1; // Cached output
74
+ }
75
+
76
+ /*
77
+ * Request to store/update cached data by key.
78
+ */
79
+ message PutCacheRequest {
80
+ string key = 1; // Cache key
81
+ CachedOutput output = 2; // Output to cache
82
+ bool overwrite = 3; // Overwrite flag
83
+ }
84
+
85
+ /*
86
+ * Response message of cache store/update operation.
87
+ */
88
+ message PutCacheResponse {
89
+ // Empty, success indicated by no errors
90
+ }
91
+
92
+ /*
93
+ * Request to delete cached data by key.
94
+ */
95
+ message DeleteCacheRequest {
96
+ string key = 1; // Cache key
97
+ }
98
+
99
+ /*
100
+ * Response message of cache deletion operation.
101
+ */
102
+ message DeleteCacheResponse {
103
+ // Empty, success indicated by no errors
104
+ }
105
+
106
+ // A reservation including owner, heartbeat interval, expiration timestamp, and various metadata.
107
+ message Reservation {
108
+ string key = 1; // The unique ID for the reservation - same as the cache key
109
+ string owner_id = 2; // The unique ID of the owner for the reservation
110
+ google.protobuf.Duration heartbeat_interval = 3; // Requested reservation extension heartbeat interval
111
+ google.protobuf.Timestamp expires_at = 4; // Expiration timestamp of this reservation
112
+ }
113
+
114
+ /*
115
+ * Request to get or extend a reservation for a cache key
116
+ */
117
+ message GetOrExtendReservationRequest {
118
+ string key = 1; // The unique ID for the reservation - same as the cache key
119
+ string owner_id = 2; // The unique ID of the owner for the reservation
120
+ google.protobuf.Duration heartbeat_interval = 3; // Requested reservation extension heartbeat interval
121
+ }
122
+
123
+ /*
124
+ * Request to get or extend a reservation for a cache key
125
+ */
126
+ message GetOrExtendReservationResponse {
127
+ Reservation reservation = 1; // The reservation that was created or extended
128
+ }
129
+
130
+ /*
131
+ * Request to release the reservation for a cache key
132
+ */
133
+ message ReleaseReservationRequest {
134
+ string key = 1; // The unique ID for the reservation - same as the cache key
135
+ string owner_id = 2; // The unique ID of the owner for the reservation
136
+ }
137
+
138
+ /*
139
+ * Response message of release reservation operation.
140
+ */
141
+ message ReleaseReservationResponse {
142
+ // Empty, success indicated by no errors
143
+ }
@@ -18,20 +18,41 @@ message ArtifactKey {
18
18
 
19
19
  // Only valid for triggers
20
20
  message ArtifactBindingData {
21
+ reserved 1 to 4;
21
22
  // These two fields are only relevant in the partition value case
22
23
  oneof partition_data {
23
- string partition_key = 2;
24
- bool bind_to_time_partition = 3;
24
+ string partition_key = 5;
25
+ bool bind_to_time_partition = 6;
25
26
  }
26
27
 
27
28
  // This is only relevant in the time partition case
28
- string transform = 4;
29
+ TimeTransform time_transform = 7;
30
+ }
31
+
32
+ enum Granularity {
33
+ UNSET = 0;
34
+ MINUTE = 1;
35
+ HOUR = 2;
36
+ DAY = 3; // default
37
+ MONTH = 4;
38
+ }
39
+
40
+ enum Operator {
41
+ MINUS = 0;
42
+ PLUS = 1;
43
+ }
44
+
45
+ message TimeTransform {
46
+ string transform = 1;
47
+ Operator op = 2;
29
48
  }
30
49
 
31
50
  message InputBindingData {
32
51
  string var = 1;
33
52
  }
34
53
 
54
+ message RuntimeBinding {}
55
+
35
56
  message LabelValue {
36
57
  oneof value {
37
58
  // The string static value is for use in the Partitions object
@@ -41,6 +62,7 @@ message LabelValue {
41
62
  google.protobuf.Timestamp time_value = 2;
42
63
  ArtifactBindingData triggered_binding = 3;
43
64
  InputBindingData input_binding = 4;
65
+ RuntimeBinding runtime_binding = 5;
44
66
  }
45
67
  }
46
68
 
@@ -50,6 +72,7 @@ message Partitions {
50
72
 
51
73
  message TimePartition {
52
74
  LabelValue value = 1;
75
+ Granularity granularity = 2;
53
76
  }
54
77
 
55
78
  message ArtifactID {
@@ -332,8 +332,6 @@ message K8sObjectMetadata {
332
332
  message Sql {
333
333
  // The actual query to run, the query can have templated parameters.
334
334
  // We use Flyte's Golang templating format for Query templating.
335
- // Refer to the templating documentation.
336
- // https://docs.flyte.org/projects/cookbook/en/latest/auto/integrations/external_services/hive/hive.html#sphx-glr-auto-integrations-external-services-hive-hive-py
337
335
  // For example,
338
336
  // insert overwrite directory '{{ .rawOutputDataPrefix }}' stored as parquet
339
337
  // select *
@@ -20,6 +20,9 @@ message CreateUploadLocationResponse {
20
20
 
21
21
  // ExpiresAt defines when will the signed URL expires.
22
22
  google.protobuf.Timestamp expires_at = 3;
23
+
24
+ // Data proxy generates these headers for client, and they have to add these headers to the request when uploading the file.
25
+ map<string, string> headers = 4;
23
26
  }
24
27
 
25
28
  // CreateUploadLocationRequest specified request for the CreateUploadLocation API.
@@ -55,6 +58,11 @@ message CreateUploadLocationRequest {
55
58
  // in data proxy config. This option is useful when uploading multiple files.
56
59
  // +optional
57
60
  string filename_root = 6;
61
+
62
+ // If true, the data proxy will add content_md5 to the metadata to the signed URL and
63
+ // it will force clients to add this metadata to the object.
64
+ // This make sure dataproxy is backward compatible with the old flytekit.
65
+ bool add_content_md5_metadata = 7;
58
66
  }
59
67
 
60
68
  // CreateDownloadLocationRequest specified request for the CreateDownloadLocation API.
@@ -67,7 +75,6 @@ message CreateDownloadLocationRequest {
67
75
  // exceeds the platform allowed max.
68
76
  // +optional. The default value comes from a global config.
69
77
  google.protobuf.Duration expires_in = 2;
70
-
71
78
  }
72
79
 
73
80
  message CreateDownloadLocationResponse {