dapr-client 0.1.0 → 0.2.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.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/CHANGELOG.md +3 -0
- data/Gemfile.lock +1 -1
- data/README.md +22 -5
- data/bin/regen_client.sh +15 -0
- data/dapr.gemspec +1 -1
- data/dapr/proto/common/v1/common.proto +140 -0
- data/dapr/proto/runtime/v1/appcallback.proto +131 -0
- data/dapr/proto/runtime/v1/dapr.proto +155 -0
- data/example.rb +1 -1
- data/examples/app-callback/README.md +20 -0
- data/examples/app-callback/app_callback_example.rb +15 -0
- data/examples/app-callback/app_callback_service.rb +51 -0
- data/examples/invoke-simple/README.md +17 -0
- data/examples/invoke-simple/invoke-caller.rb +19 -0
- data/examples/invoke-simple/invoke-receiver.rb +26 -0
- data/examples/pubsub-simple/README.md +13 -0
- data/examples/pubsub-simple/publisher.rb +15 -0
- data/examples/pubsub-simple/subscriber.rb +28 -0
- data/examples/state-store/README.md +7 -0
- data/examples/state-store/state-store.rb +29 -0
- data/lib/dapr/proto/common/v1/common_pb.rb +87 -0
- data/lib/dapr/proto/runtime/v1/appcallback_pb.rb +62 -0
- data/lib/dapr/proto/runtime/v1/appcallback_services_pb.rb +49 -0
- data/lib/dapr/proto/runtime/v1/dapr_pb.rb +75 -0
- data/lib/dapr/proto/runtime/v1/dapr_services_pb.rb +49 -0
- data/lib/dapr/version.rb +1 -1
- metadata +26 -13
- data/lib/dapr/generated/dapr_pb.rb +0 -99
- data/lib/dapr/generated/dapr_services_pb.rb +0 -29
- data/lib/dapr/generated/daprclient_pb.rb +0 -72
- data/lib/dapr/generated/daprclient_services_pb.rb +0 -27
- data/proto/dapr.proto +0 -108
- data/proto/daprclient.proto +0 -76
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 681a7749162ceb3e77996a080c24459c755cd9f29c4f0b27cdb60786cb21f161
|
4
|
+
data.tar.gz: 73a5c8fa8873a45efe241052c7867422bf49a1d2bfbb78fe058bd3e4c82350e6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3f476fe1b3f24653a39b7d3043baa79e04b9b1fa2f719125fb3bb9a0f61aed0562d01262125ef99267067ef9a15e2f25afc0ee14ceb077ff8a335349c4d33150
|
7
|
+
data.tar.gz: 439962d22770b4a002ffcaf9157e2b54d18a7ea3c2c235ba91cffcf4a12c1d5794d84e9fd82d6e6a5a748db41cfef2f8714491e949becf7ec408944972e39e97
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.5.
|
1
|
+
2.5.8
|
data/CHANGELOG.md
CHANGED
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -28,7 +28,7 @@ Or install it yourself as:
|
|
28
28
|
A client can be created as follows:
|
29
29
|
|
30
30
|
```ruby
|
31
|
-
require "
|
31
|
+
require "dapr_services_pb"
|
32
32
|
|
33
33
|
client = Dapr::Dapr::Stub.new('localhost:5001', :this_channel_is_insecure)
|
34
34
|
```
|
@@ -45,14 +45,31 @@ dapr run --protocol grpc --grpc-port=50001 ruby example.rb
|
|
45
45
|
|
46
46
|
## Development
|
47
47
|
|
48
|
-
|
48
|
+
### Setup
|
49
49
|
|
50
|
-
|
50
|
+
After checking out the repo, run `bin/setup` to install dependencies.
|
51
|
+
Then, run `rake spec` to run the tests. You can also run `bin/console`
|
52
|
+
for an interactive prompt that will allow you to experiment.
|
53
|
+
|
54
|
+
To install this gem onto your local machine, run `bundle exec rake install`.
|
55
|
+
To release a new version, update the version number in `version.rb`, and then
|
56
|
+
run `bundle exec rake release`, which will create a git tag for the version,
|
57
|
+
push git commits and tags, and push the `.gem` file to
|
58
|
+
[rubygems.org](https://rubygems.org).
|
59
|
+
|
60
|
+
### GRPC Client
|
61
|
+
|
62
|
+
Protobuf definitions are stored in the `dapr/proto` directory of this repo.
|
63
|
+
|
64
|
+
There is a script, `bin/regen_client.sh`, that can be used to regenerate the Ruby client
|
65
|
+
from the protocol definitions. The generated code can be found in `lib/dapr/proto` and is
|
66
|
+
added to the lib path.
|
51
67
|
|
52
68
|
## Contributing
|
53
69
|
|
54
|
-
Bug reports and pull requests are welcome on GitHub at https://github.com/
|
70
|
+
Bug reports and pull requests are welcome on GitHub at https://github.com/tjwp/dapr-ruby-sdk.
|
55
71
|
|
56
72
|
## License
|
57
73
|
|
58
|
-
The gem is available as open source under the terms of the
|
74
|
+
The gem is available as open source under the terms of the
|
75
|
+
[MIT License](https://opensource.org/licenses/MIT).
|
data/bin/regen_client.sh
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
#!/usr/bin/env zsh
|
2
|
+
|
3
|
+
bindir="$(dirname "$0")"
|
4
|
+
|
5
|
+
cd "$bindir/.."
|
6
|
+
|
7
|
+
echo "Regenerating from protos ... "
|
8
|
+
set -ex
|
9
|
+
|
10
|
+
bundle exec grpc_tools_ruby_protoc -I . --ruby_out=lib --grpc_out=lib dapr/proto/common/v1/common.proto
|
11
|
+
bundle exec grpc_tools_ruby_protoc -I . --ruby_out=lib --grpc_out=lib dapr/proto/runtime/v1/dapr.proto
|
12
|
+
bundle exec grpc_tools_ruby_protoc -I . --ruby_out=lib --grpc_out=lib dapr/proto/runtime/v1/appcallback.proto
|
13
|
+
|
14
|
+
set +x
|
15
|
+
echo "Done."
|
data/dapr.gemspec
CHANGED
@@ -35,7 +35,7 @@ Gem::Specification.new do |spec|
|
|
35
35
|
end
|
36
36
|
spec.bindir = "exe"
|
37
37
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
38
|
-
spec.require_paths = ["lib"
|
38
|
+
spec.require_paths = ["lib"]
|
39
39
|
|
40
40
|
spec.add_runtime_dependency "google-protobuf"
|
41
41
|
|
@@ -0,0 +1,140 @@
|
|
1
|
+
// ------------------------------------------------------------
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
3
|
+
// Licensed under the MIT License.
|
4
|
+
// ------------------------------------------------------------
|
5
|
+
|
6
|
+
syntax = "proto3";
|
7
|
+
|
8
|
+
package dapr.proto.common.v1;
|
9
|
+
|
10
|
+
import "google/protobuf/any.proto";
|
11
|
+
import "google/protobuf/duration.proto";
|
12
|
+
|
13
|
+
option csharp_namespace = "Dapr.Client.Autogen.Grpc.v1";
|
14
|
+
option java_outer_classname = "CommonProtos";
|
15
|
+
option java_package = "io.dapr.v1";
|
16
|
+
option go_package = "github.com/dapr/dapr/pkg/proto/common/v1;common";
|
17
|
+
|
18
|
+
// HTTPExtension includes HTTP verb and querystring
|
19
|
+
// when Dapr runtime delivers HTTP content.
|
20
|
+
//
|
21
|
+
// For example, when callers calls http invoke api
|
22
|
+
// POST http://localhost:3500/v1.0/invoke/<app_id>/method/<method>?query1=value1&query2=value2
|
23
|
+
//
|
24
|
+
// Dapr runtime will parse POST as a verb and extract querystring to quersytring map.
|
25
|
+
message HTTPExtension {
|
26
|
+
// Type of HTTP 1.1 Methods
|
27
|
+
// RFC 7231: https://tools.ietf.org/html/rfc7231#page-24
|
28
|
+
enum Verb {
|
29
|
+
NONE = 0;
|
30
|
+
GET = 1;
|
31
|
+
HEAD = 2;
|
32
|
+
POST = 3;
|
33
|
+
PUT = 4;
|
34
|
+
DELETE = 5;
|
35
|
+
CONNECT = 6;
|
36
|
+
OPTIONS = 7;
|
37
|
+
TRACE = 8;
|
38
|
+
}
|
39
|
+
|
40
|
+
// Required. HTTP verb.
|
41
|
+
Verb verb = 1;
|
42
|
+
|
43
|
+
// querystring includes HTTP querystring.
|
44
|
+
map<string, string> querystring = 2;
|
45
|
+
}
|
46
|
+
|
47
|
+
// InvokeRequest is the message to invoke a method with the data.
|
48
|
+
// This message is used in InvokeService of Dapr gRPC Service and OnInvoke
|
49
|
+
// of AppCallback gRPC service.
|
50
|
+
message InvokeRequest {
|
51
|
+
// Required. method is a method name which will be invoked by caller.
|
52
|
+
string method = 1;
|
53
|
+
|
54
|
+
// Required. Bytes value or Protobuf message which caller sent.
|
55
|
+
// Dapr treats Any.value as bytes type if Any.type_url is unset.
|
56
|
+
google.protobuf.Any data = 2;
|
57
|
+
|
58
|
+
// The type of data content.
|
59
|
+
//
|
60
|
+
// This field is required if data delivers http request body
|
61
|
+
// Otherwise, this is optional.
|
62
|
+
string content_type = 3;
|
63
|
+
|
64
|
+
// HTTP specific fields if request conveys http-compatible request.
|
65
|
+
//
|
66
|
+
// This field is required for http-compatible request. Otherwise,
|
67
|
+
// this field is optional.
|
68
|
+
HTTPExtension http_extension = 4;
|
69
|
+
}
|
70
|
+
|
71
|
+
// InvokeResponse is the response message inclduing data and its content type
|
72
|
+
// from app callback.
|
73
|
+
// This message is used in InvokeService of Dapr gRPC Service and OnInvoke
|
74
|
+
// of AppCallback gRPC service.
|
75
|
+
message InvokeResponse {
|
76
|
+
// Required. The content body of InvokeService response.
|
77
|
+
google.protobuf.Any data = 1;
|
78
|
+
|
79
|
+
// Required. The type of data content.
|
80
|
+
string content_type = 2;
|
81
|
+
}
|
82
|
+
|
83
|
+
// StateItem represents state key, value, and additional options to save state.
|
84
|
+
message StateItem {
|
85
|
+
// Required. The state key
|
86
|
+
string key = 1;
|
87
|
+
|
88
|
+
// Required. The state data for key
|
89
|
+
bytes value = 2;
|
90
|
+
|
91
|
+
// The entity tag which represents the specific version of data.
|
92
|
+
// The exact ETag format is defined by the corresponding data store.
|
93
|
+
string etag = 3;
|
94
|
+
|
95
|
+
// The metadata which will be passed to state store component.
|
96
|
+
map<string,string> metadata = 4;
|
97
|
+
|
98
|
+
// Options for concurrency, consistency, and retry_policy to save the state.
|
99
|
+
StateOptions options = 5;
|
100
|
+
}
|
101
|
+
|
102
|
+
// StateOptions configures concurrency, consistency, and retry policy for state operations
|
103
|
+
message StateOptions {
|
104
|
+
// Enum describing the supported concurrency for state.
|
105
|
+
enum StateConcurrency {
|
106
|
+
CONCURRENCY_UNSPECIFIED = 0;
|
107
|
+
CONCURRENCY_FIRST_WRITE = 1;
|
108
|
+
CONCURRENCY_LAST_WRITE = 2;
|
109
|
+
}
|
110
|
+
|
111
|
+
// Enum describing the supported consistency for state.
|
112
|
+
enum StateConsistency {
|
113
|
+
CONSISTENCY_UNSPECIFIED = 0;
|
114
|
+
CONSISTENCY_EVENTUAL = 1;
|
115
|
+
CONSISTENCY_STRONG = 2;
|
116
|
+
}
|
117
|
+
|
118
|
+
StateConcurrency concurrency = 1;
|
119
|
+
StateConsistency consistency = 2;
|
120
|
+
StateRetryPolicy retry_policy = 3;
|
121
|
+
}
|
122
|
+
|
123
|
+
// StateRetryPolicy represents retry policy to set and delete state operations.
|
124
|
+
message StateRetryPolicy {
|
125
|
+
// Enum describing the support retry pattern
|
126
|
+
enum RetryPattern {
|
127
|
+
RETRY_UNSPECIFIED = 0;
|
128
|
+
RETRY_LINEAR = 1;
|
129
|
+
RETRY_EXPONENTIAL = 2;
|
130
|
+
}
|
131
|
+
|
132
|
+
// Maximum number of retries.
|
133
|
+
int32 threshold = 1;
|
134
|
+
|
135
|
+
// Retry pattern.
|
136
|
+
RetryPattern pattern = 2;
|
137
|
+
|
138
|
+
// Initial delay between retries.
|
139
|
+
google.protobuf.Duration interval = 3;
|
140
|
+
}
|
@@ -0,0 +1,131 @@
|
|
1
|
+
// ------------------------------------------------------------
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
3
|
+
// Licensed under the MIT License.
|
4
|
+
// ------------------------------------------------------------
|
5
|
+
|
6
|
+
syntax = "proto3";
|
7
|
+
|
8
|
+
package dapr.proto.runtime.v1;
|
9
|
+
|
10
|
+
import "google/protobuf/empty.proto";
|
11
|
+
import "dapr/proto/common/v1/common.proto";
|
12
|
+
|
13
|
+
option csharp_namespace = "Dapr.AppCallback.Autogen.Grpc.v1";
|
14
|
+
option java_outer_classname = "DaprAppCallbackProtos";
|
15
|
+
option java_package = "io.dapr.v1";
|
16
|
+
option go_package = "github.com/dapr/dapr/pkg/proto/runtime/v1;runtime";
|
17
|
+
|
18
|
+
// AppCallback V1 allows user application to interact with Dapr runtime.
|
19
|
+
// User application needs to implement AppCallback service if it needs to
|
20
|
+
// receive message from dapr runtime.
|
21
|
+
service AppCallback {
|
22
|
+
// Invokes service method with InvokeRequest.
|
23
|
+
rpc OnInvoke (common.v1.InvokeRequest) returns (common.v1.InvokeResponse) {}
|
24
|
+
|
25
|
+
// Lists all topics subscribed by this app.
|
26
|
+
rpc ListTopicSubscriptions(google.protobuf.Empty) returns (ListTopicSubscriptionsResponse) {}
|
27
|
+
|
28
|
+
// Subscribes events from Pubsub
|
29
|
+
rpc OnTopicEvent(TopicEventRequest) returns (google.protobuf.Empty) {}
|
30
|
+
|
31
|
+
// Lists all input bindings subscribed by this app.
|
32
|
+
rpc ListInputBindings(google.protobuf.Empty) returns (ListInputBindingsResponse) {}
|
33
|
+
|
34
|
+
// Listens events from the input bindings
|
35
|
+
//
|
36
|
+
// User application can save the states or send the events to the output
|
37
|
+
// bindings optionally by returning BindingEventResponse.
|
38
|
+
rpc OnBindingEvent(BindingEventRequest) returns (BindingEventResponse) {}
|
39
|
+
}
|
40
|
+
|
41
|
+
// TopicEventRequest message is compatiable with CloudEvent spec v1.0
|
42
|
+
// https://github.com/cloudevents/spec/blob/v1.0/spec.md
|
43
|
+
message TopicEventRequest {
|
44
|
+
// id identifies the event. Producers MUST ensure that source + id
|
45
|
+
// is unique for each distinct event. If a duplicate event is re-sent
|
46
|
+
// (e.g. due to a network error) it MAY have the same id.
|
47
|
+
string id = 1;
|
48
|
+
|
49
|
+
// source identifies the context in which an event happened.
|
50
|
+
// Often this will include information such as the type of the
|
51
|
+
// event source, the organization publishing the event or the process
|
52
|
+
// that produced the event. The exact syntax and semantics behind
|
53
|
+
// the data encoded in the URI is defined by the event producer.
|
54
|
+
string source = 2;
|
55
|
+
|
56
|
+
// The type of event related to the originating occurrence.
|
57
|
+
string type = 3;
|
58
|
+
|
59
|
+
// The version of the CloudEvents specification.
|
60
|
+
string spec_version = 4;
|
61
|
+
|
62
|
+
// The content type of data value.
|
63
|
+
string data_content_type = 5;
|
64
|
+
|
65
|
+
// The content of the event.
|
66
|
+
bytes data = 7;
|
67
|
+
|
68
|
+
// The pubsub topic which publisher sent to.
|
69
|
+
string topic = 6;
|
70
|
+
}
|
71
|
+
|
72
|
+
// BindingEventRequest represents input bindings event.
|
73
|
+
message BindingEventRequest {
|
74
|
+
// Requried. The name of the input binding component.
|
75
|
+
string name = 1;
|
76
|
+
|
77
|
+
// Required. The payload that the input bindings sent
|
78
|
+
bytes data = 2;
|
79
|
+
|
80
|
+
// The metadata set by the input binging components.
|
81
|
+
map<string,string> metadata = 3;
|
82
|
+
}
|
83
|
+
|
84
|
+
// BindingEventResponse includes operations to save state or
|
85
|
+
// send data to output bindings optionally.
|
86
|
+
message BindingEventResponse {
|
87
|
+
// The name of state store where states are saved.
|
88
|
+
string store_name = 1;
|
89
|
+
|
90
|
+
// The state key values which will be stored in store_name.
|
91
|
+
repeated common.v1.StateItem states = 2;
|
92
|
+
|
93
|
+
// BindingEventConcurrency is the kind of concurrency
|
94
|
+
enum BindingEventConcurrency {
|
95
|
+
// SEQUENTIAL sends data to output bindings specified in "to" sequentially.
|
96
|
+
SEQUENTIAL = 0;
|
97
|
+
// PARALLEL sends data to output bindings specified in "to" in parallel.
|
98
|
+
PARALLEL = 1;
|
99
|
+
}
|
100
|
+
|
101
|
+
// The list of output bindings.
|
102
|
+
repeated string to = 3;
|
103
|
+
|
104
|
+
// The content which will be sent to "to" output bindings.
|
105
|
+
bytes data = 4;
|
106
|
+
|
107
|
+
// The concurrency of output bindings to send data to
|
108
|
+
// "to" output bindings list. The default is SEQUENTIAL.
|
109
|
+
BindingEventConcurrency concurrency = 5;
|
110
|
+
}
|
111
|
+
|
112
|
+
// ListTopicSubscriptionsResponse is the message including the list of the subscribing topics.
|
113
|
+
message ListTopicSubscriptionsResponse {
|
114
|
+
// The list of topics.
|
115
|
+
repeated TopicSubscription subscriptions = 1;
|
116
|
+
}
|
117
|
+
|
118
|
+
// TopicSubscription represents topic and metadata.
|
119
|
+
message TopicSubscription {
|
120
|
+
// Required. The name of topic which will be subscribed
|
121
|
+
string topic = 1;
|
122
|
+
|
123
|
+
// The optional properties used for this topic's subscribtion e.g. session id
|
124
|
+
map<string,string> metadata = 2;
|
125
|
+
}
|
126
|
+
|
127
|
+
// ListInputBindingsResponse is the message including the list of input bindings.
|
128
|
+
message ListInputBindingsResponse {
|
129
|
+
// The list of input bindings.
|
130
|
+
repeated string bindings = 1;
|
131
|
+
}
|
@@ -0,0 +1,155 @@
|
|
1
|
+
// ------------------------------------------------------------
|
2
|
+
// Copyright (c) Microsoft Corporation.
|
3
|
+
// Licensed under the MIT License.
|
4
|
+
// ------------------------------------------------------------
|
5
|
+
|
6
|
+
syntax = "proto3";
|
7
|
+
|
8
|
+
package dapr.proto.runtime.v1;
|
9
|
+
|
10
|
+
import "google/protobuf/empty.proto";
|
11
|
+
import "dapr/proto/common/v1/common.proto";
|
12
|
+
|
13
|
+
option csharp_namespace = "Dapr.Client.Autogen.Grpc.v1";
|
14
|
+
option java_outer_classname = "DaprProtos";
|
15
|
+
option java_package = "io.dapr.v1";
|
16
|
+
option go_package = "github.com/dapr/dapr/pkg/proto/runtime/v1;runtime";
|
17
|
+
|
18
|
+
// Dapr service provides APIs to user application to access Dapr building blocks.
|
19
|
+
service Dapr {
|
20
|
+
// Invokes a method on a remote Dapr app.
|
21
|
+
rpc InvokeService(InvokeServiceRequest) returns (common.v1.InvokeResponse) {}
|
22
|
+
|
23
|
+
// Gets the state for a specific key.
|
24
|
+
rpc GetState(GetStateRequest) returns (GetStateResponse) {}
|
25
|
+
|
26
|
+
// Saves the state for a specific key.
|
27
|
+
rpc SaveState(SaveStateRequest) returns (google.protobuf.Empty) {}
|
28
|
+
|
29
|
+
// Deletes the state for a specific key.
|
30
|
+
rpc DeleteState(DeleteStateRequest) returns (google.protobuf.Empty) {}
|
31
|
+
|
32
|
+
// Publishes events to the specific topic.
|
33
|
+
rpc PublishEvent(PublishEventRequest) returns (google.protobuf.Empty) {}
|
34
|
+
|
35
|
+
// Invokes binding data to specific output bindings
|
36
|
+
rpc InvokeBinding(InvokeBindingRequest) returns (InvokeBindingResponse) {}
|
37
|
+
|
38
|
+
// Gets secrets from secret stores.
|
39
|
+
rpc GetSecret(GetSecretRequest) returns (GetSecretResponse) {}
|
40
|
+
}
|
41
|
+
|
42
|
+
// InvokeServiceRequest represents the request message for Service invocation.
|
43
|
+
message InvokeServiceRequest {
|
44
|
+
// Required. Callee's app id.
|
45
|
+
string id = 1;
|
46
|
+
|
47
|
+
// Required. message which will be delivered to callee.
|
48
|
+
common.v1.InvokeRequest message = 3;
|
49
|
+
}
|
50
|
+
|
51
|
+
// GetStateRequest is the message to get key-value states from specific state store.
|
52
|
+
message GetStateRequest {
|
53
|
+
// The name of state store.
|
54
|
+
string store_name = 1;
|
55
|
+
|
56
|
+
// The key of the desired state
|
57
|
+
string key = 2;
|
58
|
+
|
59
|
+
// The read consistency of the state store.
|
60
|
+
common.v1.StateOptions.StateConsistency consistency = 3;
|
61
|
+
}
|
62
|
+
|
63
|
+
// GetStateResponse is the response conveying the state value and etag.
|
64
|
+
message GetStateResponse {
|
65
|
+
// The byte array data
|
66
|
+
bytes data = 1;
|
67
|
+
|
68
|
+
// The entity tag which represents the specific version of data.
|
69
|
+
// ETag format is defined by the corresponding data store.
|
70
|
+
string etag = 2;
|
71
|
+
}
|
72
|
+
|
73
|
+
// DeleteStateRequest is the message to delete key-value states in the specific state store.
|
74
|
+
message DeleteStateRequest {
|
75
|
+
// The name of state store.
|
76
|
+
string store_name = 1;
|
77
|
+
|
78
|
+
// The key of the desired state
|
79
|
+
string key = 2;
|
80
|
+
|
81
|
+
// The entity tag which represents the specific version of data.
|
82
|
+
// The exact ETag format is defined by the corresponding data store.
|
83
|
+
string etag = 3;
|
84
|
+
|
85
|
+
// State operation options which includes concurrency/
|
86
|
+
// consistency/retry_policy.
|
87
|
+
common.v1.StateOptions options = 4;
|
88
|
+
}
|
89
|
+
|
90
|
+
// SaveStateRequest is the message to save multiple states into state store.
|
91
|
+
message SaveStateRequest {
|
92
|
+
// The name of state store.
|
93
|
+
string store_name = 1;
|
94
|
+
|
95
|
+
// The array of the state key values.
|
96
|
+
repeated common.v1.StateItem states = 2;
|
97
|
+
}
|
98
|
+
|
99
|
+
// PublishEventRequest is the message to publish event data to pubsub topic
|
100
|
+
message PublishEventRequest {
|
101
|
+
// The pubsub topic
|
102
|
+
string topic = 1;
|
103
|
+
|
104
|
+
// The data which will be published to topic.
|
105
|
+
bytes data = 2;
|
106
|
+
}
|
107
|
+
|
108
|
+
// InvokeBindingRequest is the message to send data to output bindings
|
109
|
+
message InvokeBindingRequest {
|
110
|
+
// The name of the output binding to invoke.
|
111
|
+
string name = 1;
|
112
|
+
|
113
|
+
// The data which will be sent to output binding.
|
114
|
+
bytes data = 2;
|
115
|
+
|
116
|
+
// The metadata passing to output binding components
|
117
|
+
//
|
118
|
+
// Common metadata property:
|
119
|
+
// - ttlInSeconds : the time to live in seconds for the message.
|
120
|
+
// If set in the binding definition will cause all messages to
|
121
|
+
// have a default time to live. The message ttl overrides any value
|
122
|
+
// in the binding definition.
|
123
|
+
map<string,string> metadata = 3;
|
124
|
+
|
125
|
+
// The name of the operation type for the binding to invoke
|
126
|
+
string operation = 4;
|
127
|
+
}
|
128
|
+
|
129
|
+
// InvokeBindingResponse is the message returned from an output binding invocation
|
130
|
+
message InvokeBindingResponse {
|
131
|
+
// The data which will be sent to output binding.
|
132
|
+
bytes data = 1;
|
133
|
+
|
134
|
+
// The metadata returned from an external system
|
135
|
+
map<string,string> metadata = 2;
|
136
|
+
}
|
137
|
+
|
138
|
+
// GetSecretRequest is the message to get secret from secret store.
|
139
|
+
message GetSecretRequest {
|
140
|
+
// The name of secret store.
|
141
|
+
string store_name = 1;
|
142
|
+
|
143
|
+
// The name of secret key.
|
144
|
+
string key = 2;
|
145
|
+
|
146
|
+
// The metadata which will be sent to secret store components.
|
147
|
+
map<string,string> metadata = 3;
|
148
|
+
}
|
149
|
+
|
150
|
+
// GetSecretResponse is the response mesage to convey the requested secret.
|
151
|
+
message GetSecretResponse {
|
152
|
+
// data is the secret value. Some secret store, such as kubernetes secret
|
153
|
+
// store, can save multiple secrets for single secret key.
|
154
|
+
map<string, string> data = 1;
|
155
|
+
}
|