Merge branch 'v1.12' of https://github.com/dapr/docs into v1.12

This commit is contained in:
Hannah Hunter 2023-10-24 15:57:49 -04:00
commit 18d793a641
60 changed files with 49 additions and 143 deletions

View File

@ -81,7 +81,7 @@ The diagram below shows how the Sentry system service issues certificates for ap
### Preventing IP addresses on Dapr
To prevent Dapr sidecars from being called on any IP address (especially in production environments such as Kubernetes), Dapr restricts its listening IP addresses only to `localhost`. Use the [dapr-listen-addresses]({{<ref arguments-annotations-overview>}}) setting you need to enable other addresses.
To prevent Dapr sidecars from being called on any IP address (especially in production environments such as Kubernetes), Dapr restricts its listening IP addresses to `localhost`. Use the [dapr-listen-addresses]({{<ref arguments-annotations-overview>}}) setting if you need to enable access from external addresses.
## Secure Dapr to application communication

View File

@ -59,7 +59,7 @@ public void ConfigureServices(IServiceCollection services)
services.AddSingleton<BankService>();
}
```
[See the .NET SDK documentation on registring actors]({{< ref "dotnet-actors-usage.md#registring-actors" >}}).
[See the .NET SDK documentation on registering actors]({{< ref "dotnet-actors-usage.md#registring-actors" >}}).
{{% /codetab %}}

View File

@ -57,7 +57,7 @@ public void ConfigureServices(IServiceCollection services)
}
```
[See the .NET SDK documentation on registring actors]({{< ref "dotnet-actors-usage.md#registring-actors" >}}).
[See the .NET SDK documentation on registering actors]({{< ref "dotnet-actors-usage.md#registring-actors" >}}).
{{% /codetab %}}

View File

