{"id":20156155,"url":"https://github.com/dsccommunity/xpendingreboot","last_synced_at":"2025-12-11T21:19:22.661Z","repository":{"id":30468255,"uuid":"34022241","full_name":"dsccommunity/xPendingReboot","owner":"dsccommunity","description":null,"archived":false,"fork":false,"pushed_at":"2020-03-02T01:42:17.000Z","size":64,"stargazers_count":31,"open_issues_count":4,"forks_count":10,"subscribers_count":20,"default_branch":"dev","last_synced_at":"2025-04-08T12:16:34.680Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dsccommunity.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-15T22:43:03.000Z","updated_at":"2024-09-01T23:07:00.000Z","dependencies_parsed_at":"2022-09-07T20:51:24.780Z","dependency_job_id":null,"html_url":"https://github.com/dsccommunity/xPendingReboot","commit_stats":null,"previous_names":["powershell/xpendingreboot"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FxPendingReboot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FxPendingReboot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FxPendingReboot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsccommunity%2FxPendingReboot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dsccommunity","download_url":"https://codeload.github.com/dsccommunity/xPendingReboot/tar.gz/refs/heads/dev","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248120061,"owners_count":21050886,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T23:37:49.784Z","updated_at":"2025-12-11T21:19:17.617Z","avatar_url":"https://github.com/dsccommunity.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# **THIS MODULE HAS BEEN DEPRECATED**\r\n\r\nIt will no longer be released.\r\nPlease use the 'PendingReboot' resource in [ComputerManagementDsc](https://github.com/dsccommunity/ComputerManagementDsc)\r\ninstead.\r\n\r\n# xPendingReboot\r\n\r\n[![Build status](https://ci.appveyor.com/api/projects/status/25n3uaum4x6cv4dg/branch/master?svg=true)](https://ci.appveyor.com/project/PowerShell/xpendingreboot/branch/master)\r\n\r\nThe **xPendingReboot** contains the **xPendingReboot** DSC resource.\r\nxPendingReboot examines three specific registry locations where a Windows Server might indicate that a reboot is pending and allows DSC to predictably handle the condition.\r\n\r\nNote: The expectation is that this resource will be used in conjunction with knowledge of DSC Local Configuration Manager, which has the ability to manage whether reboots happen automatically using the RebootIfNeeded parameter.\r\nFor more information on configuring the LCM, please reference [this TechNet article](https://technet.microsoft.com/en-us/library/dn249922.aspx).\r\n\r\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).\r\nFor more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\r\n\r\n## Contributing\r\n\r\nPlease check out common DSC Resources [contributing guidelines](https://github.com/PowerShell/DscResources/blob/master/CONTRIBUTING.md).\r\n\r\n## Description\r\n\r\nThe **xPendingReboot** module containes the **xPendingReboot** resource, which examines three specific registry locations where a Windows Server might indicate that a reboot is pending, and allows DSC to predictably handle the condition.\r\nDSC determines how to handle pending reboot conditions using the Local Configuration Management (LCM) setting RebootNodeIfNeeded.\r\nWhen DSC resources require reboot, within a Set statement in a DSC Resource the global variable DSCMachineStatus is set to value '1'.\r\nWhen this condition occurs and RebootNodeIfNeeded is set to 'True', DSC reboots the machine after a successful Set.\r\nOtherwise, the reboot is postponed.\r\n\r\n## Resources\r\n\r\n### xPendingReboot\r\n\r\nDetails for all read-only properties are returned by Get-DscConfiguration\r\n\r\n* **Name**: Required parameter that must be unique per instance of the resource within a configuration.\r\n* **ComponentBasedServicing**: (Read-only) One of the locations that are examined by the resource.\r\n* **SkipComponentBasedServicing**: (Write) Skip reboots triggered by the Component-Based Servicing component.\r\n* **WindowsUpdate**: (Read-only) One of the locations that are examined by the resource.\r\n* **SkipWindowsUpdate**: (Write) Skip reboots triggered by Windows Update.\r\n* **PendingFileRename**: (Read-only) One of the locations that are examined by the resource.\r\n* **SkipPendingFileRename**: (Write) Skip pending file rename reboots.\r\n* **PendingComputerRename**: (Read-only) One of the locations that are examined by the resource.\r\n* **SkipCcmClientSDK**: (Write) Skip reboots triggered by the ConfigMgr client\r\n* **CcmClientSDK**: (Read-only) One of the locations that are examined by the resource.\r\n\r\n## Versions\r\n\r\n### Unreleased\r\n\r\n* THIS MODULE HAS BEEN DEPRECATED. It will no longer be released.\r\n  Please use the 'PendingReboot' resource in ComputerManagementDsc instead.\r\n* Correct path to ComputerManagementDsc resource in README.MD.\r\n* Update appveyor.yml to use the default template.\r\n* Added default template files .codecov.yml, .gitattributes, and .gitignore, and\r\n  .vscode folder.\r\n\r\n### 0.4.0.0\r\n\r\n* Converted appveyor.yml to install Pester from PSGallery instead of from Chocolatey.\r\n* Fixes registry not being evaluated correctly.\r\n* Fixes failing tests introduced in changes to Pester 4.\r\n* Change layout of parameters to compile with style guide.\r\n\r\n### 0.3.0.0\r\n\r\n* Suppresses warning output in Test-TargetResource when 'SkipCcmClientSDK' is specified.\r\n* Fixes 'Null-valued expression' bug when 'Auto Update' or 'Component Based Servicing' registry keys are empty.\r\n\r\n### 0.2.0.0\r\n\r\n* Added parameters which allow you to skip reboots triggered by the individual components. For example, you can choose not to\r\n    reboot if Windows Update requested a reboot.\r\n\r\n### 0.1.0.2\r\n\r\n* Documentation changes:\r\n  * Added information on PendingComputerRename and CcmClientSdk.\r\n\r\n### 0.1.0.1\r\n\r\n* Update with improvements to the Test-TargetResource function and how pending reboots are detected.\r\n\r\n### 0.1.0.0\r\n\r\n* Initial release with the following resources\r\n  * xPendingReboot\r\n\r\n## Examples\r\n\r\n### Identify if reboots are pending and, if so, reboot immediately (managed by DSC)\r\n\r\nThis configuration leverages xPendingReboot and sets the LCM setting to allow automatic reboots.\r\n\r\n```powershell\r\nConfiguration CheckForPendingReboot\r\n{\r\n    Node 'NodeName'\r\n    {\r\n        xPendingReboot Reboot1\r\n        {\r\n            Name = 'BeforeSoftwareInstall'\r\n        }\r\n        LocalConfigurationManager\r\n        {\r\n            RebootNodeIfNeeded = $True\r\n        }\r\n    }\r\n}\r\n```\r\n\r\n### Identify if reboots are pending but do not automatically reboot (managed by DSC)\r\n\r\nThis configuration leverages xPendingReboot and sets the LCM setting to disallow automatic reboots.\r\n\r\n```powershell\r\nConfiguration CheckForPendingReboot\r\n{\r\n    Node 'NodeName'\r\n    {\r\n        xPendingReboot Reboot1\r\n        {\r\n            Name = 'BeforeSoftwareInstall'\r\n        }\r\n        LocalConfigurationManager\r\n        {\r\n            RebootNodeIfNeeded = 'False'\r\n        }\r\n    }\r\n}\r\n```\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdsccommunity%2Fxpendingreboot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdsccommunity%2Fxpendingreboot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdsccommunity%2Fxpendingreboot/lists"}