page_type | products | languages | extensions | name | urlFragment | description | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
sample |
|
|
|
Retrieve opened issue count on GitHub with Azure Durable Functions (.NET) |
retrieve-opened-issue-count-on-github-with-azure-durable-functions |
Build an Azure Durable Functions that will scrape GitHub for opened issues and store them on Azure Storage. |
Retrieve opened issue count on GitHub with Azure Durable Functions
Build
The project can be built with the latest version of the .NET CLI. Or directly within Visual Studio 2022 with the .NET 6 installed.
dotnet build
Running the Sample
Pre-requisite
- GitHub Personal Access Token
- Latest version of the Azure Functions Tooling
- Visual Studio 2022
- .NET 6 SDK
- Azure Subscription (if running on Azure)
provision.ps1
requires the Azure CLI 2.0
Locally
Open the solution in Visual Studio 2022. Change the GitHubToken
value in local.settings.json
to match your GitHub Personal Access Token created previously in the pre-requisite.
local.settings.json
file
Sample {
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"AzureWebJobsSecretStorageType": "files", // temporary fix required for Azure Storage Emulator 5.8.0.0 and Azure Functions latest SDK.
"FUNCTIONS_WORKER_RUNTIME": "dotnet",
"GitHubToken": "INSERT_TOKEN_HERE"
}
}
On Azure
First, you will need to provision the service. Look into the provision.ps1
file provided and modify the name of the storage and Azure Web Site values to ensure that they are unique.
Then you can execute the file with the previously generated GitHub.
.\provision.ps1 -githubToken <TOKEN> -resourceGroup <ResourceGroupName> -storageName <StorageAccountName> -functionName <FunctionName>
Resources
- Azure Functions Documentation
- Introduction to Azure Functions
- Durable Functions overview
- Durable Functions pattern used in this sample