@ -26,7 +26,7 @@ Alternatively, you can use [Dapr SDKs to use actors]({{< ref "developing-applica
## Save state with actors
You can interact with Dapr via HTTP/gRPC endpoints to save state reliably using the Dapr actor state mangement capabaility.
You can interact with Dapr via HTTP/gRPC endpoints to save state reliably using the Dapr actor state management capabaility.
To use actors, your state store must support multi-item transactions. This means your state store component must implement the `TransactionalStore` interface.

View File

@ -76,14 +76,14 @@ Read the [Use output bindings to interface with external resources guide]({{< re
## Binding directions (optional)
You can provide the `direction` metadata field to indicate the direction(s) supported by the binding component. In doing so, the Dapr sidecar avoids the `"wait for the app to become ready"` state reducing the lifecycle dependency between the Dapr sidecar and the application:
You can provide the `direction` metadata field to indicate the direction(s) supported by the binding component. In doing so, the Dapr sidecar avoids the `"wait for the app to become ready"` state, reducing the lifecycle dependency between the Dapr sidecar and the application:
- `"input"`
- `"output"`
- `"input, output"`
{{% alert title="Note" color="primary" %}}
It is highly recommended that all bindings should include the `direction` property.
It is highly recommended that all input bindings should include the `direction` property.
{{% /alert %}}
[See a full example of the bindings `direction` metadata.]({{< ref "bindings_api.md#binding-direction-optional" >}})

View File

@ -45,7 +45,7 @@ While both HTTP and gRPC are supported in the alpha release, using the gRPC APIs
### Cryptographic components
The Dapr cryptography building block incldues two kinds of components:
The Dapr cryptography building block includes two kinds of components:
- **Components that allow interacting with management services or vaults ("key vaults").**
Similar to how Dapr offers an "abstraction layer" on top of various secret stores or state stores, these components allow interacting with various key vaults such as Azure Key Vault (with more coming in future Dapr releases). With these components, cryptographic operations on the private keys are performed within the vaults and Dapr never sees your private keys.

View File

@ -160,7 +160,7 @@ The JSON payload then reflects the new `source` and `id` values:
```
{{% alert title="Important" color="warning" %}}
While you can replace `traceid`/`traceparent` and `tracestate`, doing this may interfere with tracing events and report inconsistent results in tracing tools. It's recommended to use Open Telementry for distributed traces. [Learn more about distributed tracing.]({{< ref tracing-overview.md >}})
While you can replace `traceid`/`traceparent` and `tracestate`, doing this may interfere with tracing events and report inconsistent results in tracing tools. It's recommended to use Open Telemetry for distributed traces. [Learn more about distributed tracing.]({{< ref tracing-overview.md >}})
{{% /alert %}}

View File

@ -114,7 +114,7 @@ All Dapr pub/sub components support the at-least-once guarantee.
### Consumer groups and competing consumers pattern
Dapr handles the burden of dealing with consumer groups and the competing consumers pattern. In the competing consumers pattern, multiple application instances using a single consumer group compete for the message. Dapr enforces the competing consumer pattern when replicas use the same `app-id` without explict consumer group overrides.
Dapr handles the burden of dealing with consumer groups and the competing consumers pattern. In the competing consumers pattern, multiple application instances using a single consumer group compete for the message. Dapr enforces the competing consumer pattern when replicas use the same `app-id` without explicit consumer group overrides.
When multiple instances of the same application (with same `app-id`) subscribe to a topic, Dapr delivers each message to *only one instance of **that** application*. This concept is illustrated in the diagram below.

View File

@ -109,4 +109,4 @@ spec:
Watch [this video for an overview of the outbox pattern](https://youtu.be/rTovKpG0rhY?t=1338):
<div class="embed-responsive embed-responsive-16by9">
<iframe width="360" height="315" src="https://youtu.be/rTovKpG0rhY?t=1338" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<iframe width="360" height="315" src="https://www.youtube-nocookie.com/embed/rTovKpG0rhY?si=1xlS54vcdYnLLtOL&amp;start=1338" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>

View File

@ -105,8 +105,9 @@ Want to skip the quickstarts? Not a problem. You can try out the workflow buildi
With Dapr Workflow in beta stage comes the following limitation(s):
- **State stores:** For the {{% dapr-latest-version cli="true" %}} beta release of Dapr Workflow, you're not able to use NoSQL databases. Only SQL databases are supported in the latest release.
- **Application instances:** For the {{% dapr-latest-version cli="true" %}} beta release of Dapr Workflow, only a maximum of 2 application instances is supported.
- **State stores:** For the {{% dapr-latest-version cli="true" %}} beta release of Dapr Workflow, using the NoSQL databases as a state store results in limitations around storing internal states. For example, CosmosDB has a maximum single operation item limit of only 100 states in a single request.
- **Horizontal scaling:** For the {{% dapr-latest-version cli="true" %}} beta release of Dapr Workflow, if you scale out Dapr sidecars or your application pods to more than 2, then the concurrency of the workflow execution drops. It is recommended to test with 1 or 2 instances, and no more than 2.
## Watch the demo

View File

@ -45,7 +45,7 @@ dapr init
#### Example: create a Java Dev Container for Dapr
This is an exmaple of creating a Dev Container for creating Java apps that use Dapr, based on the [official Java 17 Dev Container image](https://github.com/devcontainers/images/tree/main/src/java).
This is an example of creating a Dev Container for creating Java apps that use Dapr, based on the [official Java 17 Dev Container image](https://github.com/devcontainers/images/tree/main/src/java).
Place this in a file called `.devcontainer/devcontainer.json` in your project:

View File

@ -14,7 +14,7 @@ The Multi-App Run template file is a YAML file that you can use to run multiple
- Use the multi-app template
- View started applications
- Stop the multi-app template
- Stucture the multi-app template file
- Structure the multi-app template file
## Use the multi-app template

View File

@ -25,7 +25,7 @@ While Dapr's built-in components come [included with the runtime](https://github
1. Pluggable components need to be started and ready to take requests _before_ Dapr itself is started.
2. The [Unix Domain Socket][uds] file used for the pluggable component communication need to be made accessible to both Dapr and pluggable component.
In standalone mode, pluggable components run as processes or containers. On Kubernetes, pluggable components run as containers and are automatically injected to the application's pod by Dapr's sidecar injector, allowing customization via the standard [Kubernets Container spec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#container-v1-core).
In standalone mode, pluggable components run as processes or containers. On Kubernetes, pluggable components run as containers and are automatically injected to the application's pod by Dapr's sidecar injector, allowing customization via the standard [Kubernetes Container spec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.25/#container-v1-core).
This also changes the approach to share [Unix Domain Socket][uds] files between Dapr and pluggable components.

View File

@ -11,7 +11,7 @@ Using Dapr, you can control how many requests and events will invoke your applic
*Note that this rate limiting is guaranteed for every event that's coming from Dapr, meaning Pub/Sub events, direct invocation from other services, bindings events etc. Dapr can't enforce the concurrency policy on requests that are coming to your app externally.*
*Note that rate limiting per second can be achieved by using the **middleware.http.ratelimit** middleware. However, there is an imporant difference between the two approaches. The rate limit middlware is time bound and limits the number of requests per second, while the `app-max-concurrency` flag specifies the number of concurrent requests (and events) at any point of time. See [Rate limit middleware]({{< ref middleware-rate-limit.md >}}). *
*Note that rate limiting per second can be achieved by using the **middleware.http.ratelimit** middleware. However, there is an important difference between the two approaches. The rate limit middleware is time bound and limits the number of requests per second, while the `app-max-concurrency` flag specifies the number of concurrent requests (and events) at any point of time. See [Rate limit middleware]({{< ref middleware-rate-limit.md >}}). *
Watch this [video](https://youtu.be/yRI5g6o_jp8?t=1710) on how to control concurrency and rate limiting ".

View File

@ -69,7 +69,7 @@ spec:
defaultAccess: deny
```
For applications that need to be deined access to the Kubernetes secret store, follow [these instructions]({{< ref kubernetes-overview >}}), and add the following annotation to the application pod.
For applications that need to be denied access to the Kubernetes secret store, follow [these instructions]({{< ref kubernetes-overview >}}), and add the following annotation to the application pod.
```yaml
dapr.io/config: appconfig

View File

@ -54,7 +54,7 @@ The baseline test included direct, non-encrypted traffic, without telemetry, dir
### Control plane performance
The Dapr control plane uses a total of 0.009 vCPU and 61.6 Mb when running in non-HA mode, meaning a single replica per system compoment.
The Dapr control plane uses a total of 0.009 vCPU and 61.6 Mb when running in non-HA mode, meaning a single replica per system component.
When running in a highly available production setup, the Dapr control plane consumes ~0.02 vCPU and 185 Mb.
| Component | vCPU | Memory

View File

@ -60,7 +60,7 @@ To rotate the configured token in self-hosted, update the `DAPR_API_TOKEN` envir
### Kubernetes
To rotate the configured token in Kubernates, update the previously-created secret with the new token in each namespace. You can do that using `kubectl patch` command, but a simpler way to update these in each namespace is by using a manifest:
To rotate the configured token in Kubernetes, update the previously-created secret with the new token in each namespace. You can do that using `kubectl patch` command, but a simpler way to update these in each namespace is by using a manifest:
```yaml
apiVersion: v1

View File

@ -61,7 +61,7 @@ To rotate the configured token in self-hosted, update the `APP_API_TOKEN` enviro
### Kubernetes
To rotate the configured token in Kubernates, update the previously-created secret with the new token in each namespace. You can do that using `kubectl patch` command, but a simpler way to update these in each namespace is by using a manifest:
To rotate the configured token in Kubernetes, update the previously-created secret with the new token in each namespace. You can do that using `kubectl patch` command, but a simpler way to update these in each namespace is by using a manifest:
```yaml
apiVersion: v1

View File

@ -486,7 +486,7 @@ By default, system services will look for the credentials in `/var/run/dapr/cred
*Note: If you signed the cert root with a different private key, restart the Dapr instances.*
## Community call video on certificate rotation
Watch this [video](https://www.youtube.com/watch?v=Hkcx9kBDrAc&feature=youtu.be&t=1400) on how to perform certificate rotation if your certicates are expiring.
Watch this [video](https://www.youtube.com/watch?v=Hkcx9kBDrAc&feature=youtu.be&t=1400) on how to perform certificate rotation if your certificates are expiring.
<div class="embed-responsive embed-responsive-16by9">
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/Hkcx9kBDrAc?start=1400"></iframe>

View File

@ -12,4 +12,4 @@ The Dapr organization and team makes security a central focus of how we operate
To report a security issue, please privately email the [Dapr Maintainers (dapr@dapr.io)](mailto:dapr@dapr.io?subject=[Security%20Disclosure]:%20ISSUE%20TITLE)
The Dapr maintainers will triage and respond ASAP and then patch and send an annoucement within 30 days.
The Dapr maintainers will triage and respond ASAP and then patch and send an announcement within 30 days.

View File

@ -24,7 +24,7 @@ dapr mtls renew-certificate [flags]
| Name | Environment Variable | Default | Description |
| -------------- | -------------------- | ----------------- | ------------------------------------------- |
| `--help`, `-h` | | | help for renew-certificate
| `--kubernetes`, `-k` | | `false` | supprted platform| |
| `--kubernetes`, `-k` | | `false` | supported platform| |
| `--valid-until` | | 365 days | Validity for newly created certificates |
| `--restart` | | false | Restarts Dapr control plane services (Sentry service, Operator service and Placement server) |
| `--timeout` | | 300 sec | The timeout for the certificate renewal process |

View File

@ -25,7 +25,7 @@ dapr stop [flags]
| -------------------- | -------------------- | ------- | -------------------------------- |
| `--app-id`, `-a` | `APP_ID` | | The application id to be stopped |
| `--help`, `-h` | | | Print this help message |
| `--run-file`, `-f` | | | Stop running multiple applications at once using a Multi-App Run template file. Currently in [alpha]({{< ref "support-preview-features.md" >}}) and only availale in Linux/MacOS |
| `--run-file`, `-f` | | | Stop running multiple applications at once using a Multi-App Run template file. Currently in [alpha]({{< ref "support-preview-features.md" >}}) and only available in Linux/MacOS |
### Examples

View File

@ -28,8 +28,6 @@ spec:
value: "[access-key]"
- name: bucket
value: "[bucket]"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -44,13 +42,12 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `accessKeyID` | Y | Output | Access key ID credential. |
| `accessKey` | Y | Output | Access key credential. |
| `bucket` | Y | Output | Name of the storage bucket. |
| `direction` | N | Output | Direction of the binding. | `"output"`
## Binding support
This component supports **output binding** with the following operations:
- `create`: [Create object](#create-object)
- `create`: [Create object](#create-object)
### Create object

View File

@ -26,8 +26,6 @@ spec:
value: "[accessKey-secret]"
- name: Endpoint
value: "[endpoint]"
- name: direction
value: "output"
```
## Spec metadata fields
@ -37,13 +35,12 @@ spec:
| `AccessKeyID` | Y | Output | Access key ID credential. |
| `AccessKeySecret` | Y | Output | Access key credential secret |
| `Endpoint` | Y | Output | Alicloud SLS endpoint. |
| `direction` | N | Output | Direction of the binding. | `"output"`
## Binding support
This component supports **output binding** with the following operations:
- `create`: [Create object](#create-object)
- `create`: [Create object](#create-object)
### Request format

View File

@ -32,8 +32,6 @@ spec:
value: "[table]"
- name: endpoint
value: "[endpoint]"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -49,13 +47,12 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `accessKey` | Y | Output | Access key credential. |
| `instanceName` | Y | Output | Name of the instance. |
| `tableName` | Y | Output | Name of the table. |
| `direction` | N | Output | Direction of the binding. | `"output"`
## Binding support
This component supports **output binding** with the following operations:
- `create`: [Create object](#create-object)
- `create`: [Create object](#create-object)
### Create object

View File

@ -30,8 +30,6 @@ spec:
secretKeyRef:
name: <SECRET>
key: "<SECRET-KEY-NAME>"
- name: direction
value: "output"
```
## Spec metadata fields
@ -41,14 +39,15 @@ spec:
| `key-id` | Y | Output | The identifier for the private key from the Apple Developer Portal | `"private-key-id`" |
| `team-id` | Y | Output | The identifier for the organization or author from the Apple Developer Portal | `"team-id"` |
| `private-key` | Y | Output| Is a PKCS #8-formatted private key. It is intended that the private key is stored in the secret store and not exposed directly in the configuration. See [here](#private-key) for more details | `"pem file"` |
| `direction` | N | Output| The direction of the binding. | `"output"` |
### Private key
The APNS binding needs a cryptographic private key in order to generate authentication tokens for the APNS service.
The private key can be generated from the Apple Developer Portal and is provided as a PKCS #8 file with the private key stored in PEM format.
The private key should be stored in the Dapr secret store and not stored directly in the binding's configuration file.
A sample configuration file for the APNS binding is shown below:
```yaml
apiVersion: dapr.io/v1alpha1
kind: Component
@ -68,7 +67,9 @@ spec:
name: apns-secrets
key: private-key
```
If using Kubernetes, a sample secret configuration may look like this:
```yaml
apiVersion: v1
kind: Secret

View File

@ -33,8 +33,6 @@ spec:
# value: <integer>
# - name: publicAccessLevel
# value: <publicAccessLevel>
# - name: direction
# value: "output"
```
{{% alert title="Warning" color="warning" %}}
The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets as described [here]({{< ref component-secrets.md >}}).
@ -51,7 +49,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `decodeBase64` | N | Output | Configuration to decode base64 file content before saving to Blob Storage. (In case of saving a file with binary content). Defaults to `false` | `true`, `false` |
| `getBlobRetryCount` | N | Output | Specifies the maximum number of HTTP GET requests that will be made while reading from a RetryReader Defaults to `10` | `1`, `2`
| `publicAccessLevel` | N | Output | Specifies whether data in the container may be accessed publicly and the level of access (only used if the container is created by Dapr). Defaults to `none` | `blob`, `container`, `none`
| `direction` | N | Output | The direction of the binding. | `"output"`
### Azure Active Directory (AAD) authentication

View File

@ -46,9 +46,6 @@ spec:
# URL of the Worker (required if the Worker has been pre-created outside of Dapr)
- name: workerUrl
value: ""
# Direction of the binding
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -64,7 +61,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `cfAccountID` | Y/N | Output | Cloudflare account ID. Required to have Dapr manage the worker. | `"456789abcdef8b5588f3d134f74ac"def`
| `cfAPIToken` | Y/N | Output | API token for Cloudflare. Required to have Dapr manage the Worker. | `"secret-key"`
| `workerUrl` | Y/N | Output | URL of the Worker. Required if the Worker has been pre-provisioned outside of Dapr. | `"https://mydaprqueue.mydomain.workers.dev"`
| `direction` | N | Output | Direction of the binding. | `"output"`
> When you configure Dapr to create your Worker for you, you may need to set a longer value for the `initTimeout` property of the component, to allow enough time for the Worker script to be deployed. For example: `initTimeout: "120s"`

View File

@ -11,8 +11,6 @@ aliases:
To setup commercetools GraphQL binding create a component of type `bindings.commercetools`. See [this guide]({{< ref "howto-bindings.md#1-create-a-binding" >}}) on how to create and apply a binding configuration.
```yaml
apiVersion: dapr.io/v1alpha1
kind: Component
@ -34,9 +32,8 @@ spec:
value: "*****************"
- name: scopes # required.
value: "<project-scopes>"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets as described [here]({{< ref component-secrets.md >}}).
{{% /alert %}}
@ -51,7 +48,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `clientID` | Y | Output | The commercetools client ID for the project | |
| `clientSecret` | Y | Output | The commercetools client secret for the project | |
| `scopes` | Y | Output | The commercetools scopes for the project | `"manage_project:project-key"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
For more information see [commercetools - Creating an API Client](https://docs.commercetools.com/getting-started/create-api-client#create-an-api-client) and [commercetools - Regions](https://docs.commercetools.com/api/general-concepts#regions).
@ -61,7 +57,6 @@ This component supports **output binding** with the following operations:
- `create`
## Related links
- [Basic schema for a Dapr component]({{< ref component-schema >}})

View File

@ -11,7 +11,6 @@ aliases:
To setup Azure Cosmos DB binding create a component of type `bindings.azure.cosmosdb`. See [this guide]({{< ref "howto-bindings.md#1-create-a-binding" >}}) on how to create and apply a binding configuration.
```yaml
apiVersion: dapr.io/v1alpha1
kind: Component
@ -31,8 +30,6 @@ spec:
value: "Orders"
- name: partitionKey
value: "<message>"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -48,7 +45,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `database` | Y | Output | The name of the Cosmos DB database | `"OrderDb"` |
| `collection` | Y | Output | The name of the container inside the database. | `"Orders"` |
| `partitionKey` | Y | Output | The name of the key to extract from the payload (document to be created) that is used as the partition key. This name must match the partition key specified upon creation of the Cosmos DB container. | `"OrderId"`, `"message"` |
| `direction` | N | Output | The direction of the binding. | `"output"` |
For more information see [Azure Cosmos DB resource model](https://docs.microsoft.com/azure/cosmos-db/account-databases-containers-items).

View File

@ -9,7 +9,6 @@ description: "Detailed documentation on the Azure Cosmos DB (Gremlin API) bindin
To setup an Azure Cosmos DB (Gremlin API) binding create a component of type `bindings.azure.cosmosdb.gremlinapi`. See [this guide]({{< ref "howto-bindings.md#1-create-a-binding" >}}) on how to create and apply a binding configuration.
```yaml
apiVersion: dapr.io/v1alpha1
kind: Component
@ -25,8 +24,6 @@ spec:
value: "*****"
- name: username
value: "*****"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -40,7 +37,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `url` | Y | Output | The Cosmos DB url for Gremlin APIs | `"wss://******.gremlin.cosmos.azure.com:443/"` |
| `masterKey` | Y | Output | The Cosmos DB account master key | `"masterKey"` |
| `username` | Y | Output | The username of the Cosmos DB database | `"/dbs/<database_name>/colls/<graph_name>"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
For more information see [Quickstart: Azure Cosmos Graph DB using Gremlin](https://docs.microsoft.com/azure/cosmos-db/graph/create-graph-console).

View File

@ -32,8 +32,6 @@ spec:
value: "*****************"
- name: sessionToken
value: "*****************"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -49,7 +47,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `accessKey` | Y | Output | The AWS Access Key to access this resource | `"key"` |
| `secretKey` | Y | Output | The AWS Secret Access Key to access this resource | `"secretAccessKey"` |
| `sessionToken` | N | Output | The AWS session token to use | `"sessionToken"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
{{% alert title="Important" color="warning" %}}
When running the Dapr sidecar (daprd) with your application on EKS (AWS Kubernetes), if you're using a node/pod that has already been attached to an IAM policy defining access to AWS resources, you **must not** provide AWS access-key, secret-key, and tokens in the definition of the component spec you're using.

View File

@ -47,8 +47,6 @@ spec:
value: "<bool>"
- name: encodeBase64
value: "<bool>"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -72,7 +70,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `client_x509_cert_url` | Y | Output | GCP credentials project x509 cert url | `https://www.googleapis.com/robot/v1/metadata/x509/<PROJECT_NAME>.iam.gserviceaccount.com`
| `decodeBase64` | N | Output | Configuration to decode base64 file content before saving to bucket storage. (In case of saving a file with binary content). `true` is the only allowed positive value. Other positive variations like `"True", "1"` are not acceptable. Defaults to `false` | `true`, `false` |
| `encodeBase64` | N | Output | Configuration to encode base64 file content before return the content. (In case of opening a file with binary content). `true` is the only allowed positive value. Other positive variations like `"True", "1"` are not acceptable. Defaults to `false` | `true`, `false` |
| `direction` | N | Output | The direction of the binding. | `"output"`
## Binding support

View File

@ -27,8 +27,6 @@ spec:
value: "adminkey"
- name: header:Cache-Control
value: "no-cache"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -42,7 +40,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `endpoint` | Y | Output | GraphQL endpoint string See [here](#url-format) for more details | `"http://localhost:4000/graphql/graphql"` |
| `header:[HEADERKEY]` | N | Output | GraphQL header. Specify the header key in the `name`, and the header value in the `value`. | `"no-cache"` (see above) |
| `variable:[VARIABLEKEY]` | N | Output | GraphQL query variable. Specify the variable name in the `name`, and the variable value in the `value`. | `"123"` (see below) |
| `direction` | N | Output | The direction of the binding | `"output"` |
### Endpoint and Header format

View File

@ -40,8 +40,6 @@ spec:
# key: "mytoken"
#- name: securityTokenHeader
# value: "Authorization: Bearer" # OPTIONAL <header name for the security token>
#- name: direction
# value: "output"
```
## Spec metadata fields
@ -56,7 +54,6 @@ spec:
| `MTLSRenegotiation` | N | Output | Type of mTLS renegotiation to be used | `RenegotiateOnceAsClient`
| `securityToken` | N | Output | The value of a token to be added to a HTTP request as a header. Used together with `securityTokenHeader` |
| `securityTokenHeader` | N | Output | The name of the header for `securityToken` on a HTTP request |
| `direction` | N | Output |The direction of the binding | `"output"`
### How to configure mTLS-related fields in metadata

View File

@ -30,8 +30,6 @@ spec:
# optional fields
- name: region
value: "<your-bucket-region>"
- name: direction
value: "<your-binding-direction>"
```
{{% alert title="Warning" color="warning" %}}
@ -47,7 +45,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `accessKey` | Y | Output | The Huawei Access Key (AK) to access this resource | `"************"` |
| `secretKey` | Y | Output | The Huawei Secret Key (SK) to access this resource | `"************"` |
| `region` | N | Output | The specific Huawei region of the bucket | `"cn-north-4"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
## Binding support

View File

@ -29,8 +29,6 @@ spec:
value: "<ORG>"
- name: bucket # Required
value: "<BUCKET>"
- name: direction
value: "<DIRECTION>"
```
{{% alert title="Warning" color="warning" %}}
@ -45,7 +43,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `token` | Y | Output | The authorization token for InfluxDB | `"mytoken"` |
| `org` | Y | Output | The InfluxDB organization | `"myorg"` |
| `bucket` | Y | Output | Bucket name to write to | `"mybucket"` |
| `direction` | N | Output | Direction of the binding | `"output"` |
## Binding support

View File

@ -46,7 +46,7 @@ spec:
- name: maxMessageBytes # Optional.
value: "1024"
- name: version # Optional.
value: "1.0.0"
value: "2.0.0"
- name: direction
value: "input, output"
```

View File

@ -34,13 +34,12 @@ spec:
value: "echo"
- name: version
value: "0.5.0"
- name: direction
value: "output"
```
## Spec metadata fields
The `InvokeRequest.Metadata` for `bindings.kitex` requires the client to fill in four required items when making a call:
- `hostPorts`
- `destService`
- `methodName`
@ -52,8 +51,6 @@ The `InvokeRequest.Metadata` for `bindings.kitex` requires the client to fill in
| `destService` | Y | Output | Service name of the Kitex server (Thrift) | `"echo"` |
| `methodName` | Y | Output | Method name under a specific service name of the Kitex server (Thrift) | `"echo"` |
| `version` | Y | Output | Kitex version | `"0.5.0"` |
| `direction` | N | Output | Direction of the binding | `"output"` |
## Binding support

View File

@ -23,16 +23,13 @@ spec:
metadata:
- name: rootPath
value: "<string>"
- name: direction
value: "<direction>"
```
## Spec metadata fields
| Field | Required | Binding support | Details | Example |
|--------------------|:--------:|--------|---------|---------|
| `rootPath` | Y | Input / Output | The root path anchor to which files can be read / saved | `"/temp/files"` |
| `direction` | N | Input / Output | The direction of the binding | `"output"` |
| `rootPath` | Y | Output | The root path anchor to which files can be read / saved | `"/temp/files"` |
## Binding support
@ -265,6 +262,5 @@ By default the Local Storage output binding auto generates a UUID as the file na
- [Basic schema for a Dapr component]({{< ref component-schema >}})
- [Bindings building block]({{< ref bindings >}})
- [How-To: Trigger application with input binding]({{< ref howto-triggers.md >}})
- [How-To: Use bindings to interface with external resources]({{< ref howto-bindings.md >}})
- [Bindings API reference]({{< ref bindings_api.md >}})

View File

@ -36,8 +36,6 @@ spec:
value: "<CONNECTION_MAX_LIFE_TIME>"
- name: connMaxIdleTime
value: "<CONNECTION_MAX_IDLE_TIME>"
- name: direction
value: "<DIRECTION_OF_BINDING>"
```
{{% alert title="Warning" color="warning" %}}
@ -54,8 +52,7 @@ Note that you can not use secret just for username/password. If you use secret,
| `maxIdleConns` | N | Output | The max idle connections. Integer greater than 0 | `"10"` |
| `maxOpenConns` | N | Output | The max open connections. Integer greater than 0 | `"10"` |
| `connMaxLifetime` | N | Output | The max connection lifetime. Duration string | `"12s"` |
| `connMaxIdleTime` | N | Output | The max connection idel time. Duration string | `"12s"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
| `connMaxIdleTime` | N | Output | The max connection idle time. Duration string | `"12s"` |
### SSL connection
@ -192,6 +189,5 @@ The `close` operation can be used to explicitly close the DB connection and retu
- [Basic schema for a Dapr component]({{< ref component-schema >}})
- [Bindings building block]({{< ref bindings >}})
- [How-To: Trigger application with input binding]({{< ref howto-triggers.md >}})
- [How-To: Use bindings to interface with external resources]({{< ref howto-bindings.md >}})
- [Bindings API reference]({{< ref bindings_api.md >}})

View File

@ -25,8 +25,6 @@ spec:
# Connection string
- name: connectionString
value: "<CONNECTION STRING>"
- name: direction
value: "<DIRECTION_OF_BINDING>"
```
{{% alert title="Warning" color="warning" %}}

View File

@ -30,8 +30,6 @@ spec:
value: "dave@dapr.io" # optional
- name: subject
value: "Hello!" # optional
- name: direction
value: "output" # optional
```
{{% alert title="Warning" color="warning" %}}
The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets as described [here]({{< ref component-secrets.md >}}).
@ -48,7 +46,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `emailCc` | N | Output | If set this specifies the 'cc' email address of the email message | `"me@example.com"` |
| `emailBcc` | N | Output | If set this specifies the 'bcc' email address of the email message | `"me@example.com"` |
| `subject` | N | Output | If set this specifies the subject of the email message | `"me@example.com"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
You can specify any of the optional metadata properties on the output binding request too (e.g. `emailFrom`, `emailTo`, `subject`, etc.)

View File

@ -27,8 +27,6 @@ spec:
value: "**************"
- name: enableTLS
value: "<bool>"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -61,7 +59,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `minIdleConns` | N | Output | Minimum number of idle connections to keep open in order to avoid the performance degradation associated with creating new connections. Defaults to `"0"`. | `"2"`
| `idleCheckFrequency` | N | Output | Frequency of idle checks made by idle connections reaper. Default is `"1m"`. `"-1"` disables idle connections reaper. | `"-1"`
| `idleTimeout` | N | Output | Amount of time after which the client closes idle connections. Should be less than server's timeout. Default is `"5m"`. `"-1"` disables idle timeout check. | `"10m"`
| `direction` | N | Output | Direction of the binding. | `"output"`
## Binding support
@ -226,6 +223,5 @@ The Dapr CLI automatically deploys a local redis instance in self hosted mode as
- [Basic schema for a Dapr component]({{< ref component-schema >}})
- [Bindings building block]({{< ref bindings >}})
- [How-To: Trigger application with input binding]({{< ref howto-triggers.md >}})
- [How-To: Use bindings to interface with external resources]({{< ref howto-bindings.md >}})
- [Bindings API reference]({{< ref bindings_api.md >}})

View File

@ -44,8 +44,6 @@ spec:
value: "<bool>"
- name: insecureSSL
value: "<bool>"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -67,7 +65,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `encodeBase64` | N | Output | Configuration to encode base64 file content before return the content. (In case of opening a file with binary content). `"true"` is the only allowed positive value. Other positive variations like `"True", "1"` are not acceptable. Defaults to `"false"` | `"true"`, `"false"` |
| `disableSSL` | N | Output | Allows to connect to non `https://` endpoints. Defaults to `"false"` | `"true"`, `"false"` |
| `insecureSSL` | N | Output | When connecting to `https://` endpoints, accepts invalid or self-signed certificates. Defaults to `"false"` | `"true"`, `"false"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
{{% alert title="Important" color="warning" %}}
When running the Dapr sidecar (daprd) with your application on EKS (AWS Kubernetes), if you're using a node/pod that has already been attached to an IAM policy defining access to AWS resources, you **must not** provide AWS access-key, secret-key, and tokens in the definition of the component spec you're using.

View File

@ -41,8 +41,6 @@ spec:
value: '{"customer":{"name":"John Smith"}}' # optional
- name: apiKey
value: "YOUR_API_KEY" # required, this is your SendGrid key
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -61,7 +59,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `emailCc` | N | Output | If set this specifies the 'cc' email address of the email message. Only a single email address is allowed. Optional field, see [below](#example-request-payload) | `"me@example.com"` |
| `emailBcc` | N | Output | If set this specifies the 'bcc' email address of the email message. Only a single email address is allowed. Optional field, see [below](#example-request-payload) | `"me@example.com"` |
| `subject` | N | Output | If set this specifies the subject of the email message. Optional field, see [below](#example-request-payload) | `"subject of the email"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
## Binding support

View File

@ -40,8 +40,6 @@ spec:
value: "bcc@example.com"
- name: subject
value: "subject"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -61,7 +59,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `emailCc` | N | Output | If set, this specifies the email address to CC in. See [also](#example-request) | `"me@example.com"` |
| `emailBcc` | N | Output | If set, this specifies email address to BCC in. See [also](#example-request) | `"me@example.com"` |
| `subject` | N | Output | If set, this specifies the subject of the email message. See [also](#example-request) | `"subject of mail"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
{{% alert title="Important" color="warning" %}}
When running the Dapr sidecar (daprd) with your application on EKS (AWS Kubernetes), if you're using a node/pod that has already been attached to an IAM policy defining access to AWS resources, you **must not** provide AWS access-key, secret-key, and tokens in the definition of the component spec you're using.

View File

@ -25,8 +25,6 @@ spec:
value: "Endpoint=https://<your-azure-signalr>.service.signalr.net;AccessKey=<your-access-key>;Version=1.0;"
- name: hub # Optional
value: "<hub name>"
- name: direction
value: "<direction of binding>"
```
{{% alert title="Warning" color="warning" %}}
@ -41,7 +39,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `hub` | N | Output | 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") | `"myhub"` |
| `endpoint` | N | Output | Endpoint of Azure SignalR; required if not included in the `connectionString` or if using Azure AD | `"https://<your-azure-signalr>.service.signalr.net"`
| `accessKey` | N | Output | Access key | `"your-access-key"`
| `direction` | N | Output | The direction of the binding | `"output"`
### Azure Active Directory (Azure AD) authentication

View File

@ -43,8 +43,6 @@ spec:
value: "subject"
- name: priority
value: "[value 1-5]"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -66,7 +64,6 @@ The example configuration shown above, contain a username and password as plain-
| `emailBcc` | N | Output | If set, this specifies email address to BCC in. See [also](#example-request) | `"me@example.com"` |
| `subject` | N | Output | If set, this specifies the subject of the email message. See [also](#example-request) | `"subject of mail"` |
| `priority` | N | Output | If set, this specifies the priority (X-Priority) of the email message, from 1 (lowest) to 5 (highest) (default value: 3). See [also](#example-request) | `"1"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
## Binding support

View File

@ -32,8 +32,6 @@ spec:
value: "*****************"
- name: sessionToken
value: "*****************"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
@ -49,7 +47,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `accessKey` | Y | Output | The AWS Access Key to access this resource | `"key"` |
| `secretKey` | Y | Output | The AWS Secret Access Key to access this resource | `"secretAccessKey"` |
| `sessionToken` | N | Output | The AWS session token to use | `"sessionToken"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
{{% alert title="Important" color="warning" %}}
When running the Dapr sidecar (daprd) with your application on EKS (AWS Kubernetes), if you're using a node/pod that has already been attached to an IAM policy defining access to AWS resources, you **must not** provide AWS access-key, secret-key, and tokens in the definition of the component spec you're using.

View File

@ -11,8 +11,6 @@ aliases:
To setup Twilio SMS binding create a component of type `bindings.twilio.sms`. See [this guide]({{< ref "howto-bindings.md#1-create-a-binding" >}}) on how to create and apply a binding configuration.
```yaml
apiVersion: dapr.io/v1alpha1
kind: Component
@ -30,8 +28,6 @@ spec:
value: "*****************"
- name: authToken # required.
value: "*****************"
- name: direction
value: "output"
```
{{% alert title="Warning" color="warning" %}}
The above example uses secrets as plain strings. It is recommended to use a secret store for the secrets as described [here]({{< ref component-secrets.md >}}).
@ -45,7 +41,6 @@ The above example uses secrets as plain strings. It is recommended to use a secr
| `fromNumber` | Y | Output | The sender phone number | `"222-222-2222"` |
| `accountSid` | Y | Output | The Twilio account SID | `"account sid"` |
| `authToken` | Y | Output | The Twilio auth token | `"auth token"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
## Binding support

View File

@ -71,18 +71,15 @@ spec:
type: bindings.wasm
version: v1
metadata:
- name: url
value: "file://uppercase.wasm"
- name: direction
value: "output"
- name: url
value: "file://uppercase.wasm"
```
## Spec metadata fields
| Field | Details | Required | Example |
|-------|----------------------------------------------------------------|----------|----------------|
| url | The URL of the resource including the Wasm binary to instantiate. The supported schemes include `file://`, `http://`, and `https://`. The path of a `file://` URL is relative to the Dapr process unless it begins with `/`. | true | `file://hello.wasm`, `https://example.com/hello.wasm` |
| `direction` | The direction of the binding | false | `"output"` |
| `url` | The URL of the resource including the Wasm binary to instantiate. The supported schemes include `file://`, `http://`, and `https://`. The path of a `file://` URL is relative to the Dapr process unless it begins with `/`. | true | `file://hello.wasm`, `https://example.com/hello.wasm` |
## Binding support

View File

@ -28,8 +28,6 @@ spec:
value: "true"
- name: caCertificatePath
value: "/path/to/ca-cert"
- name: direction
value: "output"
```
## Spec metadata fields
@ -40,7 +38,6 @@ spec:
| `gatewayKeepAlive` | N | Output | Sets how often keep alive messages should be sent to the gateway. Defaults to 45 seconds | `"45s"` |
| `usePlainTextConnection` | N | Output | Whether to use a plain text connection or not | `"true"`, `"false"` |
| `caCertificatePath` | N | Output | The path to the CA cert | `"/path/to/ca-cert"` |
| `direction` | N | Output | The direction of the binding | `"output"` |
## Binding support

View File

@ -47,10 +47,10 @@ spec:
- name: fetchVariables
value: "productId, productName, productKey"
- name: autocomplete
value: "true"
value: "true"
- name: retryBackOff
value: "30s"
- name: direction
value: "30s"
- name: direction
value: "input"
```

View File

@ -112,7 +112,7 @@ Authenticating with Azure AD is supported with Azure Database for PostgreSQL. Al
3. Create a TRIGGER on configuration table. An example function to create a TRIGGER is as follows:
```sh
CREATE OR REPLACE FUNCTION configuration_event() RETURNS TRIGGER AS $$
CREATE OR REPLACE FUNCTION notify_event() RETURNS TRIGGER AS $$
DECLARE
data json;
notification json;

View File

@ -31,7 +31,7 @@ spec:
value: 403
# `readBody` controls whether the middleware reads the entire request body in-memory and make it
# availble for policy decisions.
# available for policy decisions.
- name: readBody
value: "false"

View File

@ -51,7 +51,7 @@ How to compile this is described later.
| Field | Details | Required | Example |
|-------|----------------------------------------------------------------|----------|----------------|
| url | The URL of the resource including the Wasm binary to instantiate. The supported schemes include `file://`, `http://`, and `https://`. The path of a `file://` URL is relative to the Dapr process unless it begins with `/`. | true | `file://hello.wasm`, `https://example.com/hello.wasm` |
| guestConfig | An optional configuration passed to Wasm guests. Users can pass an arbitrary string to be parsed by the guest code. | false | `enviroment=production`,`{"environment":"production"}` |
| guestConfig | An optional configuration passed to Wasm guests. Users can pass an arbitrary string to be parsed by the guest code. | false | `environment=production`,`{"environment":"production"}` |
## Dapr configuration

View File

@ -46,7 +46,7 @@ spec:
- name: consumeRetryInterval # Optional.
value: 200ms
- name: version # Optional.
value: 0.10.2.0
value: 2.0.0
- name: disableTls # Optional. Disable TLS. This is not safe for production!! You should read the `Mutual TLS` section for how to use TLS.
value: "true"
```

View File

@ -83,7 +83,7 @@ The above example uses secrets as plain strings. It is recommended to use [a sec
| secretKey | Y | Secret for the AWS user/role. If using an `AssumeRole` access, you will also need to provide a `sessionToken` |`"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"`
| region | Y | The AWS region where the SNS/SQS assets are located or be created in. See [this page](https://aws.amazon.com/about-aws/global-infrastructure/regional-product-services/?p=ugi&l=na) for valid regions. Ensure that SNS and SQS are available in that region | `"us-east-1"`
| consumerID | N | Consumer ID (consumer tag) organizes one or more consumers into a group. Consumers with the same consumer ID work as one virtual consumer; for example, a message is processed only once by one of the consumers in the group. If the `consumerID` is not provided, the Dapr runtime set it to the Dapr application ID (`appID`) value. See the [pub/sub broker component file]({{< ref setup-pubsub.md >}}) to learn how ConsumerID is automatically generated. | `"channel1"`
| endpoint | N | AWS endpoint for the component to use. Only used for local development with, for example, [localstack](https://github.com/localstack/localstack). The `endpoint` is unncessary when running against production AWS | `"http://localhost:4566"`
| endpoint | N | AWS endpoint for the component to use. Only used for local development with, for example, [localstack](https://github.com/localstack/localstack). The `endpoint` is unnecessary when running against production AWS | `"http://localhost:4566"`
| sessionToken | N | AWS session token to use. A session token is only required if you are using temporary security credentials | `"TOKEN"`
| messageReceiveLimit | N | Number of times a message is received, after processing of that message fails, that once reached, results in removing of that message from the queue. If `sqsDeadLettersQueueName` is specified, `messageReceiveLimit` is the number of times a message is received, after processing of that message fails, that once reached, results in moving of the message to the SQS dead-letters queue. Default: `10` | `10`
| sqsDeadLettersQueueName | N | Name of the dead letters queue for this application | `"myapp-dlq"`

View File

@ -41,7 +41,7 @@ spec:
For security reasons, this component cannot be used to access these environment variables:
- `APP_API_TOKEN`
- Any variable whose name begines with the `DAPR_` prefix
- Any variable whose name begins with the `DAPR_` prefix
## Related Links
- [Secrets building block]({{< ref secrets >}})