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: + +``` +The above "Secret is a string" case yaml tells Dapr to extract a connection string named `asbNsConnstring` from the defined `secretStore` and assign the value to the `connectionString` field in the component since there is no key embedded in the "secret" from the `secretStore` because it is a plain string. This requires the secret `name` and secret `key` to be identical. ## Example diff --git a/daprdocs/content/en/operations/support/support-release-policy.md b/daprdocs/content/en/operations/support/support-release-policy.md index 3da876cee..5ec7285f2 100644 --- a/daprdocs/content/en/operations/support/support-release-policy.md +++ b/daprdocs/content/en/operations/support/support-release-policy.md @@ -41,7 +41,8 @@ The table below shows the versions of Dapr releases that have been tested togeth | Jun 16th 2021 | 1.2.2
| 1.2.0 | Java 1.1.0
Go 1.1.0
PHP 1.1.0
Python 1.1.0
.NET 1.2.0 | 0.6.0 | Unsupported | | Jul 26th 2021 | 1.3
| 1.3.0 | Java 1.2.0
Go 1.2.0
PHP 1.1.0
Python 1.2.0
.NET 1.3.0 | 0.7.0 | Supported | | Sep 14th 2021 | 1.3.1
| 1.3.0 | Java 1.2.0
Go 1.2.0
PHP 1.1.0
Python 1.2.0
.NET 1.3.0 | 0.7.0 | Supported | -| Sep 15th 2021 | 1.4
| 1.4.0 | Java 1.3.0
Go 1.3.0
PHP 1.2.0
Python 1.3.0
.NET 1.4.0 | 0.8.0 | Supported (current) | +| Sep 15th 2021 | 1.4
| 1.4.0 | Java 1.3.0
Go 1.3.0
PHP 1.2.0
Python 1.3.0
.NET 1.4.0 | 0.8.0 | Supported | +| Sep 22nd 2021 | 1.4.1
| 1.4.0 | Java 1.3.0
Go 1.3.0
PHP 1.2.0
Python 1.3.0
.NET 1.4.0 | 0.8.0 | Supported (current) | ## Upgrade paths After the 1.0 release of the runtime there may be situations where it is necessary to explicitly upgrade through an additional release to reach the desired target. For example an upgrade from v1.0 to v1.2 may need go pass through v1.1 @@ -54,19 +55,17 @@ General guidance on upgrading can be found for [self hosted mode]({{