You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-functions/functions-continuous-deployment.md
+39-2Lines changed: 39 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ title: Continuous deployment for Azure Functions
3
3
description: Use the continuous deployment features of Azure App Service when publishing to Azure Functions.
4
4
ms.assetid: 361daf37-598c-4703-8d78-c77dbef91643
5
5
ms.topic: conceptual
6
-
ms.date: 04/01/2024
6
+
ms.date: 04/10/2024
7
7
#Customer intent: As a developer, I want to learn how to set up a continuous integration environment so that function app updates are deployed automatically when I check in my code changes.
8
8
---
9
9
@@ -64,7 +64,9 @@ GitHub Actions is the default build provider for GitHub projects. GitHub Actions
64
64
65
65
### [App Service (Kudu) service](#tab/app-service)
66
66
67
-
The App Service platform maintains a native deployment service ([Project Kudu](https://github.com/projectkudu/kudu/wiki)) to support local Git deployment, some container deployments, and other deployment sources not supported by either Pipelines or GitHub Actions. Remote builds, packaging, and other maintainence tasks are performed in a subdomain of `scm.azurewebsites.net` dedicated to your app, such as `https://myfunctionapp.scm.azurewebsites.net`. This build service can only be used when the `scm` site is accessible to your app. For more information, see [Secure the scm endpoint](security-concepts.md#secure-the-scm-endpoint).
67
+
The App Service platform maintains a native deployment service ([Project Kudu](https://github.com/projectkudu/kudu/wiki)) to support local Git deployment, some container deployments, and other deployment sources not supported by either Pipelines or GitHub Actions. Remote builds, packaging, and other maintainence tasks are performed in a subdomain of `scm.azurewebsites.net` dedicated to your app, such as `https://myfunctionapp.scm.azurewebsites.net`. This build service can only be used when the `scm` site can be accessed by your deployment. Many publishing tools require basic authentication to connect to the `scm` endpoint. For more information, see [Enable basic authentication for deployments](#enable-basic-authentication-for-deployments).
68
+
69
+
This build provider is used when you deploy your code project by using Visual Studio, Visual Studio Code, or Azure Functions Core Tools. If you haven't already deployed by using one of these tools, you might need to Enable basic authentication on the SCM endpoint.
68
70
69
71
---
70
72
@@ -180,6 +182,41 @@ You should keep these considerations in mind when planning for a continuous depl
180
182
181
183
+ The Deployment Center doesn't support enabling continuous deployment for a function app with inbound network restrictions. You need instead configure the build provider workflow directly in GitHub or Azure Pipelines. These workflows also require you to use a virtual machine in the same virtual network as the function app as either a [self-hosted agent (Pipelines)](/azure/devops/pipelines/agents/agents#self-hosted-agents) or a [self-hosted runner (GitHub)](https://docs.github.com/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners).
182
184
185
+
## Continuous deployment during app creation
186
+
187
+
Currently, you can configure continuous deployment from GitHub using GitHub Actions when you create your function app in the Azure portal. You can do this on the **Deployment** tab in the **Create Function App** page.
188
+
189
+
If you want to use a different deployment source or build provider for continuous integration, first create your function app and then return to the portal and [set up continuous integration in the Deployment Center](#credentials).
190
+
191
+
## Enable basic authentication for deployments
192
+
193
+
By default, your function app is created with basic authentication access to the `scm` endpoint disabled. This blocks publishing by all methods that can't use managed identities to access the `scm` endpoint. The publishing impacts of having the `scm` endpoint disabled are detailed in [Deployment without basic authentication](../app-service/configure-basic-auth-disable.md#deployment-without-basic-authentication).
194
+
195
+
> [!IMPORTANT]
196
+
> When you use basic authenication, credentials are sent in clear text. To protect these credentials, you must only access the `scm` endpoint over an encrypted connection ( HTTPS) when using basic authentication. For more information, see [Secure deployment](security-concepts.md#secure-deployment).
197
+
198
+
To enable basic authentication to the `scm` endpoint:
199
+
200
+
### [Azure portal](#tab/azure-portal)
201
+
202
+
1. In the [Azure portal](https://portal.azure.com), navigate to your function app.
203
+
204
+
1. In the app's left menu, select **Configuration** > **General settings**.
205
+
206
+
1. Set **SCM Basic Auth Publishing Credentials** to **On**, then select **Save**.
207
+
208
+
### [Azure CLI](#tab/azure-cli)
209
+
210
+
You can use the Azure CLI to turn on basic authentication by using this [`az resource update`](/cli/azure/resource#az-resource-update) command to update the resource that controls the `scm` endpoint.
0 commit comments