For the complete documentation index, see llms.txt. This page is also available as Markdown.

Task sequence filtering

In version 1.1 +, it is possible using the bootstrap.json file have the DeployR task sequence selection dialog box filter to a subset of task sequences, this page will explain how.

Filter Logic

The filtering is based on a PowerShell "where-object" type lookup. The DeployR task sequence selector dialog will look at specific argument placed in the Bootstrap.json file and use that to query the DeployR available task sequences.

To learn more about the Bootstrap.json file, see Task Sequence debugging

The task sequence metadata is available during the filtering stage, so any of the items are queryable to be filtered on. You can gather that via PowerShell or the console, however PowerShell will provide you with the exact output that the filter will be looking for:

The recommendation would be to leverage tags, which can be easily set, modified and each item can contain several tags. One the metadata is choosen to filter on, the Bootstrap can be updated. This example is for then the task sequence has a tag of "Standard" associated with it.

syntax: "TaskSequenceFilter":"$_.Tags -contains 'Standard'"

That will be appended to the entire Bootstrap.json like so:

Then when the boot media is generated, it will filter the task sequences show to just ones that have been tagged with "Standard", even though the server has 23 task sequences on it.

More Examples

Here are additional examples, just for ideas. Some of the basic task sequence variables will be available to filter on, which will be shown in a few of the examples below.

Filtering based on client's network (DEFAULTGATEWAY001)

This example is if you tag a task sequence with specific networks based on their default gateway, then the task sequence will show up for that network. This example will show a server task sequence being available if the subnet is my server network of 192.168.20.1

Filtering based on client's model

This example we've set the filter to list task sequences based on the model of the workstation

Summary

Based on task sequence item meta data, strings and variables, it gives quite a bit of power over filtering what task sequences will be available for the end user to select.

This requires updating your Bootstrap.json file and regenerating your boot media for each variation of the bootstrap.json file.

iPXE Web Service Bonus

With iPXE Webservice, additional files can be slipped into the process, making the process dynamic and no need to regenerate the boot media. Several json files can be preconfigured then chosen based on a iPXE menu. Bootstrap JSON files on web server:

Menu item in iPXEboot.ps1

Custom iPXE Menu (iPXEboot.ps1 file)

With iPXE web service, unique menu items can be added, then different filters applied to each.

Last updated