Manage Windows Azure with Mac OS/X

In my job I like to work with Microsoft products. But my laptop is a MacBook pro. Seeing the world more often using the cloud using a Macbook in a Windows work environment is no problem. Even Microsoft is more often support Mac OS\X. For testing\debugging and playing I use my own Azure Cloud environment. Microsoft has released a CLI for managing you own Azure Cloud.

To install Azure CLI you first have to install node and npm:
Start a terminal console and run the following commands:

echo 'export PATH=$HOME/local/bin:$PATH' >> ~/.bashrc
. ~/.bashrc
mkdir ~/local
mkdir ~/node-latest-install
cd ~/node-latest-install
curl http://nodejs.org/dist/node-latest.tar.gz | tar xz --strip-components=1
./configure --prefix=~/local
make install 
curl https://npmjs.org/install.sh | sh

Install the Azure SDK Tools

git clone https://github.com/WindowsAzure/azure-sdk-tools-xplat.git
cd ./azure-sdk-tools-xplat
npm install
npm install -g azure-cli
azure --completion >> ~/azure.completion.sh

Download your account information and import it.

azure account download
azure account import [file]

As it is a testing environment the most used commands for me are:

azure vm shutdown [name]
azure vm start [name]

Below a list of all commands are listed:

azure account affinity-group create [name]
azure account affinity-group show [name]
azure account affinity-group delete [name]
azure account storage list
azure account storage create [name]
azure account storage update [name]
azure account storage delete [name]
azure account storage keys list [name]
azure account storage keys renew [name]
azure storage container list -a -k
azure storage container show -a -k [container]
azure storage container create -a -k [container]
azure storage container delete -a -k [container]
azure storage container set -a -k -p [container]
azure site list
azure site create [site]
azure site show [site]
azure site browse [site]
azure site delete [site]
azure site stop [site]
azure site start [site]
azure site restart [site]
azure site deploymentscript
azure site config list [site]
azure site config add [keyvaluepair] [site]
azure site config clear [key] [site]
azure site config get [key] [site]
azure site log tail [options] [name]
azure site scale mode [name] [mode]
azure site scale instances [name] [instances] [size]
azure vm list
azure vm location list
azure vm create [name] [image] [username] [password] [location]
azure vm create-from [name] [rolefile]
azure vm export [name] [file]
azure vm show [name]
azure vm shutdown [name]
azure vm start [name]
azure vm restart [name]
azure vm delete [name]
azure vm image list
azure vm image show [image]
azure vm image create [name] [path]
azure vm image delete [name]
azure vm disk list
azure vm disk show [name]
azure vm disk create [name] [path]
azure vm disk attach [vm-name] [image]
azure vm disk detach [vm-name] [image]
azure mobile list
azure mobile create [servicename] [sqlAdminUsername] [sqlAdminPassword]
azure mobile show [servicename]
azure mobile delete [servicename]
azure mobile scale show [servicename]
azure mobile scale change [options] [servicename]
azure mobile log [servicename]
azure mobile config list [servicename]
azure mobile config set [servicename] [key] [value]
azure mobile config get [servicename] [key]
azure mobile table list [servicename]
azure mobile table create [servicename] [tablename]
azure mobile table show [servicename] [tablename]
azure mobile table update [options] [servicename] [tablename]
azure mobile table delete [servicename] [tablename]
azure mobile script list
azure mobile script download [servicename] [scriptname]
azure mobile script upload [servicename] [scriptname]
azure mobile script delete [servicename] [scriptname]
azure mobile data read [servicename] [tablename] [query]
azure mobile data truncate [servicename] [tablename]
azure mobile job list [servicename]
azure mobile job create [servicename] [jobname]
azure mobile job update [servicename] [jobname]
azure mobile job delete [servicename] [jobname]
azure mobile api list [servicename]
azure mobile api create [servicename] [apiname]
azure mobile api update [servicename] [apiname]
azure mobile api delete [servicename] [apiname]
azure sb namespace list
azure sb namespace create [namespace] [region]
azure sb namespace show [name]
azure sb namespace check [name]
azure sb namespace delete [name]
azure sb namespace location list
azure sql server show [serverName]
azure sql server list
azure sql server create [administratorLogin] [administratorPassword] [location]
azure sql server delete [serverName]
azure sql firewallrule create [serverName] [ruleName] [startIPAddress] [endIPAddress]
azure sql firewallrule show [serverName] [rulename]
azure sql firewallrule list [serverName]
azure sql firewall delete [serverName] [ruleName]
azure sql db create [serverName] [databaseName] [administratorLogin] [administratorPassword] [options]
azure sql db list [serverName] [administratorLogin] [administratorPassword]
azure sql db show [serverName] [databaseName] [administratorLogin] [administratorPassword]
azure sql db delete [serverName] [databaseName] [administratorPassword]

# Learn More
http://www.windowsazure.com/en-us/develop/nodejs/.
http://go.microsoft.com/fwlink/?LinkId=252246&clcid=0x409
http://www.windowsazure.com/en-us/develop/nodejs/how-to-guides/command-line-tools/