Windows Azure PowerShell
This repo contains a set of PowerShell commandlets for developers and administrators to deploy and manage Windows Azure applications. It includes the following:
- Cmdlets for developers to deploy both node.js and PHP applications.
- Cmdlets for IT Administrators to manage their Windows Azure environments. For documentation on how to build and deploy applications to Windows Azure please see the Windows Azure Developer Center.
- help node-dev - List node.js development cmdlets
- help php-dev - List PHP development cmdlets
- Get-AzurePublishSettingsFile - Downloads a Windows Azure publish profile to your local computer
- Import-AzurePublishSettingsFile - Imports the Publish Profile to enable publishing to Azure and managing hosted services
- New-AzureServiceProject - Creates scaffolding for a new service
- Add-AzureNodeWebRole - Creates scaffolding for a Node.js application using web role which will be hosted in the cloud via IIS
- Add-AzureNodeWorkerRole - Creates scaffolding for a Node.js application using worker role which will be hosted in the cloud via node.exe
- Add-AzurePHPWebRole - Creates scaffolding for a PHP application using web role which will be hosted in the cloud via IIS
- Add-AzurePHPWorkerRole - Creates scaffolding for a PHP application which will be hosted in the cloud via php.exe
- Start-AzureEmulator - Starts both the compute and storage emulators and executes the service
- Stop-AzureEmulator - Stops the compute emulator
- Publish-AzureServiceProject - Publish the current service to the cloud
- Set-AzureServiceProject - Configure service name, deployment location and storage account to use for publishing the service to the cloud
- Set-AzureServiceProjectRole - Configure role instance count
- Start-AzureService - Starts a hosted service.
- Stop-AzureService - Stops a hosted service
- Remove-AzureService - Removes a hosted service
- Get-AzureStorageAccount - Displays storage account details for the current Azure subscription.
- Get-AzureStorageKey - Displays storage account keys for the specified storage account name.
- Enable-AzureServiceProjectRemoteDesktop - Enables remote desktop access to a hosted service
- Disable-AzureServiceProjectRemoteDesktop - Disables remote desktop access to a hosted service
For comprehensive documentation on the developer cmdlets see here.
For comprehensive documentation on the full set of Windows Azure cmdlets see Windows Azure Management Center.
Configure machines for publishing to the cloud.
Create services and roles that are preconfigured to use Node.js.
Debug your applications in the local compute and storage emulators
Publish your service to the cloud and configure publish settings
Manage your hosted services
Download Source Code
To get the source code of the SDK via git just type:
git clone https://github.com/WindowsAzure/azure-sdk-tools.git
General Install Prerequisites
Node.js Prerequisites (developer only)
PHP Prerequisites (developer only)
Configure PowerShell to automatically load commandlets
- Create a folder inside your user's Documents folder and name it WindowsPowerShell
- Inside that folder create a file called Microsoft.PowerShell_profile.ps1
- Edit the file in a text editor and add the following contents
- After you build the commandlets project, you can then open a PowerShell window and you should be able to use the commandlets. Please note that if you want to rebuild the project, you have close the PowerShell window, and then reopen it.
- First, create an Azure hosted service called HelloWorld by typing
- Inside the HelloWorld folder, add a new Web Role by typing
Add-AzureNodeWebRole or Add-AzurePHPWebRole
- Test out the application in the local emulator by typing
- You are now ready to publish to the cloud service. Go ahead and register for a Windows Azure account and make sure you have your credentials handy.
- Get your account's publish settings and save them to a file
- Now import the settings
- You are now ready to publish to the cloud. Make sure you specify a
unique name for your application to ensure there aren't any conflicts during
the publish process
Publish-AzureServiceProject -ServiceName UNIQUE_NAME -Launch
Be sure to check out the Windows Azure Developer Forums on Stack Overflow if you have trouble with the provided code.
Contribute Code or Provide Feedback
If you would like to become an active contributor to this project please follow the instructions provided in Windows Azure Projects Contribution Guidelines.
If you encounter any bugs with the library please file an issue in the Issues section of the project.