If you have thought about developing Azure Function Apps from scratch and using Continous Integration via GitHub or other providers then this might be helpful.
Since I am a big fan of the new Azure family member “Azure Functions Apps” I am now actively working with them, developing them and trying to find more and more use cases.
One of my tasks for myself was to develop a function app from scratch, putting it on GitHub and connecting a new Function App to it. (How the Continous Integration works in Azure Function Apps is something I will cover in my next blog post)
While I am working on it, I found out how to structure my directory in order for the Azure Function App to Index my developed functions. Remember, a function app is an app containing one or several functions, so in order for your Azure Function App to know what available functions there are, the directory structure is important.
The structure is pretty simple.
As you can see in the GIST above, each function you create has its own folder, containing its function.json and depending on in what language you are writing your function your run file (while writing in C#, the run file is “run.csx”).
And in the root, there is a host.json.
What the different files do is something I am going to cover in one of my next blog posts.
This is enough for the Azure Function Apps engine to index your functions, making them available for you and your customers.
Check a look at my GitHub project for my azure function calculator demo to see the folder structure.