@flyteorg/flyteidl 1.4.0 → 1.5.1

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.
@@ -0,0 +1,74 @@
1
+ syntax = "proto3";
2
+ package flyteidl.service;
3
+
4
+ option go_package = "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/service";
5
+ import "flyteidl/core/literals.proto";
6
+ import "flyteidl/core/tasks.proto";
7
+ import "flyteidl/core/interface.proto";
8
+
9
+ // ExternalPluginService defines an RPC Service that allows propeller to send the request to the backend plugin server.
10
+ service ExternalPluginService {
11
+ // Send a task create request to the backend plugin server.
12
+ rpc CreateTask (TaskCreateRequest) returns (TaskCreateResponse){};
13
+ // Get job status.
14
+ rpc GetTask (TaskGetRequest) returns (TaskGetResponse){};
15
+ // Delete the task resource.
16
+ rpc DeleteTask (TaskDeleteRequest) returns (TaskDeleteResponse){};
17
+ }
18
+
19
+ // The state of the execution is used to control its visibility in the UI/CLI.
20
+ enum State {
21
+ RETRYABLE_FAILURE = 0;
22
+ PERMANENT_FAILURE = 1;
23
+ PENDING = 2;
24
+ RUNNING = 3;
25
+ SUCCEEDED = 4;
26
+ }
27
+
28
+ // Represents a request structure to create task.
29
+ message TaskCreateRequest {
30
+ // The inputs required to start the execution. All required inputs must be
31
+ // included in this map. If not required and not provided, defaults apply.
32
+ // +optional
33
+ core.LiteralMap inputs = 1;
34
+ // Template of the task that encapsulates all the metadata of the task.
35
+ core.TaskTemplate template = 2;
36
+ // Prefix for where task output data will be written. (e.g. s3://my-bucket/randomstring)
37
+ string output_prefix = 3;
38
+ }
39
+
40
+ // Represents a create response structure.
41
+ message TaskCreateResponse {
42
+ string job_id = 1;
43
+ }
44
+
45
+ // A message used to fetch a job state from backend plugin server.
46
+ message TaskGetRequest {
47
+ // A predefined yet extensible Task type identifier.
48
+ string task_type = 1;
49
+ // The unique id identifying the job.
50
+ string job_id = 2;
51
+ }
52
+
53
+ // Response to get an individual task state.
54
+ message TaskGetResponse {
55
+ // The state of the execution is used to control its visibility in the UI/CLI.
56
+ State state = 1;
57
+ // The outputs of the execution. It's typically used by sql task. Flyteplugins service will create a
58
+ // Structured dataset pointing to the query result table.
59
+ // +optional
60
+ core.LiteralMap outputs = 2;
61
+ }
62
+
63
+ // A message used to delete a task.
64
+ message TaskDeleteRequest {
65
+ // A predefined yet extensible Task type identifier.
66
+ string task_type = 1;
67
+ // The unique id identifying the job.
68
+ string job_id = 2;
69
+ }
70
+
71
+ // Response to delete a task.
72
+ message TaskDeleteResponse {
73
+ }
74
+
@@ -4,6 +4,7 @@ package flyteidl.service;
4
4
  option go_package = "github.com/flyteorg/flyteidl/gen/pb-go/flyteidl/service";
5
5
 
6
6
  import "google/api/annotations.proto";
7
+ import "google/protobuf/struct.proto";
7
8
  // import "protoc-gen-swagger/options/annotations.proto";
8
9
 
9
10
  message UserInfoRequest {}
@@ -31,6 +32,9 @@ message UserInfoResponse {
31
32
 
32
33
  // Profile picture URL
33
34
  string picture = 7;
35
+
36
+ // Additional claims
37
+ google.protobuf.Struct additional_claims = 8;
34
38
  }
35
39
 
36
40
  // IdentityService defines an RPC Service that interacts with user/app identities.