Since V2 went GA we have been unable to successfully deploy or use the functions app that is part of our solution
@mhoeger mentioned as requested :)
Please provide the following:
Summary of the key problems....
Function (check-started) Error: The binding type(s) 'queueTrigger, table' are not registered.
Please ensure the type is correct and the binding extension is installed.
func extentions install during build & deployNone
Thanks @GuyHarwood for all the details!! So nice to have your code to see too :,)
That is very strange... Could you navigate to the Kudu site for your function app (http://devfuncmtc.scm.azurewebsites.net/) and check DebugConsole > site > wwwroot to see if the built bin and obj folders are there as expected? Can you also tell us your deployment method? Adding @davidebbo to correct me if I'm wrong, but I would suggest using Run From Zip (recently renamed Run From Package).
@mhoeger the bin and obj folders are there.
bin...
Microsoft.Build.Framework.dll
Microsoft.Build.Utilities.Core.dll
System.AppContext.dll
System.Collections.Concurrent.dll
System.Collections.NonGeneric.dll
System.IO.FileSystem.Primitives.dll
System.Linq.dll
System.ObjectModel.dll
System.Private.DataContractSerialization.dll
System.Reflection.Emit.ILGeneration.dll
System.Reflection.Emit.Lightweight.dll
System.Reflection.Emit.dll
System.Reflection.TypeExtensions.dll
System.Resources.Reader.dll
System.Runtime.Loader.dll
System.Runtime.Serialization.Primitives.dll
System.Runtime.Serialization.Xml.dll
System.Text.RegularExpressions.dll
System.Threading.Tasks.Extensions.dll
System.Threading.Thread.dll
System.Threading.ThreadPool.dll
System.Threading.dll
System.Xml.ReaderWriter.dll
System.Xml.XmlDocument.dll
System.Xml.XmlSerializer.dll
extensions.deps.json
extensions.dll
extensions.json
extensions.pdb
obj....
extensions.csproj.nuget.cache
extensions.csproj.nuget.g.props
extensions.csproj.nuget.g.targets
project.assets.json
My understanding was that Run From Zip isnt supported on linux yet?
some background on our deployment method...
we were using func pack to create a minified version of the node_modules dependencies, and then deleting node_modules before creating the deployment zip.
This worked, and the deploy step did not fail.
Since func pack became obsolete, and started throwing errors, we removed the steps above, and introduced the func extensions install step. Now the deployment times out, every time.
We use the Azure App Service Deploy task to deploy the functions zip file to the app service. is this correct? obviously without any formal documentation we are just guessing what the 'right way' is.
Reading through this issue, I feel it's trying to track too many unrelated things, as it's both covering deployment issues and runtime issues. If you are unable to deploy successfully, then you shouldn't get to the point where you can even try to run a function. If that's the case, then anything not related to deployment should be left out of the discussion.
Note that it is fine to open additional issues if you'd like to track separate things, but it is best to limit one issue to something very specific.
@davidebbo
furthermore, i am trying to give a complete picture of the problem. If you read through my comments you will see that we did have a working deployment, which started to fail when func pack broke, so we have a deployed instance, but have been unable to complete subsequent deployments since func pack was retired.
@GuyHarwood I just noticed that you are using a Linux App Service, which is still in pre-release (unlike Functions on Windows, which is GA). Unfortunately, the Linux offering has a couple issues which combine here:
My suggestion would be to switch to using Windows, either with an App Service Plan (as you're using today), or in Consumption mode.
OK. good to know about the deployment issue.
I will explore using a windows app service and raise new issue(s) if necessary
Most helpful comment
@GuyHarwood I just noticed that you are using a Linux App Service, which is still in pre-release (unlike Functions on Windows, which is GA). Unfortunately, the Linux offering has a couple issues which combine here:
My suggestion would be to switch to using Windows, either with an App Service Plan (as you're using today), or in Consumption mode.