Back in the late 30’s, D. S. Harder coined the term ‘automation’ to describe the increased use of devices and controls in mechanized production lines. His aim, and that of his bosses at the Ford Motor Company, was to take repetitive, low skill tasks out of the manufacturing process to cut both delivery time and production costs.
Fast forward to the future [there you go, my first tenuous link to the flying Delorean]. How does the above apply to automating App-V sequencing?
The actual process of converting applications to Microsoft App-V relies on a process called sequencing* which, depending on the type and size of the application being converted, can be a very resource intensive process. In the case of App-V the resources are time and people skills, as opposed to pure computing power.
Where to start?
Understanding where automation can be most effective starts by identifying the stages of sequencing that are the most laborious and add to the greatest delays in a sequencing project.
No two applications need the same amount of time to sequence, and although Microsoft provides a rough estimate of between 1 – 8 hours in its App-V 5.0 Sequencing Guide, it could take longer depending on the application. To get a better estimate, a very experienced sequencing or application packaging professional would need to analyse the applications and categorise them as ‘medium’ or ‘hard’. Nothing’s ever easy.
App-V expert Rory Monaghan recently updated a very useful flow diagram he produced for finding out which is the most appropriate method for delivering the target app. Going through the steps before you start sequencing will give you a better idea of which apps will convert quickly and which ones will take longer. I’ll come back to automating this decision-making phase later.
Using PowerShell Scripts
Windows PowerShell is a task automation and configuration management framework made up of a command-line shell and scripting language built on the .NET Framework. Once you’re past the steep learning curve, PowerShell is actually a pretty good tool for automating App-V sequencing for most simple applications.
However, one downside is the fact that you can’t launch applications during the PowerShell conversion process to create feature blocks that get streamed first. Feature blocks can massively increase the launch speed of your application by streaming all the resources required to launch the application first, and the rest of the application after that.
Another downside is that the PowerShell commands can capture and include a lot of information that isn’t needed and just ends up cluttering the final package. This ‘dirty’ package can in turn cause issues for the application. That’s not ideal for medium to complex applications in production environments.
It’s a great tool but PowerShell can easily cause massive configuration changes, good and bad, so it’s usually best to confine it to a sandboxed area while you learn. One other possible usage would be to stress test your App-V environment in a lab with real applications.
Roads? Where we’re going we don’t need roads.
So automating App-V sequencing isn’t impossible and PowerShell will definitely speed up the sequencing process. But what do you do if your project is on a very tight deadline or you aren’t a scripting guru?
Simple. Take a different route.
But wait. I’m not talking about competing application virtualization solutions. I’m talking about an alternative option that still delivers apps ready for Microsoft App-V 4.6 and 5.0.
Given the main installation file of the application you want to sequence, the tools we use here at Algiz HQ give you the automated equivalent of going through Rory Monaghan’s flow diagram. You typically get the following information within a few minutes per app:
- Which applications are guaranteed to convert to App-V (green)
- Which apps will require some degree of manual intervention (amber)
- Which apps will need traditional manual sequencing (blue)
- Which apps are not good App-V candidates? (red)
Before the project even starts you’re armed with a more accurate estimate of time and cost.
Once the pre-requisites and customisation information is added to the tool the ‘green’ applications can be converted within a few minutes each ready for testing. It can then go on to convert up to 250 ‘green’ applications per day. The only human intervention the software requires when automating App-V sequencing is deciding how many to sequence.
True App-V automation lives up to the ideals of Harder et al. by not only reducing time to virtualize your application estate but also dramatically reducing costs as well.
But like applications, no two organisations are the same. How you manage your estate will ultimately decide the success of your application virtualisation effort. If you have a well-managed estate and understand the functionality of your applications then your sequencing project could run faster than a time travelling Delorean (but only if you have a spare ‘flux capacitor’ to hand).
*The Microsoft Application Virtualization (App-V) Sequencer is a component of the App-V suite used to package applications to be deployed to systems using the App-V Client.