Content Items - Metadata
Here we will take a closer look at Content Items in PowerShell, to take your automation and scripting a bit further. We'll look at the different content purposes and show the makeup of each.
Content Items are stored in DeployR in seperate places. The Metadata is stored in the database, while the file content (WIM files) are stored on the DeployR Content Folder. Lets look more closely at the Metadata side.
Get-DeployRContentItem

Metadata Properties
id: DeployR Unique ID (GUID) created at the time of the item's creation.
Built in Items typically start their pre-assigned ids with 00000000
name: Friendly name of the item that is display in the console
description: optional field to include additional information
contentItemType: a property to let DeployR know how to handle the content
URL: a link to a single file that is stored on a web server
File: uploading of a single file, typically used with Operating Systems (.wim file)
Folder: uploading an entire folder of content, this is probably the most common use case
contentItemPurpose: a property to let DeployR know how to categorize the content, filtering it in other areas of DeployR
versions: this is a JSON blob that contains additional details about the individual version, of which there can be many per item. This will look different depending on the purpose of the item. See the detailed areas to dig in more.
versionCount: the count of versions associated with an item
createdDate: the date the item was orginally created in DeployR
lastModifiedDate: the date the item was last modified by a user or process
readOnly: [True / False] lets you know if you can modify the item. Built in items are set to True.
Versions Deeper Drive. This metadata is consistent amoung different content item purposes, however not all items are used, it depends on the purpose.
id: a unique GUID created for each version
contentItemID: the GUID id of the parent content item.
versionNo: the version count in the content item
status: the current status of that version (In Development, Active, Deprecated)
description: an optional property that you can provide additional information
relativePath: where the content WIM file resides in your DeployR Content folder
contentSize: size of the compressed WIM file on your server
externalURL: used when you choose "URL" from the type
createdDate: date the version was created
lastModifiedDate: date of the last modificiation to the version
installationCommandLine: command used to trigger the installation of the app content
installationWorkingDirectory: typically left blank, but if you need to change the path, you can
installationSuccessCode: 0 (success) and 3010 (reboot required) are the standard ones you can add, but based on your application, you might have others.
installationDependancies: currently not used, place holder for future enhancements
driverManufacturer: used in driver packs to specify the manufacturer (MakeAlias)
used in the automatching step of "Inject Drivers"
driverModel: used in driver packs to specify the model (ModelAlias)
used in the automatching step of "Inject Drivers"
Applications
Standard metadata of an Application Content Item, one that has 2 versions embedded.

versions metadata:

Here you can see there are two versions inside the single content item. Only 1 verison is required per content item, but this example, a second was added when an updated release of the app came out. This is one potential way to manage versioning of applications in DeployR.

Operating Systems
Operating System Content Items are for you to keep your operating systems. :-) I'll only be covering Windows here, but in the future, I'll circle back for Linux.
Below is the output of an Operating System Content Item. It has two versions, one with the Windows 11 24H2 March WIM (26100.3476), and one with the July WIM (26100.4652)


Driver Packs
Driver packs will be your extracted driver pack uploaded into a Single WIM. In this example, in the versions area, you'll see the driverManufacturer and driverModel are both set, this is to allow the auto matching future to work. The task sequence will read in all of the driver packs, then match on those two properties.


Other
This is like a bucket for you to keep other things in. Common uses:
Scripts
Certificates
Task Sequence Support Tools
other things that don't fit into "Application, Operating System, or Driver Pack" items.

Here are two examples, one of a Folder item which contains serveral files that are used to inject into WinPE named "WinPE-Extras", and one that is a single file containing a boot image used some random testing I was doing. Here is another example below of a content item I have placed many powershell scripts that then get leveraged in custom step defintions. While all of the metadata options are available, many are not used in "other" content items:


Last updated