From c2b672207b3cd1bea6d641dd66e987f32154db06 Mon Sep 17 00:00:00 2001 From: Piotr Jasina Date: Wed, 25 Mar 2020 01:20:50 +0100 Subject: [PATCH 1/8] Add Hazelcast pubsub howto (#454) * Add Hazelcast pubsub howto * Add reference to Hazelcast pubsub howto --- howto/setup-pub-sub-message-broker/README.md | 1 + .../setup-hazelcast.md | 51 +++++++++++++++++++ 2 files changed, 52 insertions(+) create mode 100644 howto/setup-pub-sub-message-broker/setup-hazelcast.md diff --git a/howto/setup-pub-sub-message-broker/README.md b/howto/setup-pub-sub-message-broker/README.md index 4eb67ea03..5818fffd9 100644 --- a/howto/setup-pub-sub-message-broker/README.md +++ b/howto/setup-pub-sub-message-broker/README.md @@ -47,3 +47,4 @@ kubectl apply -f pubsub.yaml - [Setup Azure Service bus](./setup-azure-servicebus.md) - [Setup RabbitMQ](./setup-rabbitmq.md) - [Setup GCP Pubsub](./setup-gcp.md) +- [Setup Hazelcast Pubsub](./setup-hazelcast.md) diff --git a/howto/setup-pub-sub-message-broker/setup-hazelcast.md b/howto/setup-pub-sub-message-broker/setup-hazelcast.md new file mode 100644 index 000000000..41cb6f06d --- /dev/null +++ b/howto/setup-pub-sub-message-broker/setup-hazelcast.md @@ -0,0 +1,51 @@ +# Setup Hazelcast + +## Locally + +You can run Hazelcast locally using Docker: + +``` +docker run -e JAVA_OPTS="-Dhazelcast.local.publicAddress=127.0.0.1:5701" -p 5701:5701 hazelcast/hazelcast +``` + +You can then interact with the server using the `127.0.0.1:5701`. + +## Kubernetes + +The easiest way to install Hazelcast on Kubernetes is by using the [Helm chart](https://github.com/helm/charts/tree/master/stable/hazelcast): + +## Create a Dapr component + +The next step is to create a Dapr component for Hazelcast. + +Create the following YAML file named `hazelcast.yaml`: + +``` +apiVersion: dapr.io/v1alpha1 +kind: Component +metadata: + name: +spec: + type: pubsub.hazelcast + metadata: + - name: hazelcastServers + value: # Required. A comma delimited string of servers. Example: "hazelcast:3000,hazelcast2:3000" +``` + +The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets as described [here](../../concepts/secrets/README.md). + + +## Apply the configuration + +### In Kubernetes + +To apply the Hazelcast state store to Kubernetes, use the `kubectl` CLI: + +``` +kubectl apply -f hazelcast.yaml +``` + +### Running locally + +The Dapr CLI will automatically create a directory named `components` in your current working directory with a Redis component. +To use Hazelcast, replace the redis.yaml file with the hazelcast.yaml above. From fdc0840c0b4ced8362cd264c54179ffd7efe3dd5 Mon Sep 17 00:00:00 2001 From: Shalabh Mohan Shrivastava Date: Wed, 25 Mar 2020 10:42:02 -0700 Subject: [PATCH 2/8] Adding the /healthz API spec --- reference/api/health_api.md | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 reference/api/health_api.md diff --git a/reference/api/health_api.md b/reference/api/health_api.md new file mode 100644 index 000000000..f1cbbb675 --- /dev/null +++ b/reference/api/health_api.md @@ -0,0 +1,34 @@ +# Dapr health API reference + +Dapr provides health checking probes that can be used as readiness or liveness of Dapr. + +### Get Dapr health state + +Gets the health state for Dapr. + +#### HTTP Request + +```http +GET http://localhost:/v1.0/healthz +``` + +#### HTTP Response Codes + +Code | Description +---- | ----------- +200 | health is ok +500 | health is not ok + +#### URL Parameters + +Parameter | Description +--------- | ----------- +daprPort | The Dapr port. + +#### Examples + +```shell +curl http://localhost:3500/v1.0/healthz + -H "Content-Type: application/json" +``` + From 68ceb2065d3e3db12029fac2b8038cc7d7307a8c Mon Sep 17 00:00:00 2001 From: Shalabh Mohan Shrivastava Date: Wed, 25 Mar 2020 10:54:17 -0700 Subject: [PATCH 3/8] Updating the error code doc. --- reference/api/error_codes.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/reference/api/error_codes.md b/reference/api/error_codes.md index bac86156a..62c419111 100644 --- a/reference/api/error_codes.md +++ b/reference/api/error_codes.md @@ -35,4 +35,5 @@ ERR_MALFORMED_REQUEST | Error with a malformed request. ERR_DIRECT_INVOKE | Error in direct invocation. ERR_DESERIALIZE_HTTP_BODY | Error deserializing an HTTP request body. ERR_SECRET_STORE_NOT_CONFIGURED| Error that no secret store is configured. -ERR_SECRET_STORE_NOT_FOUND | Error that specified secret store is not found. \ No newline at end of file +ERR_SECRET_STORE_NOT_FOUND | Error that specified secret store is not found. +ERR_HEALTH_NOT_READY | Error that Dapr is not ready. \ No newline at end of file From 45ed796e95e91c5e08ee64aa10a2bd15d3e6344f Mon Sep 17 00:00:00 2001 From: Shalabh Mohan Shrivastava Date: Wed, 25 Mar 2020 10:56:13 -0700 Subject: [PATCH 4/8] resolving code review comments. --- reference/api/health_api.md | 1 - 1 file changed, 1 deletion(-) diff --git a/reference/api/health_api.md b/reference/api/health_api.md index f1cbbb675..0fbcef8a8 100644 --- a/reference/api/health_api.md +++ b/reference/api/health_api.md @@ -29,6 +29,5 @@ daprPort | The Dapr port. ```shell curl http://localhost:3500/v1.0/healthz - -H "Content-Type: application/json" ``` From b4d8b1186cf8fbc866c8f0b441bcf2948db96efe Mon Sep 17 00:00:00 2001 From: Shalabh Mohan Shrivastava Date: Wed, 25 Mar 2020 11:02:35 -0700 Subject: [PATCH 5/8] Changing the description as suggested. --- reference/api/health_api.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/reference/api/health_api.md b/reference/api/health_api.md index 0fbcef8a8..5113017d2 100644 --- a/reference/api/health_api.md +++ b/reference/api/health_api.md @@ -16,8 +16,8 @@ GET http://localhost:/v1.0/healthz Code | Description ---- | ----------- -200 | health is ok -500 | health is not ok +200 | dapr is healthy +500 | dapr is not healthy #### URL Parameters From 7ba5e7557aacd4b6e169543010553d1c6b18d205 Mon Sep 17 00:00:00 2001 From: Ricardo Niepel Date: Wed, 25 Mar 2020 19:26:57 +0100 Subject: [PATCH 6/8] Add metadata doc to Azure Blob binding (#450) * add metadata doc to AzBlobBinding * fix securely typo and ensure prod note on all specs Co-authored-by: Yaron Schneider --- reference/specs/bindings/blobstorage.md | 25 +++++++++++++++++++- reference/specs/bindings/cosmosdb.md | 2 +- reference/specs/bindings/dynamodb.md | 2 +- reference/specs/bindings/eventhubs.md | 2 +- reference/specs/bindings/gcpbucket.md | 2 +- reference/specs/bindings/gcppubsub.md | 2 +- reference/specs/bindings/kafka.md | 2 +- reference/specs/bindings/mqtt.md | 2 ++ reference/specs/bindings/rabbitmq.md | 6 +++-- reference/specs/bindings/redis.md | 2 +- reference/specs/bindings/s3.md | 2 +- reference/specs/bindings/servicebusqueues.md | 2 +- reference/specs/bindings/signalr.md | 2 +- reference/specs/bindings/sns.md | 2 +- reference/specs/bindings/sqs.md | 2 +- reference/specs/bindings/storagequeues.md | 8 ++++--- reference/specs/bindings/twilio.md | 2 +- 17 files changed, 48 insertions(+), 19 deletions(-) diff --git a/reference/specs/bindings/blobstorage.md b/reference/specs/bindings/blobstorage.md index a8220e1f0..8976e8736 100644 --- a/reference/specs/bindings/blobstorage.md +++ b/reference/specs/bindings/blobstorage.md @@ -20,4 +20,27 @@ spec: - `storageAccessKey` is the Blob Storage access key. - `container` is the name of the Blob Storage container to write to. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) + +## Additional information + +By default the Azure Blob Storage output binding will auto generate a UUID as blob filename and not assign any system or custom metadata to it. It is configurable in the Metadata property of the message (all optional). + +Applications publishing to an Azure Blob Storage output binding should send a message with the following contract: +```json +{ + "data": { + "message": "Hi" + }, + "metadata": { + "blobName" : "filename.txt", + "ContentType" : "text/plain", + "ContentMD5" : "vZGKbMRDAnMs4BIwlXaRvQ==", + "ContentEncoding" : "UTF-8", + "ContentLanguage" : "en-us", + "ContentDisposition" : "attachment", + "CacheControl" : "no-cache", + "Custom" : "hello-world", + } +} +``` \ No newline at end of file diff --git a/reference/specs/bindings/cosmosdb.md b/reference/specs/bindings/cosmosdb.md index 2ba67673b..d38a43440 100644 --- a/reference/specs/bindings/cosmosdb.md +++ b/reference/specs/bindings/cosmosdb.md @@ -26,4 +26,4 @@ spec: - `collection` is name of the collection inside the database. - `partitionKey` is the name of the partitionKey to extract from the payload. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/dynamodb.md b/reference/specs/bindings/dynamodb.md index 94b0bdfbf..dcf5fb18d 100644 --- a/reference/specs/bindings/dynamodb.md +++ b/reference/specs/bindings/dynamodb.md @@ -23,4 +23,4 @@ spec: - `secretKey` is the AWS secret key. - `table` is the DynamoDB table name. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/eventhubs.md b/reference/specs/bindings/eventhubs.md index 33bb267f0..2c4e6d9d3 100644 --- a/reference/specs/bindings/eventhubs.md +++ b/reference/specs/bindings/eventhubs.md @@ -31,4 +31,4 @@ spec: - `storageContainerName` Is the name of the container in the Azure Storage account to persist checkpoints data on. - `partitionID` (Optional) ID of the partition to send and receive events. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) diff --git a/reference/specs/bindings/gcpbucket.md b/reference/specs/bindings/gcpbucket.md index 0e61232fb..e9350f004 100644 --- a/reference/specs/bindings/gcpbucket.md +++ b/reference/specs/bindings/gcpbucket.md @@ -44,4 +44,4 @@ spec: - `client_x509_cert_url` is the GCP credentials project x509 cert url. - `private_key` is the GCP credentials private key. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/gcppubsub.md b/reference/specs/bindings/gcppubsub.md index 93daae31b..d5331744e 100644 --- a/reference/specs/bindings/gcppubsub.md +++ b/reference/specs/bindings/gcppubsub.md @@ -47,4 +47,4 @@ spec: - `client_x509_cert_url` is the GCP credentials project x509 cert url. - `private_key` is the GCP credentials private key. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/kafka.md b/reference/specs/bindings/kafka.md index 8af77d9dc..04fc1c8d1 100644 --- a/reference/specs/bindings/kafka.md +++ b/reference/specs/bindings/kafka.md @@ -32,4 +32,4 @@ spec: - `saslUsername` is the SASL username for authentication. Only used if `authRequired` is set to - `"true"`. - `saslPassword` is the SASL password for authentication. Only used if `authRequired` is set to - `"true"`. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/mqtt.md b/reference/specs/bindings/mqtt.md index 3e3164f5c..9483c1cd8 100644 --- a/reference/specs/bindings/mqtt.md +++ b/reference/specs/bindings/mqtt.md @@ -16,3 +16,5 @@ spec: - `url` is the MQTT broker url. - `topic` is the topic to listen on or send events to. + +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/rabbitmq.md b/reference/specs/bindings/rabbitmq.md index 625497709..bddc6fc79 100644 --- a/reference/specs/bindings/rabbitmq.md +++ b/reference/specs/bindings/rabbitmq.md @@ -11,7 +11,7 @@ spec: - name: queueName value: queue1 - name: host - value: amqp://guest:guest@localhost:5672 + value: amqp://[username][:password]@host.domain[:port] - name: durable value: true - name: deleteWhenUnused @@ -21,4 +21,6 @@ spec: - `queueName` is the RabbitMQ queue name. - `host` is the RabbitMQ host address. - `durable` tells RabbitMQ to persist message in storage. -- `deleteWhenUnused` enables or disables auto-delete. \ No newline at end of file +- `deleteWhenUnused` enables or disables auto-delete. + +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/redis.md b/reference/specs/bindings/redis.md index f0d2a5e61..f95ae8f7a 100644 --- a/reference/specs/bindings/redis.md +++ b/reference/specs/bindings/redis.md @@ -17,4 +17,4 @@ spec: - `redisHost` is the Redis host address. - `redisPassword` is the Redis password. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) diff --git a/reference/specs/bindings/s3.md b/reference/specs/bindings/s3.md index 84ca099a9..b7bffae79 100644 --- a/reference/specs/bindings/s3.md +++ b/reference/specs/bindings/s3.md @@ -23,4 +23,4 @@ spec: - `secretKey` is the AWS secret key. - `table` is the name of the S3 bucket to write to. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/servicebusqueues.md b/reference/specs/bindings/servicebusqueues.md index d1ce67ffd..3ce0c499d 100644 --- a/reference/specs/bindings/servicebusqueues.md +++ b/reference/specs/bindings/servicebusqueues.md @@ -17,4 +17,4 @@ spec: - `connectionString` is the Service Bus connection string. - `queueName` is the Service Bus queue name. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/signalr.md b/reference/specs/bindings/signalr.md index 08fd1f2aa..6c9003993 100644 --- a/reference/specs/bindings/signalr.md +++ b/reference/specs/bindings/signalr.md @@ -17,7 +17,7 @@ spec: - The metadata `connectionString` contains the Azure SignalR connection string. - The optional `hub` metadata value defines the hub in which the message will be send. The hub can be dynamically defined as a metadata value when publishing to an output binding (key is "hub"). -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) ## Additional information diff --git a/reference/specs/bindings/sns.md b/reference/specs/bindings/sns.md index 3d52fddf5..fb86e2769 100644 --- a/reference/specs/bindings/sns.md +++ b/reference/specs/bindings/sns.md @@ -23,4 +23,4 @@ spec: - `secretKey` is the AWS secret key. - `topicArn` is the SNS topic name. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/sqs.md b/reference/specs/bindings/sqs.md index 8de8862a7..e13f6bb24 100644 --- a/reference/specs/bindings/sqs.md +++ b/reference/specs/bindings/sqs.md @@ -23,4 +23,4 @@ spec: - `secretKey` is the AWS secret key. - `queueName` is the SQS queue name. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/storagequeues.md b/reference/specs/bindings/storagequeues.md index 3578be0e9..348e2b5a6 100644 --- a/reference/specs/bindings/storagequeues.md +++ b/reference/specs/bindings/storagequeues.md @@ -16,6 +16,8 @@ spec: value: "myqueue" ``` -`storageAccount` is the Azure Storage account name. -`storageAccessKey` is the Azure Storage access key. -`queue` is the name of the Azure Storage queue. +- `storageAccount` is the Azure Storage account name. +- `storageAccessKey` is the Azure Storage access key. +- `queue` is the name of the Azure Storage queue. + +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file diff --git a/reference/specs/bindings/twilio.md b/reference/specs/bindings/twilio.md index 65f5c3820..2f43fd5e9 100644 --- a/reference/specs/bindings/twilio.md +++ b/reference/specs/bindings/twilio.md @@ -23,4 +23,4 @@ spec: - `accountSid` is the Twilio account SID. - `authToken` is the Twilio auth token. -> **Note:** In production never place passwords or secrets within Dapr components. For information on securly storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) \ No newline at end of file From dddf9d023f372cde6d69807feaca608e25627e01 Mon Sep 17 00:00:00 2001 From: Sivamuthu Kumar Date: Thu, 26 Mar 2020 13:57:49 -0400 Subject: [PATCH 7/8] Add kinesis docs (#458) --- concepts/bindings/README.md | 2 ++ reference/specs/bindings/kinesis.md | 35 +++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 reference/specs/bindings/kinesis.md diff --git a/concepts/bindings/README.md b/concepts/bindings/README.md index 8f1fc4054..6b02f95ac 100644 --- a/concepts/bindings/README.md +++ b/concepts/bindings/README.md @@ -36,6 +36,8 @@ Every binding has its own unique set of properties. Click the name link to see t | [AWS S3](../../reference/specs/bindings/s3.md) | | ✅ | Experimental | | [AWS SNS](../../reference/specs/bindings/sns.md) | | ✅ | Experimental | | [AWS SQS](../../reference/specs/bindings/sqs.md) | ✅ | ✅ | Experimental | +| [AWS Kinesis](../../reference/specs/bindings/kinesis.md) | ✅ | ✅ | Experimental | + ### Google Cloud Platform (GCP) diff --git a/reference/specs/bindings/kinesis.md b/reference/specs/bindings/kinesis.md new file mode 100644 index 000000000..1b4d58183 --- /dev/null +++ b/reference/specs/bindings/kinesis.md @@ -0,0 +1,35 @@ +# AWS Kinesis Binding Spec + +See [this](https://aws.amazon.com/kinesis/data-streams/getting-started/) for instructions on how to set up an AWS Kinesis data streams + +```yml +apiVersion: dapr.io/v1alpha1 +kind: Component +metadata: + name: +spec: + type: bindings.aws.kinesis + metadata: + - name: region + value: AWS_REGION #replace + - name: accessKey + value: AWS_ACCESS_KEY # replace + - name: secretKey + value: AWS_SECRET_KEY #replace + - name: streamName + value: KINESIS_STREAM_NAME # Kinesis stream name + - name: consumerName + value: KINESIS_CONSUMER_NAME # Kinesis consumer name + - name: mode + value: shared # shared - Shared throughput or extended - Extended/Enhanced fanout +``` + +- `region` is the AWS region. +- `accessKey` is the AWS access key. +- `secretKey` is the AWS secret key. +- `mode` Accepted values: shared, extended. shared - Shared throughput, extended - Extended/Enhanced fanout methods. More details are [here](https://docs.aws.amazon.com/streams/latest/dev/building-consumers.html) +- `streamName` is the AWS Kinesis Stream Name. +- `consumerName` is the AWS Kinesis Consumer Name. + + +> **Note:** In production never place passwords or secrets within Dapr components. For information on securely storing and retrieving secrets refer to [Setup Secret Store](../../../howto/setup-secret-store) From ed1c7535ed215752cbf5b2059e28ba68c7ce94a3 Mon Sep 17 00:00:00 2001 From: David McGhee Date: Fri, 27 Mar 2020 07:14:51 +1100 Subject: [PATCH 8/8] Minor binding update. Inc reference section (#401) * Minor binding update. Inc reference section * Updating links * Updating links Co-authored-by: Aman Bhardwaj --- howto/send-events-with-output-bindings/README.md | 8 +++++++- howto/trigger-app-with-input-binding/README.md | 7 +++++++ 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/howto/send-events-with-output-bindings/README.md b/howto/send-events-with-output-bindings/README.md index a311cb328..ea06ee07c 100644 --- a/howto/send-events-with-output-bindings/README.md +++ b/howto/send-events-with-output-bindings/README.md @@ -42,5 +42,11 @@ curl -X POST -H http://localhost:3500/v1.0/bindings/myEvent -d '{ "data": { "me ``` As seen above, we invoked the `/binding` endpoint with the name of the binding to invoke, in our case its `myEvent`. +The payload goes inside the mandatory `data` field, and can be any JSON serializable value. -The payload goes inside the `data` field. \ No newline at end of file + +## References + +* Binding [API](https://github.com/dapr/docs/blob/master/reference/api/bindings_api.md) +* Binding [Components](https://github.com/dapr/docs/tree/master/concepts/bindings) +* Binding [Detailed specifications](https://github.com/dapr/docs/tree/master/reference/specs/bindings) diff --git a/howto/trigger-app-with-input-binding/README.md b/howto/trigger-app-with-input-binding/README.md index 397f921ce..e39f0f9dc 100644 --- a/howto/trigger-app-with-input-binding/README.md +++ b/howto/trigger-app-with-input-binding/README.md @@ -84,3 +84,10 @@ res.status(500).send() ### Event delivery Guarantees Event delivery guarantees are controlled by the binding implementation. Depending on the binding implementation, the event delivery can be exactly once or at least once. + + +## References + +* Binding [API](https://github.com/dapr/docs/blob/master/reference/api/bindings_api.md) +* Binding [Components](https://github.com/dapr/docs/tree/master/concepts/bindings) +* Binding [Detailed specifications](https://github.com/dapr/docs/tree/master/reference/specs/bindings)