Azure / Azure/azure-functions-host

dotnet-isolated apps with /bin/extensions.json in payloads will not run correctly

Open
#9,847 0 comments 0 reactions 0 assignees View on GitHub
supportability
Dominant language
C#
Stars
2k
Forks
482
Avg merge
2d 12h
Merged PRs (30d)
38

Description

We've seen several cases where apps are zipped or built incorrectly and include some older or in-proc artifacts in `/bin`. If we detect an `extensions.json` file in there, we'll use that as our root, which leads to us using this folder as our base for finding extensions and assemblies. This doesn't work in the dotnet-isolated case, where we explicitly build things into the `.azurefunctions` folder.

Ideally we'd:
- log a diagnostic event if we're in some odd state here -- in this case we were starting FunctionsNetHost.exe b/c we never saw anything from the payload to override it (as we never found extensions).
- it also took us a while to detect b/c we don't explicitly log that we've found extensions.json or what the payload of that file was.

For internal reference, ICM number is 463094034.

Contributor guide

Open the contributing guide

Research direction

Start by tracing how the host handles `/bin/extensions.json` and the `.azurefunctions` folder when building the extension and assembly search root. Reproduce the dotnet-isolated payload case and inspect when `FunctionsNetHost.exe` is selected. Done means the odd state produces a diagnostic event and extension discovery logs identify the detected file and its payload.

Written by the indexing model from the issue text.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.