DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports Events Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones AWS Cloud
by AWS Developer Relations
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Partner Zones
AWS Cloud
by AWS Developer Relations
The Latest "Software Integration: The Intersection of APIs, Microservices, and Cloud-Based Systems" Trend Report
Get the report
  1. DZone
  2. Software Design and Architecture
  3. Cloud Architecture
  4. The Surprisingly Powerful Azure Plugin Library

The Surprisingly Powerful Azure Plugin Library

Greg Duncan user avatar by
Greg Duncan
·
May. 24, 12 · Interview
Like (0)
Save
Tweet
Share
3.46K Views

Join the DZone community and get the full member experience.

Join For Free

Richard Astbury's Blog - Introducing the Azure Plugin Library

An open source library of plugins installed with a command line tool (a package manager). Once a plugin is installed, it can be easily packaged with an Azure deployment to install application dependencies on a Web or Worker role.

http://richorama.github.com/AzurePluginLibrary/

Watch a screen cast demonstration

Background

One of the key strengths of Windows Azure, is the Platform as a Service offering. Why would you want to patch an operating system, manage the deployment of your application, and check the health of your infrastructure? It’s better left to someone else (Microsoft) so you can focus on your application. However, the pitfall is when your application depends on something extra being installed or configured on the machine.

There are a few ways for installing 3rd party components on an Azure instance. This blog post has a good summary of the options.

In summary, start-up tasks are the best mechanism available for installing dependencies, which is fine for something straight forward, but for more complicated components (like MongoDB for example) there is quite a bit of work involved in scripting out the installation. Projects like AzureRunMe help with this, but ideally you want something that just works, without you having to write a lot of script.

Azure Plugin Library

The Azure Plugin Library exploits an undocumented feature of the Azure SDK, whereby modules referenced in the Service Definition file are bundled with your application in a package, which is uploaded and deployed to the Azure instances. The SDK uses this mechanism to set up Remote Desktop, Connect, WebDeploy and Diagnostics, however, additional plugins can be added by copying the files to the “Windows Azure SDK\v1.6\bin\plugins” folder.

..."

Azure Plugin Library

What is a plugin?

A plugin comprises of configuration, scripts and binaries that are packaged with your Azure deployment, and executed on the Azure Web or Worker Role.

These plugins will typically alter the configuration of the Azure instance or install a dependency.

The Windows Azure SDK ships with five plugins:

  • Connect
  • Diagnostics
  • RemoteAccess
  • RemoteForwarder
  • WebDeploy

Plugins are installed in this directory:

C:\Program Files\Windows Azure SDK\v1.x\bin\plugins


This project aims to extend the capability of the SDK by providing a wide range plugins with a community maintained library, and a command line installer.



What plugins are available?


The Azure Plugin Library is maintained in a GitHub repository. You can browse and download the plugins directly from the respository, using the links below, or alternatively use the command line tool.




  • Apache


  • AzureBlobDrive


  • AzureCommandLineTools


  • ChaosMonkey


  • Chocolatey


  • ClassicASP


  • CloudXplorer


  • Curl


  • DisableFirewall


  • DisableIESecurity


  • JavaJRE


  • MongoDB


  • MountVHD


  • Node


  • RunMe


  • SMTP


  • SevenZip


  • SqlServer2012Express


  • Sublime


  • Tcpview


  • Tomcat-5.5


  • Tomcat


  • WIF



...



image"




The fact that this is built on an undocumented feature of the Azure SDK concerns me a little, but I still think this is pretty cool. Got to love plugins/extensions/not-having-to-reinvent-the-wheels!

azure Library

Opinions expressed by DZone contributors are their own.

Popular on DZone

  • Monolithic First
  • Chaos Engineering Tutorial: Comprehensive Guide With Best Practices
  • Testing Level Dynamics: Achieving Confidence From Testing
  • Fargate vs. Lambda: The Battle of the Future

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 600 Park Offices Drive
  • Suite 300
  • Durham, NC 27709
  • support@dzone.com
  • +1 (919) 678-0300

Let's be friends: