From 36bb4e5c012e89e9b5037bc2f5736d7d30e5cc8d Mon Sep 17 00:00:00 2001 From: Will Date: Thu, 14 Oct 2021 14:03:34 -0700 Subject: [PATCH] upmerge v1.4 into v1.5 (#1851) * Closing issue #1410 * Update setup-sqlserver.md Incorporating feedback * Adding DaprCon card at top of main page * Close i tag * Bump runtime version references to 1.4.3 and supported versions table * Fixing closing b tag * Address PR review comments * Corrected upgrade paths * Update kubectl links * Update supported versions table Co-authored-by: Donovan Brown Co-authored-by: Ori Zohar Co-authored-by: Nick Greenfield --- daprdocs/content/en/_index.md | 16 ++++++++++++++++ .../hosting/kubernetes/cluster/setup-aks.md | 2 +- .../hosting/kubernetes/cluster/setup-gke.md | 2 +- .../kubernetes/cluster/setup-minikube.md | 2 +- .../hosting/kubernetes/kubernetes-deploy.md | 2 +- .../en/operations/monitoring/logging/fluentd.md | 2 +- .../monitoring/metrics/azure-monitor.md | 2 +- .../operations/monitoring/metrics/prometheus.md | 2 +- .../support/support-release-policy.md | 16 +++++++++------- .../supported-state-stores/setup-sqlserver.md | 8 ++++---- .../layouts/shortcodes/dapr-latest-version.html | 2 +- daprdocs/static/images/daprcon.png | Bin 0 -> 28556 bytes 12 files changed, 37 insertions(+), 19 deletions(-) create mode 100644 daprdocs/static/images/daprcon.png diff --git a/daprdocs/content/en/_index.md b/daprdocs/content/en/_index.md index 5243416f2..6ca2cff4c 100644 --- a/daprdocs/content/en/_index.md +++ b/daprdocs/content/en/_index.md @@ -3,6 +3,22 @@ type: docs no_list: true --- +
+
+
+
+ DaprCon logo + Join us for DaprCon on October 19th-20th, 2021! +
+

+ The first ever DaprCon will take place October 19th-20th, 2021 virtually! Tune in for free and attend technical sessions, panels and real world examples from the community on building applications with Dapr!

Learn more >> +

+ +
+
+
+ +

# Dapr Docs Welcome to the Dapr documentation site! diff --git a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-aks.md b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-aks.md index 905ef73b7..0323ba208 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-aks.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-aks.md @@ -12,7 +12,7 @@ description: > ## Prerequisites - [Docker](https://docs.docker.com/install/) -- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kubectl](https://kubernetes.io/docs/tasks/tools/) - [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest) ## Deploy an Azure Kubernetes Service cluster diff --git a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md index 5a7b7607c..53d278669 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-gke.md @@ -8,7 +8,7 @@ description: "Setup a Google Kubernetes Engine cluster" ### Prerequisites -- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kubectl](https://kubernetes.io/docs/tasks/tools/) - [Google Cloud SDK](https://cloud.google.com/sdk) ## Create a new cluster diff --git a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md index ef1d0110d..09762c9fd 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/cluster/setup-minikube.md @@ -12,7 +12,7 @@ description: > ## Prerequisites - [Docker](https://docs.docker.com/install/) -- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kubectl](https://kubernetes.io/docs/tasks/tools/) - [Minikube](https://minikube.sigs.k8s.io/docs/start/) > Note: For Windows, enable Virtualization in BIOS and [install Hyper-V](https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v) diff --git a/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-deploy.md b/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-deploy.md index afa7a238a..81b62d716 100644 --- a/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-deploy.md +++ b/daprdocs/content/en/operations/hosting/kubernetes/kubernetes-deploy.md @@ -15,7 +15,7 @@ For more information on what is deployed to your Kubernetes cluster read the [Ku ## Prerequisites - Install [Dapr CLI]({{< ref install-dapr-cli.md >}}) -- Install [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- Install [kubectl](https://kubernetes.io/docs/tasks/tools/) - Kubernetes cluster (see below if needed) ### Create cluster diff --git a/daprdocs/content/en/operations/monitoring/logging/fluentd.md b/daprdocs/content/en/operations/monitoring/logging/fluentd.md index 0c15c1584..fd0758418 100644 --- a/daprdocs/content/en/operations/monitoring/logging/fluentd.md +++ b/daprdocs/content/en/operations/monitoring/logging/fluentd.md @@ -9,7 +9,7 @@ description: "How to install Fluentd, Elastic Search, and Kibana to search logs ## Prerequisites - Kubernetes (> 1.14) -- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kubectl](https://kubernetes.io/docs/tasks/tools/) - [Helm 3](https://helm.sh/) ## Install Elastic search and Kibana diff --git a/daprdocs/content/en/operations/monitoring/metrics/azure-monitor.md b/daprdocs/content/en/operations/monitoring/metrics/azure-monitor.md index 852716e76..c253d4f42 100644 --- a/daprdocs/content/en/operations/monitoring/metrics/azure-monitor.md +++ b/daprdocs/content/en/operations/monitoring/metrics/azure-monitor.md @@ -10,7 +10,7 @@ description: "Enable Dapr metrics and logs with Azure Monitor for Azure Kubernet - [Azure Kubernetes Service](https://docs.microsoft.com/en-us/azure/aks/) - [Enable Azure Monitor For containers in AKS](https://docs.microsoft.com/en-us/azure/azure-monitor/insights/container-insights-overview) -- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kubectl](https://kubernetes.io/docs/tasks/tools/) - [Helm 3](https://helm.sh/) ## Enable Prometheus metric scrape using config map diff --git a/daprdocs/content/en/operations/monitoring/metrics/prometheus.md b/daprdocs/content/en/operations/monitoring/metrics/prometheus.md index b81f1f539..b179b75a0 100644 --- a/daprdocs/content/en/operations/monitoring/metrics/prometheus.md +++ b/daprdocs/content/en/operations/monitoring/metrics/prometheus.md @@ -67,7 +67,7 @@ Once Prometheus is running, you'll be able to visit its dashboard by visiting `h ### Prerequisites - Kubernetes (> 1.14) -- [kubectl](https://kubernetes.io/docs/tasks/tools/install-kubectl/) +- [kubectl](https://kubernetes.io/docs/tasks/tools/) - [Helm 3](https://helm.sh/) ### Install Prometheus diff --git a/daprdocs/content/en/operations/support/support-release-policy.md b/daprdocs/content/en/operations/support/support-release-policy.md index 5ec7285f2..a07e40e4e 100644 --- a/daprdocs/content/en/operations/support/support-release-policy.md +++ b/daprdocs/content/en/operations/support/support-release-policy.md @@ -42,7 +42,9 @@ The table below shows the versions of Dapr releases that have been tested togeth | 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 | -| 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) | +| 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 +| Sep 24th 2021 | 1.4.2
| 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 | +| Oct 7th 2021 | 1.4.3
| 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 @@ -56,16 +58,16 @@ General guidance on upgrading can be found for [self hosted mode]({{ # Required. - name: tableName - value: # Required. + value: # Optional. defaults to "state" - name: keyType value: # Optional. defaults to "string" - name: keyLength @@ -52,8 +52,8 @@ If you wish to use SQL server as an [actor state store]({{< ref "state_api.md#co | Field | Required | Details | Example | |--------------------|:--------:|---------|---------| -| connectionString | Y | The connection string used to connect | `"Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;Password=myPassword;"` -| tableName | Y | The name of the table to use. Alpha-numeric with underscores | `"table_name"` +| connectionString | Y | The connection string used to connect. If the connection string contains the database it must already exist. If the database is omitted a default database named `"Dapr"` is created. | `"Server=myServerName\myInstanceName;Database=myDataBase;User Id=myUsername;Password=myPassword;"` +| tableName | N | The name of the table to use. Alpha-numeric with underscores. Defaults to `"state"` | `"table_name"` | keyType | N | The type of key used. Defaults to `"string"` | `"string"` | keyLength | N | The max length of key. Used along with `"string"` keytype. Defaults to `"200"` | `"200"` | schema | N | The schema to use. Defaults to `"dbo"` | `"dapr"`,`"dbo"` @@ -69,7 +69,7 @@ If you wish to use SQL server as an [actor state store]({{< ref "state_api.md#co In order to setup SQL Server as a state store, you need the following properties: -- **Connection String**: the SQL Server connection string. For example: server=localhost;user id=sa;password=your-password;port=1433;database=mydatabase; +- **Connection String**: The SQL Server connection string. For example: server=localhost;user id=sa;password=your-password;port=1433;database=mydatabase; - **Schema**: The database schema to use (default=dbo). Will be created if does not exist - **Table Name**: The database table name. Will be created if does not exist - **Indexed Properties**: Optional properties from json data which will be indexed and persisted as individual column diff --git a/daprdocs/layouts/shortcodes/dapr-latest-version.html b/daprdocs/layouts/shortcodes/dapr-latest-version.html index 6f1027f0a..9a456a8b3 100644 --- a/daprdocs/layouts/shortcodes/dapr-latest-version.html +++ b/daprdocs/layouts/shortcodes/dapr-latest-version.html @@ -1 +1 @@ -{{- if .Get "short" }}1.4{{ else if .Get "long" }}1.4.1{{ else if .Get "cli" }}1.4.0{{ else }}1.4.1{{ end -}} +{{- if .Get "short" }}1.4{{ else if .Get "long" }}1.4.3{{ else if .Get "cli" }}1.4.0{{ else }}1.4.3{{ end -}} diff --git a/daprdocs/static/images/daprcon.png b/daprdocs/static/images/daprcon.png new file mode 100644 index 0000000000000000000000000000000000000000..ed0d3882c1825758c5b9ef7da8ff1da4e051163b GIT binary patch literal 28556 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 literal 0 HcmV?d00001