MSEndpointMgr / ModernBIOSManagement

MIT License
45 stars 22 forks source link

ModernBIOSManagement #8

Open jcaviani opened 3 years ago

jcaviani commented 3 years ago

Am I understanding the implementation correctly? The Modern Driver Management Solution now uses the AdminService but the Modern BIOS Management solution still uses the ConfigMgr WebService?

sveken commented 3 years ago

Both use the Admin service just don't download the "Legacy" version of the script

rwarrick66 commented 3 years ago

Is there an implementation guide? I have the REST account variables set and the device drivers getting installed (using AdminService) later in the task sequence. Do I need to set those variables sooner.

My current legacy "Apply New BIOS" steps happen earlier (immediately after the OS is installed). Can I run 'Invoke-CMDownloadBIOSPackage/Invoke-LenovoBIOSUpdate' and 'Invoke-CMApplyDriverPackage' beside each other?

sveken commented 3 years ago

You sure can, thats what i do,

My Driver/BIOS step is its own child task sequence it starts with setting the variables MDMUser and MDMPassword (double check these im going off the top of my head at home)

Follow the new guide for the admin service with Drivers as normally and the Bios just make sure your not using the "legacy" script, the arguments im feeding it is just -BareMetal -Endpoint "SCCMSERVERNAME" and thats it,

Dell BIOS is just -Path "%OSDBIOSPackage01%"

This all happens right after the image is applied and is the last step in WinPE before the machine restarts to join the domain

jcaviani commented 3 years ago

Thanks for the response

rwarrick66 commented 3 years ago

Excellent thanks - also, is it necessary to -param the TargetOSVersion in the driver install? My OS is 20H2, but there are many driver packages that are still 1909 and 2004 (no 20H2 available from Lenovo yet).
image

sveken commented 3 years ago

Excellent thanks - also, is it necessary to -param the TargetOSVersion in the driver install? My OS is 20H2, but there are many driver packages that are still 1909 and 2004 (no 20H2 available from Lenovo yet). image

I honestly don't know, Remove it and see what happens and let us know the result :P

rwarrick66 commented 3 years ago

The image works as planned. Right after the "Apply Operating System Image" step, the child task sequence kicks off and updates both BIOS and drivers for devices that have updated versions available. This particular device had 20H2 drivers so they applied successfully. However, when I removed "-TargetOSVersion "20H2" parameter, no ApplyDriverPackage.log was generated for the test device so I assume that drivers were not updated.

Then I found this in the script header ...

Detect, download and apply drivers during OS deployment with ConfigMgr and check for driver packages that matches an earlier version than what's specified for TargetOSVersion:

.\Invoke-CMApplyDriverPackage.ps1 -BareMetal -Endpoint "CM01.domain.com" -TargetOSVersion 1909 -OSVersionFallback

Testing -OSVersionFallback now.

xxnirvana69xx commented 3 years ago

Updated my scripts from last year and am having problems with the bios updates. Any help appreciated.

sccmerror sccmtask

sveken commented 3 years ago

If your using the latest script it uses the admin service now, follow the updated driver guide, once you get to the BIOS its switches are -BareMetal -Endpoint "SCCMSERVERNAME"

The vendor specific scripts don't have any changes i can see

xxnirvana69xx commented 3 years ago

If your using the latest script it uses the admin service now, follow the updated driver guide, once you get to the BIOS its switches are -BareMetal -Endpoint "SCCMSERVERNAME"

The vendor specific scripts don't have any changes i can see

Ok, I'll try this out in the morning. I quick looked at the guide online and it still has it set up the old way.

rwarrick66 commented 3 years ago

-OSVersionFallback works - successfully applied older driver pack since 20H2 was not available. Solid!

xxnirvana69xx commented 3 years ago

If your using the latest script it uses the admin service now, follow the updated driver guide, once you get to the BIOS its switches are -BareMetal -Endpoint "SCCMSERVERNAME"

The vendor specific scripts don't have any changes i can see

Thanks, it's actually communicating finally. Now I'm running in to the problem that it's finding too many matches for bios as we have multiple Lenovo models with compatible packages.

bios

sveken commented 3 years ago

Might be worth starting a separate issue for that, From experience Lenovo is just all over the shop with multiple BIOSes per model based on what chip they run,