NI Package Management Idea Exchange

cancel
Showing results for 
Search instead for 
Did you mean: 
ErikL68

Allow recording a script of installations for later reuse

Status: Declined

With existing options to create custom installers and feeds with NI Package Builder, CLI support for automating installing installers or installing packages using nipkg.exe, and with full remote installation support using NI's SystemLink product, I would not expect NIPM to invest in additional recording/scripting capability as suggested by this idea. If there are smaller gaps that need to be filled, please consider submitting a new idea.

Our IT department has now opened up using NI Package Manager to install LabVIEW, and is leaving it to us to do these installs, reducing their role largely to managing licensing. This even includes installing the IDE for our coders.

 

I can't complain that they've opened this up, except that there are a lot of choices to make, not just in what main elements to install, but in option selections in prompts presented by the installers. it would be nice if we could have NIPM build up a script of all the elements we're installing (IDE, extras, drivers) and all the selections we make during this process. It should then save the script when the NIPM session ends, and allow appending an existing script should a script be built up over multiple NIPM sessions that might be interrupted by a restart required by one of the installs.

 

Ideally these scripts, when run, would either bypass the restarts normally requested after some installs until the end of the complete process, or would auto-continue after restarts that couldn't be skipped. Also important would be having it gather together all license/agreement requirements into a single prompt at the start of the script so that they can all be accepted at the start of the process rather than being prompted as each element install starts, or, better yet, have the script do a "silent" install with all licensing considered to be accepted and no prompts appearing.

 

Additionally, these scripts should then be editable so that if users discover they need additional drivers or libraries, different versions, or don't need some elements, they can be added to, revised, or removed from the script. It would also be great if we could make scripts that included uninstallations in the script, so scripts to upgrade from one revision to another could be built.

 

My vision for these scripts is a simple collection of scripts that would let us quickly get any user or test system up and running with everything needed, whether it's a new employee or an existing user or system getting a computer refresh, with minimal hand-holding of the process and no (or minimal) mistakes. My thinking is we could have a small handful of installer scripts that would fit the needs of 90%+ of our different systems that all use LabVIEW, leaving one-off systems to need only a few NIPM runs to complete their setups.

 

Thanks,

Erik

6 Comments
CL_eisenwr
Active Participant

Erik,

Have you looked into using the NIPKG.exe command line interface? NI Package Builder to make Package Installer? We have been using these to do silent scripted installation. NIPKG.exe this only automatically accepts the licenses without any prompt. However the NI Package Builder's will collect and prompt the licenses together, but you will need to click through the installation. For more complex upgrade cases, I have used simple batch file scripts utilizing the different NIPM command lines to automate the process.

__________________________________
Bill Eisenhower
Certified LabVIEW & TestStand Developer
Scott_Richardson
Active Participant

For your reference: Automating an Installer, which includes a recently added option for silent installation instead of just passive.

Scott Richardson
https://testeract.com
ErikL68
Member

Hi Bill & Scott,

I'll have to dig into these. At first glance, it looks like these will select the default options that you would manually pick through during the GUI install process, with no option to change these selections, yes? Many installers seem to have large checklists of optional components, and we rarely want the defaults. Is there a way to parse out these large installers into sub-installers we can then create packages from?

WesW
Active Participant

To change the default package selections, you can also edit an installer config file: https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z000000g3BVSAY&l=en-US

 

Scott_Richardson
Active Participant

Erik, you are correct that when installing silently, the default checked items are installed and the unchecked items are not, and that is true for the recommendation/suggests dialog as well. 

 

NI Volume License Manager NI Package Builder allows you to build custom package installers.

 

For VLM, you can reference Create an Automated, Customized Suite Installer in VLM, but I am not sure what level of customization you have over what is installed by default or not.

 

For NI Package Builder can add packages to an installer in 3 ways:

  1. packages that the solution builds
  2. packages installed on the build system
  3. top-level packages included an offline package installer accessible on disk

Option (3) allows you to create a custom suite installer. For the workflow of option (3), you can select Installer Products tab, click Add Installer button and select the "Install.exe" file for the offline installer on disk, and then select the top-level packages in the installer to include in your installer.

Scott_Richardson_0-1626969246624.png

When a package is added you can edit the Installation behavior property of that item, see below. 

Scott_Richardson_1-1626969459182.png

You can specify whether the top-level item will always be installed or optionally installed with it checked or unchecked by default. You can also check or uncheck whether recommended items are included, but you currently have no control over their default check state.

 

Note that there is Bug 1436537 in the Package Builder known issues where installers built by Package Builder might incorrectly exclude dependent packages in some of the feeds that it builds under the package installer.

Scott Richardson
https://testeract.com
Scott_Richardson
Active Participant
Status changed to: Declined

With existing options to create custom installers and feeds with NI Package Builder, CLI support for automating installing installers or installing packages using nipkg.exe, and with full remote installation support using NI's SystemLink product, I would not expect NIPM to invest in additional recording/scripting capability as suggested by this idea. If there are smaller gaps that need to be filled, please consider submitting a new idea.

Scott Richardson
https://testeract.com