Chef Progress Primary Logo

Best Practices for Packaging Windows COTS Applications for Automated Deployment

Application Delivery User Guide

User Guide: Best Practices for Packaging Windows COTS Applications for Automated Deployment

Chef Habitat provides automation capabilities for defining, packaging and delivering applications to almost any environment regardless of operating system or deployment platform.

This guide outlines the various approaches and best practices for packaging Windows COTS applications using Chef Habitat. It explores packaging strategies that are isolatable, portable, and result in the fewest amount of system-wide side effects as possible when run in production, in addition to providing more pragmatic techniques which simply wrap an application’s installer.

Key topics covered in the guide include:

  • Application Compatibility: What COTS Applications can be Packaged with Chef Habitat
  • Purity vs. Pragmatism: Determining the Right Packaging Approach
  • Developing a Hook Installed Service Plan
  • Defining a Portable and Isolatable Plan
  • Common Application Install and Configuration Scenarios for Windows COTS Applications
  • Know When to Stop

Prerequisites for packaging an application using this guide include:

  • x86_64-bit operating system (Windows 2008+)
  • 32-bit or higher application (no 16-bit)
  • Application must have a silent installer

Download User Guide

<div class="-tac -pt1 -pb2"> <img data-sf-ec-immutable="" src="/images/default-source/default-album/landing-pages/thank-you-message.svg?sfvrsn=134c2aec_2" alt="thank-you-message" class="-w18 -ma -mb2" sfref="[images%7COpenAccessDataProvider]8b5b7c4c-9e32-4534-95e6-df35187a304e" /> <h3>Thank You</h3> <p>If report hasn't started in 5 seconds please <br> <a href="/docs/default-source/guides/habitatguide_cotsappsforwindows.pdf?sfvrsn=4b65e786_4" target="_blank" rel="nofollow" class="-i-next">Click here to download </a></p> </div> <script>var"/docs/default-source/product-and-user-guides/habitatguide_cotsappsforwindows.pdf", '_blank');win.focus()</script><script>var header = document.getElementsByClassName('-c-black js-form-header')[0]; if(header){ = 'none'; }</script><script>if (typeof (window.dataLayer) !== 'undefined') { window.dataLayer = window.dataLayer || []; dataLayer.push({'event': 'custom.successMessageShown'}); } </script> Loading animation