Azure / Azure/azure-functions-core-tools

Publishing Azure functions, for Linux with python language, times out if we include AzureWebJobs.<FUNCTION_NAME>.Disabled app setting.

Open
#4,657 1 comment 0 reactions 0 assignees View on GitHub
needs-investigation potential-bug
Dominant language
C#
Stars
1.5k
Forks
498
Avg merge
4d 20h
Merged PRs (30d)
14

Description

### Version

Python: 3.12.10

Azure Functions Core Tools
Core Tools Version: 4.2.2+78afd8b84c8e31f0ddac570ba9e8128eefbd3d4a (64-bit)
Function Runtime Version: 4.1041.200.25360

### Description

Following guidance in https://learn.microsoft.com/en-us/azure/azure-functions/disable-function?tabs=portal.
If I add a configuration setting AzureWebJobs..Disabled (where FUNCTION_NAME is replace with name of my function) then deploying the Azure function using the Azure Functions Core Tools fails. Following is sample output -
```
Starting the function app deployment...
Updating Application Settings for Remote build...
Timed out waiting for SCM to update the Environment Settings
```

Just removing the configuration setting deploys the function successfully.
Interestingly, even the option to "Enable"/ "Disable" function from the Azure Portal does not work. There is no action that takes place on clicking the option.
However, if I manually define a configuration setting via the Azure portal then I get the desired behavior.

Note: This works as expected if the function is targeting C# on Windows. It only fails for Python on Linux. (didn't try other combinations)

### Steps to reproduce

1. Create an Azure function as per standard documentation / process. Ensure this function is using Linux host and function is developed using Python.
2. Add a configuration setting `AzureWebJobs..Disabled` (where FUNCTION_NAME is replaced with a valid function name)
3. Deploy the function using the command -
`func azure functionapp publish "my-test-func" --python --build remote`
4. The deployment times out.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the issue with `func azure functionapp publish "my-test-func" --python --build remote` on a Linux Python function, comparing runs with and without `AzureWebJobs..Disabled`. Trace the deployment path around remote-build application settings and the SCM environment-settings timeout. Done means publishing succeeds with the setting and the function can still be disabled as intended.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, python
Domain
cli, cloud
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.