Site icon SMB Suite: Next Is Now™

Best practices from the field: Build dynamic, lean, and universal packages for Microsoft 365 Apps

Microsoft Square in Downtown Los Angeles

Los Angeles, California USA - February 11, 2018. Buildings at Microsoft Square in downtown Los Angeles USA. It is part of L.A. Live complex and Microsoft theater offer live concert and award venue. Many famous restaurants are located in this square.

This article was originally published by Microsoft. To read the original posting of this article, click here.

 

As an admin, you might have to deploy Microsoft 365 Apps (previously named Office 365 Business or Office 365 ProPlus) in your organization. But such a deployment is more than just Office: After the initial migration to Microsoft 365 Apps, you might have to provide ways for your users to automatically install additional language packs, proofing tools, products like Visio and Project, or other components. We often refer to these scenarios as 2nd installs, while the initial upgrade to Microsoft 365 Apps from a legacy Office is called 1st install. For 1st install scenarios, have a look at the install options as well as the best way to right-size your deployment.

 

This article shows you how to build dynamic, lean, and universal packages for Microsoft 365 Apps. This method can greatly reduce long-term maintenance costs and effort in managed environments.

 

The challenge

 

When you plan your upgrade to Microsoft 365 Apps, the actual upgrade from a legacy version to the always-current Microsoft 365 Apps is front and center (1st install scenario). But looking beyond the initial deployment, there are other scenarios you’ll need to cover as an admin (2nd install). Sometimes, after you upgrade your users, they might need any of the following components:

 

 

Historically, each of these scenarios was addressed by creating a dedicated installation package for automatic, controlled installation for users. Usually, an admin would combine the necessary source files (of ~2.5 gigabytes) and a copy of the Office Deployment Tool (ODT) together with a configuration file into a package for each of these components.

 

But, especially in larger organizations, you often don’t have a single configuration set of Microsoft 365 Apps. You might have a mix of update channels, often Semi-Annual Enterprise Channel and Semi-Annual Enterprise Channel (Preview). And maybe you’re currently transitioning from 32-bit to 64-bit, and maybe you’ll have to support both architectures for quite some time.

 

So in the end, you wouldn’t have 1 package per component but 4, covering each possible permutation of Semi-Annual Enterprise Channel/Semi-Annual Enterprise Channel (Preview) and x86/x64. The end result would be:

 

 

While the initial upgrade to Microsoft 365 Apps is a one-time activity, the scenarios described previously will be applicable over a longer period. Users might need additional components days, weeks, or even years after the initial deployment.

 

So, how do you build packages that are less costly to maintain over a long time frame and avoid the downsides?

 

The solution: Dynamic, lean, and universal packages

 

You can resolve these issues by implementing self-adjusting, small, and universal packages. Let’s cover the basic concepts before we dive into sample scenarios.

 

Build dynamic packages where you don’t hard-code anything. Use features of the Office Deployment Tool (ODT) to enable the packages to self-adjust to the requirements:

 

 

Build lean packages by removing the source files from the packages. This has multiple benefits:

 

 

Build universal packages by not hard coding things like the architecture or update channel. ODT will dynamically match the existing install, so your packages work across all update channels and architectures. Instead of having 4 packages to install Visio, for example, you’ll have a single, universal package that will work across all permutations of update channels and architectures.

 

 

How to build and benefit from building dynamic, lean, and universal packages

 

The idea is to not hard code everything in the configuration file, but to instead utilize the cleverness of the Office Deployment Tool as much as possible.

Let’s have a look at a “classic” package that was built to add Project to an existing install of Microsoft 365 Apps. We have the source files (of ~2.5 gigabytes) and a configuration file, which explicitly states what we want to achieve:

 

 

When we apply the concepts of dynamic, lean, and universal packages, the result would look like this:

 

 

So what have we changed, and what are the benefits?

 

 

Another example: Add language packs and proofing tools the dynamic, lean, and universal way

 

Let’s have a brief look at other scenarios as well, like adding language packs and proofing tools. The classic configuration file to install the German Language Pack might look like this:

 

 

If you’re running Semi-Annual Enterprise Channel as well as Semi-Annual Enterprise Channel (Preview) and have an x86/x64 mixed environment, you’d need three additional files to cover the remaining configuration permutations. Or, you just go the dynamic, lean, and universal way:

 

 

This single configuration file will work across x86/x64 and all update channels, such as Current Channel, Monthly Enterprise Channel, Semi-Annual Enterprise Channel, and others. So, if you want to offer five additional languages in your environment, just build five of these “config file + ODT” packages. For proofing tools, you just change the ProductID to “ProofingTools”.

 

Build your own configuration

 

The above concept is universally applicable to all Click-To-Run-based installations and products, as long as the ODT is used. You can change the specified Product ID to your scenario. Please check out the list of supported Product IDs for more information.

 

Prerequisites/Notes

 

Here are some prerequisites you must meet to make this concept work in your environment and some notes:

 

Exit mobile version