My current project involves the mono framework. It is crossplatform and runs on windows, linux and macos. The lack of diskspace (and time) for setting up a linux machine and the lack of money to buy a new macbook pro retina (which is very nice) make me do most of my testing on my windows machine. Not realy crossplatform as I run the dotNET framework on windows too. (obvious)
Here comes Windows Azure in to play with it’s preview features. The support for Linux virtual machines comes as a gift. Now I can do my testing on a dedicated cloud machine that runs something else as Windows. I even have the choice to create my own salted version of the prepared images.
Here are my steps:
- Create a Virtual Machine from the OpenLogic CentOS 6.2 image
- Use SSH to connect to the Virtual Machine and install Mono
ssh -i privatekey.key etms@168.62.6.189:22 sudo -s yum install bison gettext glib2 freetype fontconfig libpng libpng-devel libX11 libX11-devel glib2-devel libgdi* libexif glibc-devel urw-fonts java unzip gcc gcc-c++ automake autoconf libtool make bzip2 wget cd /usr/local/src wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.gz tar zxvf mono-2.10.8.tar.gz cd mono-2.10.8 ./configure --prefix=/usr/local make && make install
- Test Mono installation
/usr/local/bin/mono --version
- Capture the image for faster setup on next test
waagent -deprovision
Shutdown the Virtual Machine and Capture from the management site
- The captured image is now in the list of VM OS Selection
Now I can build my repository of test machines without taking up space on my own hardware. Whenever I need a machine it is up and running in less than 10 minutes. The cloud is an enabler for Testing As A Service.
This post is based on these posts from Microsoft and Phonicuk:
- https://www.windowsazure.com/en-us/manage/linux/tutorials/intro-to-linux/
- https://www.windowsazure.com/en-us/manage/linux/how-to-guides/capture-an-image/
- http://wiki.phonicuk.com/Installing-Mono-in-CentOS-5-x.ashx
Commic like screenshot explanation