An MBrace runtime implementation on top of Azure PaaS components. Enables easy deployment of scalable MBrace clusters using worker roles. It also supports on-site cluster deployments using Azure storage/service bus components for communication.
For a first introduction to MBrace please refer to the main website at mbrace.io. For developer information regarding the MBrace Core components, please refer to the MBrace.Core repository. If you have any questions regarding MBrace don't hesitate to create an issue or ask one of the maintainers. You can also follow the official MBrace twitter account @mbracethecloud.
Development of MBrace.Azure requires Visual Studio 2015 and Azure SDK 2.7 installed on your computer.
You can build the project either from Visual Studio or by running build.cmd Build if using cmd/powershell or ./build.sh Build if using bash/sh.
Before attempting to test MBrace.Azure on your machine, please make sure that your local time setting is correct. A significant time offset might create issues when attempting to deploy or communicate with an Azure cluster.
In order to use MBrace.Azure or run any of its unit tests, you must have access to an Azure account. Follow the instructions below to install the required Azure connection strings in your local machine:
- Create an Azure Storage account and keep note of its connection string. Save the connection string in the
AzureStorageConnectionStringenvironment variable in your local computer. - Create an Azure Service Bus account and keep note of its connection string. Save the connection string in the
AzureServiceBusConnectionStringenvironment variable in your local computer.
Follow the instructions below to deploy an MBrace Service to Azure:
- Sign up for an Azure account and download your publication settings file.
- From inside Visual Studio, navigate to
src/WorkerRole/MBrace.Azure.CloudService. - Expand the
Rolesfolder and double click onMBrace.Azure.WorkerRole. - In the
Configurationtab, select your desired VM size. - Close the Role menu and right click on the
MBrace.Azure.CloudServiceicon on your solution, selecting thePackage..option. - Under
Build Configuration, select eitherDebug_AzureSDKorRelease_AzureSDKand hitPackage. - Go to
samples/provision.fsxand follow the instructions there.
Unit tests can be run by calling build.cmd RunTests or ./build.sh RunTests from the command line.
Make sure that you have followed the connection string installation steps described above.
Unit tests can be run manually by opening the MBrace.Azure.Tests.dll assembly found in the repository's /bin folder using NUnit-GUI.
Tests found here are separated in 4 categories:
Compute Emulatorrun using the local Azure Compute Emulator and Storage Emulator, which need to be initialized manually.Storage Emulatorrun using local Azure worker processes and the Storage Emulator, which needs to be initialized manually.Standalone Clusterrun using local Azure worker processes and an Azure-hosted storage account.Remote Clusterrun using Azure-hosted worker instances, which need to be initialized manually.
The MBrace project is happy to accept quality contributions from the .NET community. Please contact any of the maintainers if you would like to get involved.
This project is subject to the Apache Licence, Version 2.0.
Head (branch master), Build & Vagabond tests