Setting LCM in WMF5 via ARM template

I am having trouble applying LCM settings (RebootNodeIfNeeded, ActionAfterReboot) on a machine running WMF5 when using Azure DSC extension v2.17. I would like to use a push config as Azure Automation is unnecessary for this project.

I understand I am supposed to use a separate config for LCM however the Azure DSC extension only allows a single config to be used, so I am unable to configure both LCM and actual DSC configuration. Setting the LCM settings via the main DSC configuration in “LocalConfigurationManager” as with WMF 4.0 does not seem to work.

In the logs I see…
“WMF 5 or newer, Injecting RebootNodeIfNeeded = False and ActionAfterReboot = "StopConfiguration”
The DSCwork folder contains a file “OriginalLCMSettings.json” with my LCM settings from the confg, however they are not represented in the meta.mof which includes the injected values.

How can I configure these values as part of an ARM template deployment?

Any help appreciated!

Have you considered just writing a script to modify the LCM, and deploying it into the VM? After all, this is just a one-time thing, right?

I think the extension assumes you’ll be configuring Pull mode, and what you’re wanting to do is just a little outside its territory.

Azure DSC extension controls the reboot of the system as it needs to preserve its state before the reboot happens. However from the configuration perspective there is no change in the behavior (instead of DSC LCM, Azure DSC does the reboot). Once initial configuration is applied successfully, DSC extension will replace LCM settings to whatever user has specified. This works very well for Push Configs.Link ARM DSC Extension Settings - PowerShell Team provides sample for using DSC push configuration via ARM.