@flyteorg/flyteidl 1.2.2 → 1.2.4

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flyteorg/flyteidl",
3
- "version": "1.2.2",
3
+ "version": "1.2.4",
4
4
  "description": "Compiled protocol buffers and gRPC service clients/servers for Flyte IDLs",
5
5
  "repository": {
6
6
  "type": "git",
@@ -657,6 +657,173 @@ Sort.Direction
657
657
 
658
658
 
659
659
 
660
+ .. _ref_flyteidl/admin/description_entity.proto:
661
+
662
+ flyteidl/admin/description_entity.proto
663
+ ==================================================================
664
+
665
+
666
+
667
+
668
+
669
+ .. _ref_flyteidl.admin.Description:
670
+
671
+ Description
672
+ ------------------------------------------------------------------
673
+
674
+ Full user description with formatting preserved. This can be rendered
675
+ by clients, such as the console or command line tools with in-tact
676
+ formatting.
677
+
678
+
679
+
680
+ .. csv-table:: Description type fields
681
+ :header: "Field", "Type", "Label", "Description"
682
+ :widths: auto
683
+
684
+ "value", ":ref:`ref_string`", "", "long description - no more than 4KB"
685
+ "uri", ":ref:`ref_string`", "", "if the description sizes exceed some threshold we can offload the entire description proto altogether to an external data store, like S3 rather than store inline in the db"
686
+ "format", ":ref:`ref_flyteidl.admin.DescriptionFormat`", "", "Format of the long description"
687
+ "icon_link", ":ref:`ref_string`", "", "Optional link to an icon for the entity"
688
+
689
+
690
+
691
+
692
+
693
+
694
+
695
+ .. _ref_flyteidl.admin.DescriptionEntity:
696
+
697
+ DescriptionEntity
698
+ ------------------------------------------------------------------
699
+
700
+ DescriptionEntity contains detailed description for the task/workflow.
701
+ Documentation could provide insight into the algorithms, business use case, etc.
702
+
703
+
704
+
705
+ .. csv-table:: DescriptionEntity type fields
706
+ :header: "Field", "Type", "Label", "Description"
707
+ :widths: auto
708
+
709
+ "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the description entity."
710
+ "short_description", ":ref:`ref_string`", "", "One-liner overview of the entity."
711
+ "long_description", ":ref:`ref_flyteidl.admin.Description`", "", "Full user description with formatting preserved."
712
+ "source_code", ":ref:`ref_flyteidl.admin.SourceCode`", "", "Optional link to source code used to define this entity."
713
+ "tags", ":ref:`ref_string`", "repeated", "User-specified tags. These are arbitrary and can be used for searching filtering and discovering tasks."
714
+
715
+
716
+
717
+
718
+
719
+
720
+
721
+ .. _ref_flyteidl.admin.DescriptionEntityList:
722
+
723
+ DescriptionEntityList
724
+ ------------------------------------------------------------------
725
+
726
+ Represents a list of DescriptionEntities returned from the admin.
727
+ See :ref:`ref_flyteidl.admin.DescriptionEntity` for more details
728
+
729
+
730
+
731
+ .. csv-table:: DescriptionEntityList type fields
732
+ :header: "Field", "Type", "Label", "Description"
733
+ :widths: auto
734
+
735
+ "descriptionEntities", ":ref:`ref_flyteidl.admin.DescriptionEntity`", "repeated", "A list of DescriptionEntities returned based on the request."
736
+ "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. If there are no more results, this value will be empty."
737
+
738
+
739
+
740
+
741
+
742
+
743
+
744
+ .. _ref_flyteidl.admin.DescriptionEntityListRequest:
745
+
746
+ DescriptionEntityListRequest
747
+ ------------------------------------------------------------------
748
+
749
+ Represents a request structure to retrieve a list of DescriptionEntities.
750
+ See :ref:`ref_flyteidl.admin.DescriptionEntity` for more details
751
+
752
+
753
+
754
+ .. csv-table:: DescriptionEntityListRequest type fields
755
+ :header: "Field", "Type", "Label", "Description"
756
+ :widths: auto
757
+
758
+ "resource_type", ":ref:`ref_flyteidl.core.ResourceType`", "", "Identifies the specific type of resource that this identifier corresponds to."
759
+ "id", ":ref:`ref_flyteidl.admin.NamedEntityIdentifier`", "", "The identifier for the description entity. +required"
760
+ "limit", ":ref:`ref_uint32`", "", "Indicates the number of resources to be returned. +required"
761
+ "token", ":ref:`ref_string`", "", "In the case of multiple pages of results, the server-provided token can be used to fetch the next page in a query. +optional"
762
+ "filters", ":ref:`ref_string`", "", "Indicates a list of filters passed as string. More info on constructing filters : <Link> +optional"
763
+ "sort_by", ":ref:`ref_flyteidl.admin.Sort`", "", "Sort ordering for returned list. +optional"
764
+
765
+
766
+
767
+
768
+
769
+
770
+
771
+ .. _ref_flyteidl.admin.SourceCode:
772
+
773
+ SourceCode
774
+ ------------------------------------------------------------------
775
+
776
+ Link to source code used to define this entity
777
+
778
+
779
+
780
+ .. csv-table:: SourceCode type fields
781
+ :header: "Field", "Type", "Label", "Description"
782
+ :widths: auto
783
+
784
+ "link", ":ref:`ref_string`", "", ""
785
+
786
+
787
+
788
+
789
+
790
+
791
+ ..
792
+ end messages
793
+
794
+
795
+
796
+ .. _ref_flyteidl.admin.DescriptionFormat:
797
+
798
+ DescriptionFormat
799
+ ------------------------------------------------------------------
800
+
801
+ The format of the long description
802
+
803
+ .. csv-table:: Enum DescriptionFormat values
804
+ :header: "Name", "Number", "Description"
805
+ :widths: auto
806
+
807
+ "DESCRIPTION_FORMAT_UNKNOWN", "0", ""
808
+ "DESCRIPTION_FORMAT_MARKDOWN", "1", ""
809
+ "DESCRIPTION_FORMAT_HTML", "2", ""
810
+ "DESCRIPTION_FORMAT_RST", "3", "python default documentation - comments is rst"
811
+
812
+
813
+ ..
814
+ end enums
815
+
816
+
817
+ ..
818
+ end HasExtensions
819
+
820
+
821
+ ..
822
+ end services
823
+
824
+
825
+
826
+
660
827
  .. _ref_flyteidl/admin/event.proto:
661
828
 
662
829
  flyteidl/admin/event.proto
@@ -1084,6 +1251,7 @@ Request to relaunch the referenced execution.
1084
1251
 
1085
1252
  "id", ":ref:`ref_flyteidl.core.WorkflowExecutionIdentifier`", "", "Identifier of the workflow execution to relaunch. +required"
1086
1253
  "name", ":ref:`ref_string`", "", "User provided value for the relaunched execution. If none is provided the system will generate a unique string. +optional"
1254
+ "overwrite_cache", ":ref:`ref_bool`", "", "Allows for all cached values of a workflow and its tasks to be overwritten for a single execution. If enabled, all calculations are performed even if cached results would be available, overwriting the stored data once execution finishes successfully."
1087
1255
 
1088
1256
 
1089
1257
 
@@ -1119,6 +1287,7 @@ of an execution as it progresses across phase changes.
1119
1287
  "raw_output_data_config", ":ref:`ref_flyteidl.admin.RawOutputDataConfig`", "", "User setting to configure where to store offloaded data (i.e. Blobs, structured datasets, query data, etc.). This should be a prefix like s3://my-bucket/my-data"
1120
1288
  "cluster_assignment", ":ref:`ref_flyteidl.admin.ClusterAssignment`", "", "Controls how to select an available cluster on which this execution should run."
1121
1289
  "interruptible", ":ref:`ref_google.protobuf.BoolValue`", "", "Allows for the interruptible flag of a workflow to be overwritten for a single execution. Omitting this field uses the workflow's value as a default. As we need to distinguish between the field not being provided and its default value false, we have to use a wrapper around the bool field."
1290
+ "overwrite_cache", ":ref:`ref_bool`", "", "Allows for all cached values of a workflow and its tasks to be overwritten for a single execution. If enabled, all calculations are performed even if cached results would be available, overwriting the stored data once execution finishes successfully."
1122
1291
 
1123
1292
 
1124
1293
 
@@ -1655,6 +1824,7 @@ User-provided launch plan definition and configuration values.
1655
1824
  "raw_output_data_config", ":ref:`ref_flyteidl.admin.RawOutputDataConfig`", "", "Encapsulates user settings pertaining to offloaded data (i.e. Blobs, Schema, query data, etc.)."
1656
1825
  "max_parallelism", ":ref:`ref_int32`", "", "Controls the maximum number of tasknodes that can be run in parallel for the entire workflow. This is useful to achieve fairness. Note: MapTasks are regarded as one unit, and parallelism/concurrency of MapTasks is independent from this."
1657
1826
  "interruptible", ":ref:`ref_google.protobuf.BoolValue`", "", "Allows for the interruptible flag of a workflow to be overwritten for a single execution. Omitting this field uses the workflow's value as a default. As we need to distinguish between the field not being provided and its default value false, we have to use a wrapper around the bool field."
1827
+ "overwrite_cache", ":ref:`ref_bool`", "", "Allows for all cached values of a workflow and its tasks to be overwritten for a single execution. If enabled, all calculations are performed even if cached results would be available, overwriting the stored data once execution finishes successfully."
1658
1828
 
1659
1829
 
1660
1830
 
@@ -2042,6 +2212,7 @@ Adds defaults for customizable workflow-execution specifications and overrides.
2042
2212
  "labels", ":ref:`ref_flyteidl.admin.Labels`", "", "Custom labels to be applied to a triggered execution resource."
2043
2213
  "annotations", ":ref:`ref_flyteidl.admin.Annotations`", "", "Custom annotations to be applied to a triggered execution resource."
2044
2214
  "interruptible", ":ref:`ref_google.protobuf.BoolValue`", "", "Allows for the interruptible flag of a workflow to be overwritten for a single execution. Omitting this field uses the workflow's value as a default. As we need to distinguish between the field not being provided and its default value false, we have to use a wrapper around the bool field."
2215
+ "overwrite_cache", ":ref:`ref_bool`", "", "Allows for all cached values of a workflow and its tasks to be overwritten for a single execution. If enabled, all calculations are performed even if cached results would be available, overwriting the stored data once execution finishes successfully."
2045
2216
 
2046
2217
 
2047
2218
 
@@ -3303,6 +3474,7 @@ Tasks can come in many varieties tuned for specialized behavior.
3303
3474
 
3304
3475
  "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the task."
3305
3476
  "closure", ":ref:`ref_flyteidl.admin.TaskClosure`", "", "closure encapsulates all the fields that maps to a compiled version of the task."
3477
+ "short_description", ":ref:`ref_string`", "", "One-liner overview of the entity."
3306
3478
 
3307
3479
 
3308
3480
 
@@ -3409,6 +3581,7 @@ Represents a structure that encapsulates the user-configured specification of th
3409
3581
  :widths: auto
3410
3582
 
3411
3583
  "template", ":ref:`ref_flyteidl.core.TaskTemplate`", "", "Template of the task that encapsulates all the metadata of the task."
3584
+ "description", ":ref:`ref_flyteidl.admin.DescriptionEntity`", "", "Represents the specification for description entity."
3412
3585
 
3413
3586
 
3414
3587
 
@@ -3768,6 +3941,7 @@ in order to produce a directed-acyclic execution graph.
3768
3941
 
3769
3942
  "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the workflow."
3770
3943
  "closure", ":ref:`ref_flyteidl.admin.WorkflowClosure`", "", "closure encapsulates all the fields that maps to a compiled version of the workflow."
3944
+ "short_description", ":ref:`ref_string`", "", "One-liner overview of the entity."
3771
3945
 
3772
3946
 
3773
3947
 
@@ -3914,6 +4088,7 @@ Represents a structure that encapsulates the specification of the workflow.
3914
4088
 
3915
4089
  "template", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "", "Template of the task that encapsulates all the metadata of the workflow."
3916
4090
  "sub_workflows", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "repeated", "Workflows that are embedded into other workflows need to be passed alongside the parent workflow to the propeller compiler (since the compiler doesn't have any knowledge of other workflows - ie, it doesn't reach out to Admin to see other registered workflows). In fact, subworkflows do not even need to be registered."
4091
+ "description", ":ref:`ref_flyteidl.admin.DescriptionEntity`", "", "Represents the specification for description entity."
3917
4092
 
3918
4093
 
3919
4094
 
@@ -94,6 +94,7 @@ Indicates the status of CatalogCaching. The reason why this is not embedded in T
94
94
  "CACHE_POPULATED", "3", "used to indicate that the resultant artifact was added to the cache"
95
95
  "CACHE_LOOKUP_FAILURE", "4", "Used to indicate that cache lookup failed because of an error"
96
96
  "CACHE_PUT_FAILURE", "5", "Used to indicate that cache lookup failed because of an error"
97
+ "CACHE_SKIPPED", "6", "Used to indicate the cache lookup was skipped"
97
98
 
98
99
 
99
100
 
@@ -790,6 +790,51 @@ Tag properties we can filter by
790
790
 
791
791
 
792
792
 
793
+
794
+ .. _ref_datacatalog.UpdateArtifactRequest:
795
+
796
+ UpdateArtifactRequest
797
+ ------------------------------------------------------------------
798
+
799
+ Request message for updating an Artifact and overwriting its associated ArtifactData.
800
+
801
+
802
+
803
+ .. csv-table:: UpdateArtifactRequest type fields
804
+ :header: "Field", "Type", "Label", "Description"
805
+ :widths: auto
806
+
807
+ "dataset", ":ref:`ref_datacatalog.DatasetID`", "", "ID of dataset the artifact is associated with"
808
+ "artifact_id", ":ref:`ref_string`", "", ""
809
+ "tag_name", ":ref:`ref_string`", "", ""
810
+ "data", ":ref:`ref_datacatalog.ArtifactData`", "repeated", "List of data to overwrite stored artifact data with. Must contain ALL data for updated Artifact as any missing ArtifactData entries will be removed from the underlying blob storage and database."
811
+
812
+
813
+
814
+
815
+
816
+
817
+
818
+ .. _ref_datacatalog.UpdateArtifactResponse:
819
+
820
+ UpdateArtifactResponse
821
+ ------------------------------------------------------------------
822
+
823
+ Response message for updating an Artifact.
824
+
825
+
826
+
827
+ .. csv-table:: UpdateArtifactResponse type fields
828
+ :header: "Field", "Type", "Label", "Description"
829
+ :widths: auto
830
+
831
+ "artifact_id", ":ref:`ref_string`", "", "The unique ID of the artifact updated"
832
+
833
+
834
+
835
+
836
+
837
+
793
838
  ..
794
839
  end messages
795
840
 
@@ -869,6 +914,7 @@ Artifacts are associated with a Dataset, and can be tagged for retrieval.
869
914
  "AddTag", ":ref:`ref_datacatalog.AddTagRequest`", ":ref:`ref_datacatalog.AddTagResponse`", "Associate a tag with an artifact. Tags are unique within a Dataset."
870
915
  "ListArtifacts", ":ref:`ref_datacatalog.ListArtifactsRequest`", ":ref:`ref_datacatalog.ListArtifactsResponse`", "Return a paginated list of artifacts"
871
916
  "ListDatasets", ":ref:`ref_datacatalog.ListDatasetsRequest`", ":ref:`ref_datacatalog.ListDatasetsResponse`", "Return a paginated list of datasets"
917
+ "UpdateArtifact", ":ref:`ref_datacatalog.UpdateArtifactRequest`", ":ref:`ref_datacatalog.UpdateArtifactResponse`", "Updates an existing artifact, overwriting the stored artifact data in the underlying blob storage."
872
918
  "GetOrExtendReservation", ":ref:`ref_datacatalog.GetOrExtendReservationRequest`", ":ref:`ref_datacatalog.GetOrExtendReservationResponse`", "Attempts to get or extend a reservation for the corresponding artifact. If one already exists (ie. another entity owns the reservation) then that reservation is retrieved. Once you acquire a reservation, you need to periodically extend the reservation with an identical call. If the reservation is not extended before the defined expiration, it may be acquired by another task. Note: We may have multiple concurrent tasks with the same signature and the same input that try to populate the same artifact at the same time. Thus with reservation, only one task can run at a time, until the reservation expires. Note: If task A does not extend the reservation in time and the reservation expires, another task B may take over the reservation, resulting in two tasks A and B running in parallel. So a third task C may get the Artifact from A or B, whichever writes last."
873
919
  "ReleaseReservation", ":ref:`ref_datacatalog.ReleaseReservationRequest`", ":ref:`ref_datacatalog.ReleaseReservationResponse`", "Release the reservation when the task holding the spot fails so that the other tasks can grab the spot."
874
920
 
@@ -88,6 +88,8 @@ Standard response codes for both are defined here: https://github.com/grpc-ecosy
88
88
  "GetNamedEntity", ":ref:`ref_flyteidl.admin.NamedEntityGetRequest`", ":ref:`ref_flyteidl.admin.NamedEntity`", "Returns a :ref:`ref_flyteidl.admin.NamedEntity` object."
89
89
  "UpdateNamedEntity", ":ref:`ref_flyteidl.admin.NamedEntityUpdateRequest`", ":ref:`ref_flyteidl.admin.NamedEntityUpdateResponse`", "Updates a :ref:`ref_flyteidl.admin.NamedEntity` object."
90
90
  "GetVersion", ":ref:`ref_flyteidl.admin.GetVersionRequest`", ":ref:`ref_flyteidl.admin.GetVersionResponse`", ""
91
+ "GetDescriptionEntity", ":ref:`ref_flyteidl.admin.ObjectGetRequest`", ":ref:`ref_flyteidl.admin.DescriptionEntity`", "Fetch a :ref:`ref_flyteidl.admin.DescriptionEntity` object."
92
+ "ListDescriptionEntities", ":ref:`ref_flyteidl.admin.DescriptionEntityListRequest`", ":ref:`ref_flyteidl.admin.DescriptionEntityList`", "Fetch a list of :ref:`ref_flyteidl.admin.DescriptionEntity` definitions."
91
93
 
92
94
  ..
93
95
  end services
@@ -0,0 +1,95 @@
1
+ syntax = "proto3";
2
+
3
+ package flyteidl.admin;
4
+ option go_package = "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/admin";
5
+
6
+ import "flyteidl/core/identifier.proto";
7
+ import "flyteidl/admin/common.proto";
8
+
9
+ // DescriptionEntity contains detailed description for the task/workflow.
10
+ // Documentation could provide insight into the algorithms, business use case, etc.
11
+ message DescriptionEntity {
12
+ // id represents the unique identifier of the description entity.
13
+ core.Identifier id = 1;
14
+ // One-liner overview of the entity.
15
+ string short_description = 2;
16
+ // Full user description with formatting preserved.
17
+ Description long_description = 3;
18
+ // Optional link to source code used to define this entity.
19
+ SourceCode source_code = 4;
20
+ // User-specified tags. These are arbitrary and can be used for searching
21
+ // filtering and discovering tasks.
22
+ repeated string tags = 5;
23
+ }
24
+
25
+ // The format of the long description
26
+ enum DescriptionFormat {
27
+ DESCRIPTION_FORMAT_UNKNOWN = 0;
28
+ DESCRIPTION_FORMAT_MARKDOWN = 1;
29
+ DESCRIPTION_FORMAT_HTML = 2;
30
+ // python default documentation - comments is rst
31
+ DESCRIPTION_FORMAT_RST = 3;
32
+ }
33
+
34
+ // Full user description with formatting preserved. This can be rendered
35
+ // by clients, such as the console or command line tools with in-tact
36
+ // formatting.
37
+ message Description {
38
+ oneof content {
39
+ // long description - no more than 4KB
40
+ string value = 1;
41
+ // if the description sizes exceed some threshold we can offload the entire
42
+ // description proto altogether to an external data store, like S3 rather than store inline in the db
43
+ string uri = 2;
44
+ }
45
+
46
+ // Format of the long description
47
+ DescriptionFormat format = 3;
48
+ // Optional link to an icon for the entity
49
+ string icon_link = 4;
50
+ }
51
+
52
+ // Link to source code used to define this entity
53
+ message SourceCode {
54
+ string link = 1;
55
+ }
56
+
57
+ // Represents a list of DescriptionEntities returned from the admin.
58
+ // See :ref:`ref_flyteidl.admin.DescriptionEntity` for more details
59
+ message DescriptionEntityList {
60
+ // A list of DescriptionEntities returned based on the request.
61
+ repeated DescriptionEntity descriptionEntities = 1;
62
+
63
+ // In the case of multiple pages of results, the server-provided token can be used to fetch the next page
64
+ // in a query. If there are no more results, this value will be empty.
65
+ string token = 2;
66
+ }
67
+
68
+ // Represents a request structure to retrieve a list of DescriptionEntities.
69
+ // See :ref:`ref_flyteidl.admin.DescriptionEntity` for more details
70
+ message DescriptionEntityListRequest {
71
+ // Identifies the specific type of resource that this identifier corresponds to.
72
+ flyteidl.core.ResourceType resource_type = 1;
73
+
74
+ // The identifier for the description entity.
75
+ // +required
76
+ NamedEntityIdentifier id = 2;
77
+
78
+ // Indicates the number of resources to be returned.
79
+ // +required
80
+ uint32 limit = 3;
81
+
82
+ // In the case of multiple pages of results, the server-provided token can be used to fetch the next page
83
+ // in a query.
84
+ // +optional
85
+ string token = 4;
86
+
87
+ // Indicates a list of filters passed as string.
88
+ // More info on constructing filters : <Link>
89
+ // +optional
90
+ string filters = 5;
91
+
92
+ // Sort ordering for returned list.
93
+ // +optional
94
+ Sort sort_by = 6;
95
+ }
@@ -45,10 +45,18 @@ message ExecutionRelaunchRequest {
45
45
  // +required
46
46
  core.WorkflowExecutionIdentifier id = 1;
47
47
 
48
+ // Deprecated field, do not use.
49
+ reserved 2;
50
+
48
51
  // User provided value for the relaunched execution.
49
52
  // If none is provided the system will generate a unique string.
50
53
  // +optional
51
54
  string name = 3;
55
+
56
+ // Allows for all cached values of a workflow and its tasks to be overwritten for a single execution.
57
+ // If enabled, all calculations are performed even if cached results would be available, overwriting the stored
58
+ // data once execution finishes successfully.
59
+ bool overwrite_cache = 4;
52
60
  }
53
61
 
54
62
  // Request to recover the referenced execution.
@@ -296,6 +304,11 @@ message ExecutionSpec {
296
304
  // As we need to distinguish between the field not being provided and its default value false, we have to use a wrapper
297
305
  // around the bool field.
298
306
  google.protobuf.BoolValue interruptible = 21;
307
+
308
+ // Allows for all cached values of a workflow and its tasks to be overwritten for a single execution.
309
+ // If enabled, all calculations are performed even if cached results would be available, overwriting the stored
310
+ // data once execution finishes successfully.
311
+ bool overwrite_cache = 22;
299
312
  }
300
313
 
301
314
  // Request to terminate an in-progress execution. This action is irreversible.
@@ -125,6 +125,11 @@ message LaunchPlanSpec {
125
125
  // As we need to distinguish between the field not being provided and its default value false, we have to use a wrapper
126
126
  // around the bool field.
127
127
  google.protobuf.BoolValue interruptible = 19;
128
+
129
+ // Allows for all cached values of a workflow and its tasks to be overwritten for a single execution.
130
+ // If enabled, all calculations are performed even if cached results would be available, overwriting the stored
131
+ // data once execution finishes successfully.
132
+ bool overwrite_cache = 20;
128
133
  }
129
134
 
130
135
  // Values computed by the flyte platform after launch plan registration.
@@ -123,6 +123,11 @@ message WorkflowExecutionConfig {
123
123
  // As we need to distinguish between the field not being provided and its default value false, we have to use a wrapper
124
124
  // around the bool field.
125
125
  google.protobuf.BoolValue interruptible = 6;
126
+
127
+ // Allows for all cached values of a workflow and its tasks to be overwritten for a single execution.
128
+ // If enabled, all calculations are performed even if cached results would be available, overwriting the stored
129
+ // data once execution finishes successfully.
130
+ bool overwrite_cache = 7;
126
131
  }
127
132
 
128
133
  // Generic container for encapsulating all types of the above attributes messages.
@@ -6,6 +6,7 @@ option go_package = "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/admin";
6
6
  import "flyteidl/core/identifier.proto";
7
7
  import "flyteidl/core/tasks.proto";
8
8
  import "flyteidl/core/compiler.proto";
9
+ import "flyteidl/admin/description_entity.proto";
9
10
  import "google/protobuf/timestamp.proto";
10
11
 
11
12
  // Represents a request structure to create a revision of a task.
@@ -34,6 +35,9 @@ message Task {
34
35
 
35
36
  // closure encapsulates all the fields that maps to a compiled version of the task.
36
37
  TaskClosure closure = 2;
38
+
39
+ // One-liner overview of the entity.
40
+ string short_description = 3;
37
41
  }
38
42
 
39
43
  // Represents a list of tasks returned from the admin.
@@ -51,6 +55,9 @@ message TaskList {
51
55
  message TaskSpec {
52
56
  // Template of the task that encapsulates all the metadata of the task.
53
57
  core.TaskTemplate template = 1;
58
+
59
+ // Represents the specification for description entity.
60
+ DescriptionEntity description = 2;
54
61
  }
55
62
 
56
63
  // Compute task attributes which include values derived from the TaskSpec, as well as plugin-specific data
@@ -6,6 +6,7 @@ option go_package = "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/admin";
6
6
  import "flyteidl/core/compiler.proto";
7
7
  import "flyteidl/core/identifier.proto";
8
8
  import "flyteidl/core/workflow.proto";
9
+ import "flyteidl/admin/description_entity.proto";
9
10
  import "google/protobuf/timestamp.proto";
10
11
 
11
12
  // Represents a request structure to create a revision of a workflow.
@@ -33,6 +34,9 @@ message Workflow {
33
34
 
34
35
  // closure encapsulates all the fields that maps to a compiled version of the workflow.
35
36
  WorkflowClosure closure = 2;
37
+
38
+ // One-liner overview of the entity.
39
+ string short_description = 3;
36
40
  }
37
41
 
38
42
  // Represents a list of workflows returned from the admin.
@@ -55,6 +59,9 @@ message WorkflowSpec {
55
59
  // propeller compiler (since the compiler doesn't have any knowledge of other workflows - ie, it doesn't reach out
56
60
  // to Admin to see other registered workflows). In fact, subworkflows do not even need to be registered.
57
61
  repeated core.WorkflowTemplate sub_workflows = 2;
62
+
63
+ // Represents the specification for description entity.
64
+ DescriptionEntity description = 3;
58
65
  }
59
66
 
60
67
  // A container holding the compiled workflow produced from the WorkflowSpec and additional metadata.
@@ -20,6 +20,8 @@ enum CatalogCacheStatus {
20
20
  CACHE_LOOKUP_FAILURE = 4;
21
21
  // Used to indicate that cache lookup failed because of an error
22
22
  CACHE_PUT_FAILURE = 5;
23
+ // Used to indicate the cache lookup was skipped
24
+ CACHE_SKIPPED = 6;
23
25
  };
24
26
 
25
27
  message CatalogArtifactTag {
@@ -19,7 +19,7 @@ enum ResourceType {
19
19
  // Encapsulation of fields that uniquely identifies a Flyte resource.
20
20
  message Identifier {
21
21
  // Identifies the specific type of resource that this identifier corresponds to.
22
- ResourceType resource_type = 1;
22
+ core.ResourceType resource_type = 1;
23
23
 
24
24
  // Name of the project the resource belongs to.
25
25
  string project = 2;
@@ -37,6 +37,9 @@ service DataCatalog {
37
37
  // Return a paginated list of datasets
38
38
  rpc ListDatasets (ListDatasetsRequest) returns (ListDatasetsResponse);
39
39
 
40
+ // Updates an existing artifact, overwriting the stored artifact data in the underlying blob storage.
41
+ rpc UpdateArtifact (UpdateArtifactRequest) returns (UpdateArtifactResponse);
42
+
40
43
  // Attempts to get or extend a reservation for the corresponding artifact. If one already exists
41
44
  // (ie. another entity owns the reservation) then that reservation is retrieved.
42
45
  // Once you acquire a reservation, you need to periodically extend the reservation with an
@@ -170,6 +173,32 @@ message ListDatasetsResponse {
170
173
  string next_token = 2;
171
174
  }
172
175
 
176
+ /*
177
+ * Request message for updating an Artifact and overwriting its associated ArtifactData.
178
+ */
179
+ message UpdateArtifactRequest {
180
+ // ID of dataset the artifact is associated with
181
+ DatasetID dataset = 1;
182
+
183
+ // Either ID of artifact or name of tag to retrieve existing artifact from
184
+ oneof query_handle {
185
+ string artifact_id = 2;
186
+ string tag_name = 3;
187
+ }
188
+
189
+ // List of data to overwrite stored artifact data with. Must contain ALL data for updated Artifact as any missing
190
+ // ArtifactData entries will be removed from the underlying blob storage and database.
191
+ repeated ArtifactData data = 4;
192
+ }
193
+
194
+ /*
195
+ * Response message for updating an Artifact.
196
+ */
197
+ message UpdateArtifactResponse {
198
+ // The unique ID of the artifact updated
199
+ string artifact_id = 1;
200
+ }
201
+
173
202
  /*
174
203
  * ReservationID message that is composed of several string fields.
175
204
  */
@@ -18,6 +18,8 @@ import "flyteidl/admin/node_execution.proto";
18
18
  import "flyteidl/admin/task_execution.proto";
19
19
  import "flyteidl/admin/version.proto";
20
20
  import "flyteidl/admin/common.proto";
21
+ import "flyteidl/admin/description_entity.proto";
22
+ import "flyteidl/core/identifier.proto";
21
23
  import "protoc-gen-swagger/options/annotations.proto";
22
24
 
23
25
  // The following defines an RPC service that is also served over HTTP via grpc-gateway.
@@ -603,5 +605,26 @@ service AdminService {
603
605
  };
604
606
  }
605
607
 
606
- }
608
+ // Fetch a :ref:`ref_flyteidl.admin.DescriptionEntity` object.
609
+ rpc GetDescriptionEntity (flyteidl.admin.ObjectGetRequest) returns (flyteidl.admin.DescriptionEntity) {
610
+ option (google.api.http) = {
611
+ get: "/api/v1/description_entities/{id.resource_type}/{id.project}/{id.domain}/{id.name}/{id.version}"
612
+ };
613
+ option (grpc.gateway.protoc_gen_swagger.options.openapiv2_operation) = {
614
+ description: "Retrieve an existing description entity description."
615
+ };
616
+ }
607
617
 
618
+ // Fetch a list of :ref:`ref_flyteidl.admin.DescriptionEntity` definitions.
619
+ rpc ListDescriptionEntities (flyteidl.admin.DescriptionEntityListRequest) returns (flyteidl.admin.DescriptionEntityList) {
620
+ option (google.api.http) = {
621
+ get: "/api/v1/description_entities/{resource_type}/{id.project}/{id.domain}/{id.name}"
622
+ additional_bindings {
623
+ get: "/api/v1/description_entities/{resource_type}/{id.project}/{id.domain}"
624
+ }
625
+ };
626
+ option (grpc.gateway.protoc_gen_swagger.options.openapiv2_operation) = {
627
+ description: "Fetch existing description entity definitions matching input filters."
628
+ };
629
+ }
630
+ }