{"id":15022641,"url":"https://github.com/puppetlabs/puppetlabs-wsus_client","last_synced_at":"2025-04-04T12:09:02.366Z","repository":{"id":29804940,"uuid":"33349315","full_name":"puppetlabs/puppetlabs-wsus_client","owner":"puppetlabs","description":"puppetlabs - wsus_client module","archived":false,"fork":false,"pushed_at":"2025-02-04T02:19:41.000Z","size":419,"stargazers_count":10,"open_issues_count":6,"forks_count":32,"subscribers_count":150,"default_branch":"main","last_synced_at":"2025-03-28T11:10:26.408Z","etag":null,"topics":["hacktoberfest","module","supported"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/puppetlabs.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-04-03T06:07:20.000Z","updated_at":"2024-11-03T00:20:33.000Z","dependencies_parsed_at":"2023-11-07T10:25:05.598Z","dependency_job_id":"66b71e8a-769f-4610-bc2b-0d75b48b91fe","html_url":"https://github.com/puppetlabs/puppetlabs-wsus_client","commit_stats":{"total_commits":272,"total_committers":45,"mean_commits":6.044444444444444,"dds":0.8235294117647058,"last_synced_commit":"b87974855d49c9f85e634609504ca5ca724dc77c"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puppetlabs%2Fpuppetlabs-wsus_client","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puppetlabs%2Fpuppetlabs-wsus_client/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puppetlabs%2Fpuppetlabs-wsus_client/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/puppetlabs%2Fpuppetlabs-wsus_client/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/puppetlabs","download_url":"https://codeload.github.com/puppetlabs/puppetlabs-wsus_client/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247174423,"owners_count":20896078,"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":["hacktoberfest","module","supported"],"created_at":"2024-09-24T19:58:13.668Z","updated_at":"2025-04-04T12:09:02.348Z","avatar_url":"https://github.com/puppetlabs.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"# wsus_client\n\n#### Table of Contents\n\n1. [Overview](#overview)\n2. [Module Description](#module-description)\n    * [What wsus_client affects](#what-wsus_client-affects)\n3. [Setup](#setup)\n    * [Beginning with wsus_client](#beginning-with-wsus_client)\n4. [Usage](#usage)\n    * [Schedule updates](#schedule-updates)\n5. [Reference](#reference)\n6. [Limitations](#limitations)\n7. [License](#license)\n8. [Development](#development)\n\n## Overview\n\nThe Windows Server Update Service (WSUS) lets Windows administrators manage operating system updates using their own servers instead of Microsoft's Windows Update servers.\n\n## Module Description\n\nThis module configures Puppet agents to schedule update downloads and installations from a WSUS server, manage user access to update settings, and configure automatic updates.\n\n### What wsus_client affects\n\nThis module modifies registry keys in `HKLM\\Software\\Policies\\Microsoft\\Windows\\WindowsUpdate`. For details about how registry key-driven WSUS configuration works, see the [Microsoft TechNet documentation](https://technet.microsoft.com/en-us/library/dd939844.aspx).\n\n**Note**: Because this module modifies registry keys on clients, it is incompatible with Group Policy Objects that manage the same WSUS settings. **Do not use wsus_client to configure WSUS access or automatic updates if you use Group Policies to configure such options on clients**, as doing so can lead to unexpected behavior. Instead, consult Microsoft's documentation on [configuring automatic updates using Group Policy](https://technet.microsoft.com/en-us/library/dd939933.aspx).\n\n## Setup\n\nTo use wsus_client, you must have a configured and running WSUS server, and your clients must run Windows Server 2003 or newer. For more information about deploying WSUS, see Microsoft's [WSUS Deployment Guide](https://technet.microsoft.com/en-us/library/dd939906.aspx).\n\nTo install this module on your Puppet server, run this command:\n\n~~~\n$ puppet module install [--modulepath \u003cPATH\u003e] puppetlabs/wsus_client\n~~~\n\nIf necessary, use the optional `--modulepath` argument to specify your Puppet server's `modulepath`.\n\n### Beginning with wsus_client\n\nTo have the client use a WSUS server and set the server's location, declare the `wsus_client` class with the WSUS server's url in the `server_url` parameter.\n\nFor example, to point a node at a WSUS server located at `http://myserver` on port 8530, declare this class:\n\n~~~ puppet\nclass { 'wsus_client':\n  server_url =\u003e 'http://myserver:8530',\n}\n~~~\n\n## Usage\n\n### Schedule updates\n\nTo schedule when to retrieve and automatically install updates from a WSUS server, declare the `wsus_client` class with a WSUS [`server_url`][] as well as the [`auto_update_option`][], [`scheduled_install_day`][], and [`scheduled_install_hour`][] parameters.\n\nFor example, to schedule weekly updates at 2 a.m. on Tuesdays using a WSUS server at `http://myserver:8530`, declare this class:\n\n~~~ puppet\nclass { 'wsus_client':\n  server_url             =\u003e 'http://myserver:8530',\n  auto_update_option     =\u003e \"Scheduled\",\n  scheduled_install_day  =\u003e \"Tuesday\",\n  scheduled_install_hour =\u003e 2,\n}\n~~~\n\nClients can report update events to a WSUS status server as defined by the `WUStatusServer` registry key, which must have the same value as the `WUServer` policy to be valid for automatic updates. For details, see the [Microsoft TechNet documentation](TechNet).\n\nTo report the client's status to the WSUS server, use the `enable_status_server` parameter. For example, to configure a client to use `http://myserver:8530` for both updates and status reporting, declare this class:\n\n~~~ puppet\nclass { 'wsus_client':\n  server_url           =\u003e 'http://myserver:8530',\n  enable_status_server =\u003e true,\n}\n~~~\n\n## Reference\n\nFor information on the classes and types, see the [REFERENCE.md](https://github.com/puppetlabs/puppetlabs-wsus_client/blob/main/REFERENCE.md).\n\n## Limitations\n\nThis module requires clients running Windows Server 2003 or newer, and a configured and active [WSUS server](https://technet.microsoft.com/en-us/library/hh852338.aspx) to use all of the module's options except `purge_values`. For detailed compatibility information, see the [supported module compatibility matrix](https://forge.puppet.com/supported#compat-matrix).\n\n## License\n\nThis codebase is licensed under the Apache2.0 licensing, however due to the nature of the codebase the open source dependencies may also use a combination of [AGPL](https://opensource.org/license/agpl-v3/), [BSD-2](https://opensource.org/license/bsd-2-clause/), [BSD-3](https://opensource.org/license/bsd-3-clause/), [GPL2.0](https://opensource.org/license/gpl-2-0/), [LGPL](https://opensource.org/license/lgpl-3-0/), [MIT](https://opensource.org/license/mit/) and [MPL](https://opensource.org/license/mpl-2-0/) Licensing.\n\n## Development\n\nIf you would like to contribute to this module, please follow the rules in the [CONTRIBUTING.md](https://github.com/puppetlabs/puppetlabs-wsus_client/blob/main/CONTRIBUTING.md). For more information, see our [module contribution guide](https://puppet.com/docs/puppet/latest/contributing.html). To see who's already involved, see the list of [contributors](https://github.com/puppetlabs/puppetlabs-wsus_client/graphs/contributors).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuppetlabs%2Fpuppetlabs-wsus_client","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpuppetlabs%2Fpuppetlabs-wsus_client","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpuppetlabs%2Fpuppetlabs-wsus_client/lists"}