Skip to content

Commit 510dc69

Browse files
authored
Merge branch 'v1.15' into patch-1
2 parents 4ac7b95 + 52f4c15 commit 510dc69

File tree

12 files changed

+92
-46
lines changed

12 files changed

+92
-46
lines changed

daprdocs/content/en/developing-applications/building-blocks/actors/actors-runtime-config.md

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -195,12 +195,8 @@ func configHandler(w http.ResponseWriter, r *http.Request) {
195195

196196
{{< /tabs >}}
197197

198-
## Next steps
199-
200-
{{< button text="Enable actor reminder partitioning >>" page="howto-actors-partitioning.md" >}}
201-
202198
## Related links
203199

204200
- Refer to the [Dapr SDK documentation and examples]({{< ref "developing-applications/sdks/#sdk-languages" >}}).
205201
- [Actors API reference]({{< ref actors_api.md >}})
206-
- [Actors overview]({{< ref actors-overview.md >}})
202+
- [Actors overview]({{< ref actors-overview.md >}})

daprdocs/content/en/developing-applications/building-blocks/actors/howto-actors-partitioning.md

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,13 @@ aliases:
88
- "/developing-applications/building-blocks/actors/actors-background"
99
---
1010

11+
{{% alert title="Warning" color="warning" %}}
12+
This feature is only relevant when using state store actor reminders, no longer enabled by default.
13+
As of v1.15, Dapr uses the far more performant [Scheduler Actor Reminders]({{< ref "scheduler.md#actor-reminders" >}}) by default.
14+
This page is only relevant if you are using the legacy state store actor reminders, enabled via setting the [`SchedulerReminders` feature flag]({{< ref "support-preview-features.md#current-preview-features" >}}) to false.
15+
It is highly recommended you use using the Scheduler Actor Reminders feature.
16+
{{% /alert %}}
17+
1118
[Actor reminders]({{< ref "actors-timers-reminders.md#actor-reminders" >}}) are persisted and continue to be triggered after sidecar restarts. Applications with multiple reminders registered can experience the following issues:
1219

1320
- Low throughput on reminders registration and de-registration
@@ -193,4 +200,4 @@ Watch [this video for a demo of actor reminder partitioning](https://youtu.be/Zw
193200
## Related links
194201

195202
- [Actors API reference]({{< ref actors_api.md >}})
196-
- [Actors overview]({{< ref actors-overview.md >}})
203+
- [Actors overview]({{< ref actors-overview.md >}})

daprdocs/content/en/developing-applications/building-blocks/workflow/howto-manage-workflow.md

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -138,31 +138,29 @@ Manage your workflow within your code. In the `OrderProcessingWorkflow` example
138138

139139
```csharp
140140
string orderId = "exampleOrderId";
141-
string workflowComponent = "dapr";
142-
string workflowName = "OrderProcessingWorkflow";
143141
OrderPayload input = new OrderPayload("Paperclips", 99.95);
144142
Dictionary<string, string> workflowOptions; // This is an optional parameter
145143
146-
// Start the workflow. This returns back a "StartWorkflowResponse" which contains the instance ID for the particular workflow instance.
147-
StartWorkflowResponse startResponse = await daprClient.StartWorkflowAsync(orderId, workflowComponent, workflowName, input, workflowOptions);
144+
// Start the workflow using the orderId as our workflow ID. This returns a string containing the instance ID for the particular workflow instance, whether we provide it ourselves or not.
145+
await daprWorkflowClient.ScheduleNewWorkflowAsync(nameof(OrderProcessingWorkflow), orderId, input, workflowOptions);
148146

149147
// Get information on the workflow. This response contains information such as the status of the workflow, when it started, and more!
150-
GetWorkflowResponse getResponse = await daprClient.GetWorkflowAsync(orderId, workflowComponent, eventName);
148+
WorkflowState currentState = await daprWorkflowClient.GetWorkflowStateAsync(orderId, orderId);
151149

152150
// Terminate the workflow
153-
await daprClient.TerminateWorkflowAsync(orderId, workflowComponent);
151+
await daprWorkflowClient.TerminateWorkflowAsync(orderId);
154152

155-
// Raise an event (an incoming purchase order) that your workflow will wait for. This returns the item waiting to be purchased.
156-
await daprClient.RaiseWorkflowEventAsync(orderId, workflowComponent, workflowName, input);
153+
// Raise an event (an incoming purchase order) that your workflow will wait for
154+
await daprWorkflowClient.RaiseEventAsync(orderId, "incoming-purchase-order", input);
157155

158156
// Pause
159-
await daprClient.PauseWorkflowAsync(orderId, workflowComponent);
157+
await daprWorkflowClient.SuspendWorkflowAsync(orderId);
160158

161159
// Resume
162-
await daprClient.ResumeWorkflowAsync(orderId, workflowComponent);
160+
await daprWorkflowClient.ResumeWorkflowAsync(orderId);
163161

164162
// Purge the workflow, removing all inbox and history information from associated instance
165-
await daprClient.PurgeWorkflowAsync(orderId, workflowComponent);
163+
await daprWorkflowClient.PurgeInstanceAsync(orderId);
166164
```
167165

168166
{{% /codetab %}}

daprdocs/content/en/operations/configuration/api-allowlist.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,7 @@ See this list of values corresponding to the different Dapr APIs:
128128
| [Distributed Lock]({{< ref distributed_lock_api.md >}}) | `lock` (`v1.0-alpha1`)<br/>`unlock` (`v1.0-alpha1`) | `lock` (`v1alpha1`)<br/>`unlock` (`v1alpha1`) |
129129
| [Cryptography]({{< ref cryptography_api.md >}}) | `crypto` (`v1.0-alpha1`) | `crypto` (`v1alpha1`) |
130130
| [Workflow]({{< ref workflow_api.md >}}) | `workflows` (`v1.0`) |`workflows` (`v1`) |
131+
| [Conversation]({{< ref conversation_api.md >}}) | `conversation` (`v1.0-alpha1`) | `conversation` (`v1alpha1`) |
131132
| [Health]({{< ref health_api.md >}}) | `healthz` (`v1.0`) | n/a |
132133
| Shutdown | `shutdown` (`v1.0`) | `shutdown` (`v1`) |
133134

daprdocs/content/en/operations/hosting/kubernetes/kubernetes-persisting-scheduler.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ This means that there is no additional parameter required to run the scheduler s
1212

1313
{{% alert title="Warning" color="warning" %}}
1414
The default storage size for the Scheduler is `1Gi`, which is likely not sufficient for most production deployments.
15-
Remember that the Scheduler is used for [Actor Reminders]({{< ref actors-timers-reminders.md >}}) & [Workflows]({{< ref workflow-overview.md >}}) when the [SchedulerReminders]({{< ref support-preview-features.md >}}) preview feature is enabled, and the [Jobs API]({{< ref jobs_api.md >}}).
15+
Remember that the Scheduler is used for [Actor Reminders]({{< ref actors-timers-reminders.md >}}) & [Workflows]({{< ref workflow-overview.md >}}), and the [Jobs API]({{< ref jobs_api.md >}}).
1616
You may want to consider reinstalling Dapr with a larger Scheduler storage of at least `16Gi` or more.
1717
For more information, see the [ETCD Storage Disk Size](#etcd-storage-disk-size) section below.
1818
{{% /alert %}}
@@ -30,8 +30,8 @@ error running scheduler: etcdserver: mvcc: database space exceeded
3030
```
3131

3232
Knowing the safe upper bound for your storage size is not an exact science, and relies heavily on the number, persistence, and the data payload size of your application jobs.
33-
The [Job API]({{< ref jobs_api.md >}}) and [Actor Reminders]({{< ref actors-timers-reminders.md >}}) (with the [SchedulerReminders]({{< ref support-preview-features.md >}}) preview feature enabled) transparently maps one to one to the usage of your applications.
34-
Workflows (when the [SchedulerReminders]({{< ref support-preview-features.md >}}) preview feature is enabled) create a large number of jobs as Actor Reminders, however these jobs are short lived- matching the lifecycle of each workflow execution.
33+
The [Job API]({{< ref jobs_api.md >}}) and [Actor Reminders]({{< ref actors-timers-reminders.md >}}) transparently maps one to one to the usage of your applications.
34+
Workflows create a large number of jobs as Actor Reminders, however these jobs are short lived- matching the lifecycle of each workflow execution.
3535
The data payload of jobs created by Workflows is typically empty or small.
3636

3737
The Scheduler uses Etcd as its storage backend database.

daprdocs/content/en/operations/hosting/kubernetes/kubernetes-production.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ For a new Dapr deployment, HA mode can be set with both:
9393
- The [Dapr CLI]({{< ref "kubernetes-deploy.md#install-in-highly-available-mode" >}}), and
9494
- [Helm charts]({{< ref "kubernetes-deploy.md#add-and-install-dapr-helm-chart" >}})
9595

96-
For an existing Dapr deployment, [you can enable HA mode in a few extra steps]({{< ref "#enabling-high-availability-in-an-existing-dapr-deployment" >}}).
96+
For an existing Dapr deployment, [you can enable HA mode in a few extra steps]({{< ref "#enable-high-availability-in-an-existing-dapr-deployment" >}}).
9797

9898
### Individual service HA Helm configuration
9999

@@ -353,4 +353,4 @@ Watch this video for a deep dive into the best practices for running Dapr in pro
353353
## Related links
354354

355355
- [Deploy Dapr on Kubernetes]({{< ref kubernetes-deploy.md >}})
356-
- [Upgrade Dapr on Kubernetes]({{< ref kubernetes-upgrade.md >}})
356+
- [Upgrade Dapr on Kubernetes]({{< ref kubernetes-upgrade.md >}})

daprdocs/content/en/reference/api/conversation_api.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ POST http://localhost:<daprPort>/v1.0-alpha1/conversation/<llm-name>/converse
3232
| --------- | ----------- |
3333
| `inputs` | Inputs for the conversation. Multiple inputs at one time are supported. Required |
3434
| `cacheTTL` | A time-to-live value for a prompt cache to expire. Uses Golang duration format. Optional |
35-
| `scrubPII` | A boolean value to enable obfuscation of sensitive information returning from the LLM. Optional |
35+
| `scrubPII` | A boolean value to enable obfuscation of sensitive information returning from the LLM. Set this value if all PII (across contents) in the request needs to be scrubbed. Optional |
3636
| `temperature` | A float value to control the temperature of the model. Used to optimize for consistency and creativity. Optional |
3737
| `metadata` | [Metadata](#metadata) passed to conversation components. Optional |
3838

@@ -42,7 +42,7 @@ POST http://localhost:<daprPort>/v1.0-alpha1/conversation/<llm-name>/converse
4242
| --------- | ----------- |
4343
| `content` | The message content to send to the LLM. Required |
4444
| `role` | The role for the LLM to assume. Possible values: 'user', 'tool', 'assistant' |
45-
| `scrubPII` | A boolean value to enable obfuscation of sensitive information present in the content field. Optional |
45+
| `scrubPII` | A boolean value to enable obfuscation of sensitive information present in the content field. Set this value if PII for this specific content needs to be scrubbed exclusively. Optional |
4646

4747
### Request content example
4848

@@ -89,4 +89,4 @@ RESPONSE = {
8989
## Next steps
9090

9191
- [Conversation API overview]({{< ref conversation-overview.md >}})
92-
- [Supported conversation components]({{< ref supported-conversation >}})
92+
- [Supported conversation components]({{< ref supported-conversation >}})

daprdocs/content/en/reference/components-reference/supported-bindings/gcpbucket.md

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -58,19 +58,24 @@ The above example uses secrets as plain strings. It is recommended to use a secr
5858
| Field | Required | Binding support | Details | Example |
5959
|--------------------|:--------:|------------|-----|---------|
6060
| `bucket` | Y | Output | The bucket name | `"mybucket"` |
61-
| `type` | Y | Output | Tge GCP credentials type | `"service_account"` |
62-
| `project_id` | Y | Output | GCP project id| `projectId`
63-
| `private_key_id` | Y | Output | GCP private key id | `"privateKeyId"`
64-
| `private_key` | Y | Output | GCP credentials private key. Replace with x509 cert | `12345-12345`
65-
| `client_email` | Y | Output | GCP client email | `"[email protected]"`
66-
| `client_id` | Y | Output | GCP client id | `0123456789-0123456789`
67-
| `auth_uri` | Y | Output | Google account OAuth endpoint | `https://accounts.google.com/o/oauth2/auth`
68-
| `token_uri` | Y | Output | Google account token uri | `https://oauth2.googleapis.com/token`
69-
| `auth_provider_x509_cert_url` | Y | Output | GCP credentials cert url | `https://www.googleapis.com/oauth2/v1/certs`
70-
| `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`
61+
| `project_id` | Y | Output | GCP project ID | `projectId` |
62+
| `type` | N | Output | The GCP credentials type | `"service_account"` |
63+
| `private_key_id` | N | Output | If using explicit credentials, this field should contain the `private_key_id` field from the service account json document | `"privateKeyId"` |
64+
| `private_key` | N | Output | If using explicit credentials, this field should contain the `private_key` field from the service account json. Replace with x509 cert | `12345-12345` |
65+
| `client_email` | N | Output | If using explicit credentials, this field should contain the `client_email` field from the service account json | `"[email protected]"` |
66+
| `client_id` | N | Output | If using explicit credentials, this field should contain the `client_id` field from the service account json | `0123456789-0123456789` |
67+
| `auth_uri` | N | Output | If using explicit credentials, this field should contain the `auth_uri` field from the service account json | `https://accounts.google.com/o/oauth2/auth` |
68+
| `token_uri` | N | Output | If using explicit credentials, this field should contain the `token_uri` field from the service account json | `https://oauth2.googleapis.com/token`|
69+
| `auth_provider_x509_cert_url` | N | Output | If using explicit credentials, this field should contain the `auth_provider_x509_cert_url` field from the service account json | `https://www.googleapis.com/oauth2/v1/certs`|
70+
| `client_x509_cert_url` | N | Output | If using explicit credentials, this field should contain the `client_x509_cert_url` field from the service account json | `https://www.googleapis.com/robot/v1/metadata/x509/<PROJECT_NAME>.iam.gserviceaccount.com`|
7171
| `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` |
7272
| `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` |
7373

74+
## GCP Credentials
75+
76+
Since the GCP Storage Bucket component uses the GCP Go Client Libraries, by default it authenticates using **Application Default Credentials**. This is explained further in the [Authenticate to GCP Cloud services using client libraries](https://cloud.google.com/docs/authentication/client-libraries) guide.
77+
Also, see how to [Set up Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc).
78+
7479
## Binding support
7580

7681
This component supports **output binding** with the following operations:
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
type: docs
3+
title: "Local Testing"
4+
linkTitle: "Echo"
5+
description: Detailed information on the echo conversation component used for local testing
6+
---
7+
8+
## Component format
9+
10+
A Dapr `conversation.yaml` component file has the following structure:
11+
12+
```yaml
13+
apiVersion: dapr.io/v1alpha1
14+
kind: Component
15+
metadata:
16+
name: echo
17+
spec:
18+
type: conversation.echo
19+
version: v1
20+
```
21+
22+
{{% alert title="Information" color="warning" %}}
23+
This component is only meant for local validation and testing of a Conversation component implementation. It does not actually send the data to any LLM but rather echos the input back directly.
24+
{{% /alert %}}
25+
26+
## Related links
27+
28+
- [Conversation API overview]({{< ref conversation-overview.md >}})

daprdocs/content/en/reference/components-reference/supported-pubsub/setup-gcp-pubsub.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ The above example uses secrets as plain strings. It is recommended to use a secr
7676
7777
| Field | Required | Details | Example |
7878
|--------------------|:--------:|---------|---------|
79-
| projectId | Y | GCP project id| `myproject-123`
79+
| projectId | Y | GCP project ID | `myproject-123`
8080
| endpoint | N | GCP endpoint for the component to use. Only used for local development (for example) with [GCP Pub/Sub Emulator](https://cloud.google.com/pubsub/docs/emulator). The `endpoint` is unnecessary when running against the GCP production API. | `"http://localhost:8085"`
8181
| `consumerID` | N | The Consumer ID 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. The `consumerID`, along with the `topic` provided as part of the request, are used to build the Pub/Sub subscription ID | Can be set to string value (such as `"channel1"`) or string format value (such as `"{podName}"`, etc.). [See all of template tags you can use in your component metadata.]({{< ref "component-schema.md#templated-metadata-values" >}})
8282
| identityProjectId | N | If the GCP pubsub project is different from the identity project, specify the identity project using this attribute | `"myproject-123"`

0 commit comments

Comments
 (0)