Warning
This project has been archived as it has been replaced by the azure-uploader project.
Although it is still functional, no further development will be carried out.
AzureFileShares2BlobContainers is an Azure Functions project built with .NET 6 that facilitates the transfer of recorded video files from Azure Files to Azure Blob Storage. This Azure Function is called by the LivestreamRecorderService and should deployed in the same Azure region as the Azure Storage of this project. This ensures that the files are transferred within the same region, avoiding additional outbound data transfer costs.
To run this project locally or deploy it to Azure, you need the following prerequisites:
- .NET 6 SDK
- Azure Storage account with both Azure Files and Azure Blob Storage services set up
-
Clone the repository or download the source code.
-
Open the project in your preferred development environment (e.g., Visual Studio, Visual Studio Code).
-
Update the
local.settings.json
file with the connection strings for your Azure Storage account:{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "<AzureWebJobsStorage_connection_string>", "AzureWebJobsDashboard": "<AzureWebJobsDashboard_connection_string>" } }
-
Build the project to restore NuGet packages and compile the code.
-
Run the project locally or deploy it to Azure Functions.
-
Use the LivestreamRecorderService or any other service to trigger the AzureFileShares2BlobContainers function by making a
POST
request with thefilename
query parameter.
- HTTP Trigger: This function (
RunAsync
) is triggered by an HTTP POST request. It expects afilename
query parameter specifying the name of the file to process. - The functions log information using Serilog.
This project is licensed under the MIT License.