FROM CHAOS TO COMPLIANCE

This Wednesday | 12 PM EDT / 4 PM CEST

Action1 5 Documentation 5 Prepare Multi-File Custom Packages

Prepare Multi-File Custom Packages

 

In order to streamline app distribution and delivery, Action1 enables you to upload custom MSI and EXE packages consisting of multiple files and deploy them from the Software Repository. For example, you can create a package for Microsoft Office apps or development tools such as java distributions, node.js.

On top of that, with the help of multi-file custom packages, you can distribute files that don’t have a fully-featured installer and come as a set of files that need to be copied to some folder – so-called “dumb file deployment”.

Installed Software

Once this package is uploaded to Action1 Cloud, you will be able to deploy it as any regular package. Managed endpoints will download the package data using our cloud file-sharing technology, which works by sharing chunks of data across multiple computers. Let’s say you have 100 endpoints and need to download a 2 GB package. Each endpoint would download approximately 20 MB and share it with other managed endpoint endpoints. This way Internet traffic usage is minimized and download reliability is accomplished.

What kind of ZIP packages can you create? 

You can create packages with:

  • EXE and other files such as configurations. 
  • MSI with MST (transform) files that customize your installation, for example, add a license code or create a preconfigured profile. For custom transform (*.MST) files, consider using the ORCA tool. Make sure to select packages that perform per-machine installation; per-user installation isn’t supported by Action1.
  • Any regular “dumb” files (that aren’t installers)

Preparing a ZIP package with EXE file

  1. Create a work folder, such as C:\work.
  2. Copy your files to this folder. Make sure to include a setup EXE file.
  3. If you want to add some custom logic to your EXE installer, create a script and place it in the same folder. If just need to run an EXE file with parameters, you do not need a script – you could specify all the needed parameters in the silent install switches, such as setup.exe /S
  4. Select all files in the folder and use your zipping tool of choice to create a ZIP Folder, for ease of use, keep all files in the root of the ZIP folder.
  5. Add a new package to the Software Repository. For more information on creating new apps, see Add Custom Packages to Software Repository.
  6. Add a version and upload the ZIP you’ve generated.
  7. For EXE-based packages, select Other installation type and enter the script name or EXE name with the needed parameters into the Silent Install Switches field (e.g., setup.exe or start.ps1). Use quotes if the executable file name contains spaces and separate parameters with spaces (example: “Install Office.exe” /silent). The preview line will show the archive.zip\file_to_launch notation to indicate the file to launch after archive extraction on the target endpoint.
  8. Deploy the package to your managed endpoints. For detailed instructions on how to roll out packages, see Deploy Software.
Uploading a ZIP package

Preparing a ZIP package with MSI file

  1. Create a work folder, such as C:\packages\MyApp, and copy all setup files into it (.MSI, .MST, etc.). To keep it simple, do not create any folder hierarchy inside the work folder.
  2. Inside the work folder, create a script (such as setup.ps1) that contains a command needed to launch the MSI file. The following example launches MyApp.msi with a transform file: msiexec.exe /i ‘MyApp.msi’ /quiet /qn /norestart TRANSFORM=MyApp.mst
  3. Select all files in the work folder and create a ZIP archive (such as setup.zip). Make sure the work folder itself does not go into the ZIP archive (all files have to be in the root). Keep the work folder for future use, in case you need to make any adjustments.
  4. Add a new package to the Software Repository. For more information on creating new apps, see Add Custom Packages to Software Repository.
  5. Add a version and upload the ZIP you have generated.
  6. Select Other installation type (not MSI!) andenter the name of your script created at Step 2 into the Silent install switches.
  7. Deploy the package to your managed endpoints. For detailed instructions on how to roll out packages, see Deploy Software.

Preparing a ZIP package with regular files (“Dumb file deploy”)

  1. Create a temporary folder, such as C:\MyAppTemp.
  2. Copy your files to this folder.
  3. Create a simple CMD, PowerShell, or batch script that copies files from the folder to the target location. Place the script next to your files. It is recommended to use a flat file structure in the temporary folder, it will allow you to use relative file paths without specifying a folder name.

Example:

mkdir "C:\Programs Files\MyApp"
copy file.txt "C:\Programs Files\MyApp"

  1. Select all files including a script and specify Add to archive.
Creating a dumb installation package
  1. Add a new package to the Software Repository. For more information on creating new apps, see Add Custom Packages to Software Repository.
  2. Add a version and upload the ZIP you’ve generated. For script-based “dumb files” packages, specify Other installation type and provide a script name as a silent install switch parameter (e.g., copy.ps1). Use quotes if the script name contains spaces.
  3. Deploy the package to your managed endpoints. For detailed instructions on how to roll out packages, see Deploy Software.

Uninstallation tips:

In order to make “dumb” apps uninstallable in the future, make sure to create an uninstall entry in the Add/Remove Programs along with a reference to the uninstall script (which has to be put into ZIP and copied as well). The following example commands can be used to create an uninstall entry.

REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyApp /v UninstallString /t REG_EXPAND_SZ /d "cmd.exe /c C:\Programs Files\MyApp\uninstall.cmd"

REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyApp /v DisplayName /t REG_SZ /d "MyApp"

REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\MyApp /v DisplayVersion /t REG_SZ /d "1.0"

Step-by-step example: preparing Microsoft Office tools package

Creating a package

  1. Download Office Deployment Tool (ODT).
  2. Create a work folder, such as C:\work.
  3. Run officedeploymenttool_xxxxx-xxxxx.exe /extract:temp (the actual name of exe is version-dependent) to extract Setup.exe into the “temp” subfolder, then copy the resulting setup.exe into the work folder.
  4. Create the configuration.xml file in the work folder. Refer to Microsoft documentation for more information on components needed.
  5. Inside the work folder, run the CMD command: setup.exe /download configuration.xml. It will download a few GBs into the Office subfolder. Please wait, it might take some time depending on your network bandwidth.
  6. Select all files in your work folder, including exexml, and the Office subfolder, and and add them to a ZIP file called setup.zip. Your installation package is ready and can be uploaded to Action1 Cloud.
Creating a custom app package with Office tools

Uploading a package to the Action1 Software Repository

  1. In Action1, navigate to the Software Repository and select Add to Repository.
  2. Provide general information about the package such as a vendor, description.
  3. Add a version and provide general information about it, including a version number and release date, then save it.
Creating a new package
  1. Proceed to the Installation tab, select Windows 64 bit download and upload your ZIP Action1 Cloud for P2P distribution.
  2. For Installation type, select Other: .exe or script (.cmd, .bat or .ps1).
  3. For Silent install switches, provide: setup.exe /configure configuration.xml.
  4. Add success exit codes if necessary.
Uploading a package with Office tools
  1. For this particular app package, there is no need to specify any steps on the Additional Actions tab.

Now, Microsoft Office becomes available in the Software Repository as a custom app and you can distribute it to your managed endpoints. Consider rolling out deployment to a test group first before scheduling a companywide delivery.

Updating the app

Upload a newer version of the Office custom app package to roll out updates to your endpoints.

 

  1. Select the package in the Software Repository.
  2. In the version setting section, select Add version.
  3. Provide information about the new version and upload the package. See detailed instructions above.
  4. Navigate to Installed Software page, locate the Office package and select Deploy Update.

Troubleshooting

In case of the “The operation completed with error code 17006″ error, stop all Office 365 processes on your managed endpoints (e.g., Outlook, Word, Excel) before attempting to deploy software updates.