Web PI APIs: Visualize Product Hierarchy with DGML
Today, I was checking one of my favorite blogs by Tess Fernandez, which is a great source of discussions, tips and tricks around debugging. One of the latest blogs is about GCRootToDGML tool written by Chris Lovett to generate a visual representation (DGML graph) of the runtime objects graphs. Running Visual Studio 2010 RC for already a couple of weeks, I haven’t even heard about this new feature. It comes as no surprise, since Visual Studio 2010 has tons of great features and it will take some time to discover them all. My immediate thought was to finally realize my long-due project at low cost – generating a diagram of Web PI product dependencies. So, once this idea came to my mind, a blocking thread was spawned stopping me from doing anything else until the goal was reached. What I thought before was going to take at least a day to write, with DGML and VS 2010 turned out to be just a couple of hours including the initial research and playing around with the feature.
Web PI APIs: Download Latest Web Stack Products for Any Platform
Suppose you have a central Internet faced server and multiple backend servers not connected to the Internet. To insure that your Internet faced server is always up-to-date with the latest Microsoft Web Stack products and updates, you can use Web Platform Installer. You can either use Web PI UI to set up your main server or you can automate the setup process by interfacing with Web PI APIs through Microsoft.Web.PlatformInstaller.dll. It was already shown in my previous blog post how to load and install specific products for the current machine through the APIs. In this blog, I will show how to download products for any Web PI supported platform using APIs. This solution might help you in setting up your load balancer that can download and cache products for its backend servers regardless of their OS and architecture. This solution is by no means perfect and final and is given as a sample.
Web PI APIs: Install a product from a custom feed
In my previous blog posts, I described how to create custom feeds for Web Platform Installer to install custom products and applications. There are many uses to these custom feeds from automatically setting up your environment with custom products in addition to products already offered in WebPI to testing your applications for inclusion to Windows Web App Gallery. With the last use in mind, automating the process of testing the application can be very useful.
Sniffer.Installer.Reporter (SIR) for Application Gallery
SIR stands for Sniffer, Installer and Reporter which comprise the three components of the tool’s validation workflow.
Install SIR Web Application with Web PI
SIR is a tool to validate Application Gallery packages. SIR comes in three different flavors, a dll, command-line tool and a web application. To read more about the dll and command line usage, you can refer to this blog. In this blog, you will learn how the same validation can be done using a one page web application. Similar to other Application Gallery packages, this web application is packaged into a zip file using Web Deploy technology. Similar to the SIR command line tool, this web application runs on top of the AppGallerySIR.dll that contains all important validation methods and outputs the results back on the screen. Below are the step by step instructions on how to install this web application in a few clicks and start validating your Application Gallery packages, existing or new.
Web PI Options Dialog
As many of you already know, version 2 RTW of Web Platform Installer released in September. So what’s new in this version since RC that was released in March? First of all, Web PI now caches downloaded installers. Second of all, Web PI now supports 9 additional languages – German, French, Spanish, Russian, Italian, Japanese, Korean, Traditional and Simplified Chinese. This language support extends to both displaying Web PI UI in the language of the current OS locale and installing a product (if available) in the language specified by the user. Finally, the last biggest feature of RTW is extensibility.
Web PI Additional Scenarios: Media and Developer Tools
Web Platform Installer now offers a set of Media and Azure products that are not included in the set of Web PI products by default. These additional scenarios can be enabled through the options dialog:
Web PI Localization
Version 2 RTW of Web Platform Installer, released in September, now not only comes localized in 9 languages - English, German, French, Spanish, Russian, Italian, Japanese, Korean, Traditional and Simplified Chinese, but also supports installations of products in supported languages. Now, users can choose the language in which they want Web PI to install the products. Though, not all products are localized in all 9 languages. Those products that are not available in the language selected by the user or not localized at all, will be offered in English.
Web PI Extensibility: Custom Feeds – Installing Custom Applications
One of the most important features of Web Platform Installer, version 2 RTW of which released in September, is that it surfaces web applications offered by Windows Web App Gallery. The Gallery is the place for open source apps that can be submitted through online submission process and be available through various sources, including Web PI, to millions of people. Both submission and admission is totally free, the application just needs to adhere to App Gallery Principles and be a Web Deploy zip package.
Web PI Extensibility: Custom Feeds – Installing Custom Products
As it was already mentioned in several articles about Web Platform Installer (Web PI), version 2 RTW of the product now offers extensibility as a part of its new set of features. Now, users can not only add additional Media and Developer Tools scenarios with a set of products not offered in Web PI by default, but also define and install their own products through Web PI. To add a new product to Web PI UI interface, you need to create a custom feed with some information for Web PI to parse and be able to display and later install products offered by your feed.