diff --git a/.gitmodules b/.gitmodules index 440638c4e..6f4e986fb 100644 --- a/.gitmodules +++ b/.gitmodules @@ -20,3 +20,6 @@ [submodule "sdkdocs/java"] path = sdkdocs/java url = https://github.com/dapr/java-sdk.git +[submodule "sdkdocs/js"] + path = sdkdocs/js + url = https://github.com/dapr/js-sdk.git diff --git a/daprdocs/config.toml b/daprdocs/config.toml index 079dcdf62..cde513532 100644 --- a/daprdocs/config.toml +++ b/daprdocs/config.toml @@ -87,6 +87,14 @@ id = "UA-149338238-3" source = "../sdkdocs/java/daprdocs/content/en/java-sdk-contributing" target = "content/contributing/" lang = "en" + [[module.mounts]] + source = "../sdkdocs/js/daprdocs/content/en/js-sdk-docs" + target = "content/developing-applications/sdks/js" + lang = "en" + [[module.mounts]] + source = "../sdkdocs/js/daprdocs/content/en/js-sdk-contributing" + target = "content/contributing/" + lang = "en" [[module.mounts]] source = "../translations/docs-zh/content/zh-hans" diff --git a/daprdocs/content/en/developing-applications/building-blocks/service-invocation/howto-invoke-services-grpc.md b/daprdocs/content/en/developing-applications/building-blocks/service-invocation/howto-invoke-services-grpc.md index a29e83063..8639791a7 100644 --- a/daprdocs/content/en/developing-applications/building-blocks/service-invocation/howto-invoke-services-grpc.md +++ b/daprdocs/content/en/developing-applications/building-blocks/service-invocation/howto-invoke-services-grpc.md @@ -308,3 +308,10 @@ For more information on tracing and logs see the [observability]({{< ref observa * [Service invocation overview]({{< ref service-invocation-overview.md >}}) * [Service invocation API specification]({{< ref service_invocation_api.md >}}) * [gRPC proxying community call video](https://youtu.be/B_vkXqptpXY?t=70) + +## Community call demo +Watch this [video](https://youtu.be/B_vkXqptpXY?t=69) on how to use Dapr's gRPC proxying capability: + +
\ No newline at end of file diff --git a/daprdocs/content/en/getting-started/install-dapr-selfhost.md b/daprdocs/content/en/getting-started/install-dapr-selfhost.md index 984570f35..b9d0e3604 100644 --- a/daprdocs/content/en/getting-started/install-dapr-selfhost.md +++ b/daprdocs/content/en/getting-started/install-dapr-selfhost.md @@ -52,7 +52,7 @@ dapr --version Output should look like this: ``` -CLI version: {{% dapr-latest-version long="true" %}} +CLI version: {{% dapr-latest-version cli="true" %}} Runtime version: {{% dapr-latest-version long="true" %}} ``` diff --git a/daprdocs/content/en/operations/components/component-secrets.md b/daprdocs/content/en/operations/components/component-secrets.md index 872b5eaa6..a1076800c 100644 --- a/daprdocs/content/en/operations/components/component-secrets.md +++ b/daprdocs/content/en/operations/components/component-secrets.md @@ -20,7 +20,7 @@ Go to [this]({{< ref "howto-secrets.md" >}}) link to see all the secret stores s ## Referencing secrets -While you have the option to use plain text secrets, this is not recommended for production: +While you have the option to use plain text secrets (like MyPassword), as shown in the yaml below for the `value` of `redisPassword`, this is not recommended for production: ```yml apiVersion: dapr.io/v1alpha1 @@ -38,7 +38,9 @@ spec: value: MyPassword ``` -Instead create the secret in your secret store and reference it in the component definition: +Instead create the secret in your secret store and reference it in the component definition. There are two cases for this shown below -- the "Secret contains an embedded key" and the "Secret is a string". + +The "Secret contains an embedded key" case applies when there is a key embedded within the secret, i.e. the secret is **not** an entire connection string. This is shown in the following component definition yaml. ```yml apiVersion: dapr.io/v1alpha1 @@ -62,7 +64,30 @@ auth: `SECRET_STORE_NAME` is the name of the configured [secret store component]({{< ref supported-secret-stores >}}). When running in Kubernetes and using a Kubernetes secret store, the field `auth.SecretStore` defaults to `kubernetes` and can be left empty. -The above component definition tells Dapr to extract a secret named `redis-secret` from the defined secret store and assign the value of the `redis-password` key in the secret to the `redisPassword` field in the Component. +The above component definition tells Dapr to extract a secret named `redis-secret` from the defined `secretStore` and assign the value associated with the `redis-password` key embedded in the secret to the `redisPassword` field in the component. One use of this case is when your code is constructing a connection string, for example putting together a URL, a secret, plus other information as necessary, into a string. + +On the other hand, the below "Secret is a string" case applies when there is NOT a key embedded in the secret. Rather, the secret is just a string. Therefore, in the `secretKeyRef` section both the secret `name` and the secret `key` will be identical. This is the case when the secret itself is an entire connection string with no embedded key whose value needs to be extracted. Typically a connection string consists of connection information, some sort of secret to allow connection, plus perhaps other information and does not require a separate "secret". This case is shown in the below component definition yaml. + +```yml +apiVersion: dapr.io/v1alpha1 +kind: Component +metadata: + name: servicec-inputq-azkvsecret-asbqueue +spec: + type: bindings.azure.servicebusqueues + version: v1 + metadata: + -name: connectionString + secretKeyRef: + name: asbNsConnString + key: asbNsConnString + -name: queueName + value: servicec-inputq +auth: +secretStore: