@flyteorg/flyteidl 1.2.3 → 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.3",
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
@@ -3307,6 +3474,7 @@ Tasks can come in many varieties tuned for specialized behavior.
3307
3474
 
3308
3475
  "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the task."
3309
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."
3310
3478
 
3311
3479
 
3312
3480
 
@@ -3413,6 +3581,7 @@ Represents a structure that encapsulates the user-configured specification of th
3413
3581
  :widths: auto
3414
3582
 
3415
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."
3416
3585
 
3417
3586
 
3418
3587
 
@@ -3772,6 +3941,7 @@ in order to produce a directed-acyclic execution graph.
3772
3941
 
3773
3942
  "id", ":ref:`ref_flyteidl.core.Identifier`", "", "id represents the unique identifier of the workflow."
3774
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."
3775
3945
 
3776
3946
 
3777
3947
 
@@ -3918,6 +4088,7 @@ Represents a structure that encapsulates the specification of the workflow.
3918
4088
 
3919
4089
  "template", ":ref:`ref_flyteidl.core.WorkflowTemplate`", "", "Template of the task that encapsulates all the metadata of the workflow."
3920
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."
3921
4092
 
3922
4093
 
3923
4094
 
@@ -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
+ }
@@ -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.
@@ -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;
@@ -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
+ }