{"id":13598588,"url":"https://github.com/rstolpe/MaintainModule","last_synced_at":"2025-04-10T09:31:41.264Z","repository":{"id":63800886,"uuid":"565379456","full_name":"rstolpe/MaintainModule","owner":"rstolpe","description":"This module update, install, uninstall old versions of your PowerShell modules in a easy way","archived":false,"fork":false,"pushed_at":"2024-07-30T08:08:27.000Z","size":214,"stargazers_count":12,"open_issues_count":5,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-11-06T23:38:55.977Z","etag":null,"topics":["it-tool","maintainmodule","module-maintenance","multi-platform","multios","powershell","powershell-module","support-tool","sysadmin-tool","windows"],"latest_commit_sha":null,"homepage":"https://www.powershellgallery.com/packages/MaintainModule","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/rstolpe.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-11-13T07:58:08.000Z","updated_at":"2024-09-02T09:39:27.000Z","dependencies_parsed_at":"2024-01-14T04:43:43.963Z","dependency_job_id":"10f2d0aa-5fd5-4ee2-a541-2f7e78ddae43","html_url":"https://github.com/rstolpe/MaintainModule","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rstolpe%2FMaintainModule","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rstolpe%2FMaintainModule/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rstolpe%2FMaintainModule/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rstolpe%2FMaintainModule/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rstolpe","download_url":"https://codeload.github.com/rstolpe/MaintainModule/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248191733,"owners_count":21062560,"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":["it-tool","maintainmodule","module-maintenance","multi-platform","multios","powershell","powershell-module","support-tool","sysadmin-tool","windows"],"created_at":"2024-08-01T17:00:53.978Z","updated_at":"2025-04-10T09:31:36.248Z","avatar_url":"https://github.com/rstolpe.png","language":"PowerShell","funding_links":[],"categories":["PowerShell"],"sub_categories":[],"readme":"![GitHub](https://img.shields.io/github/license/rstolpe/MaintainModule?style=plastic)  \n![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/rstolpe/MaintainModule?sort=semver\u0026style=plastic)  ![Last release](https://img.shields.io/github/release-date/rstolpe/MaintainModule?style=plastic)\n![GitHub last commit](https://img.shields.io/github/last-commit/rstolpe/MaintainModule?style=plastic)  \n![PSGallery downloads](https://img.shields.io/powershellgallery/dt/MaintainModule?style=plastic)\n  \n# MaintainModule\nThis module let you update all of your installed modules and also uninstall the old versions to keep things clean.  \nYou can also specify module or modules that you want to update. It's also possible to install the module if it's missing and import the modules in the end of the script.  \nWorks on all OS versions.\n\n## This module can do the following\n- Checks so TLS 1.2 are used by PowerShell\n- Making sure that PSGallery are set as trusted\n- Update all modules that are installed on the system\n- Update specified modules\n- Uninstall old versions of the modules\n- If specified module are missing you can choose to install it\n- Ignore SkipPublisherCheck\n- Update / install Pre-release\n\n## Dependencies\n- Module also require that you have my service module installed, [rsServiceModule](https://github.com/rstolpe/rsServiceModule)\n\n# Links\n* [My PowerShell Collection](https://github.com/rstolpe/PSCollection)\n* [Webpage/Blog](https://www.stolpe.io)\n* [Twitter](https://twitter.com/rstolpes)\n* [LinkedIn](https://www.linkedin.com/in/rstolpe/)\n* [PowerShell Gallery](https://www.powershellgallery.com/profiles/rstolpe)\n\n\n## Notes\nThe parameter -Scope don't effect the uninstall-module function this is because of limitation from Microsoft.  \n-Scope effect Install/update module function.\n\n## Install\nInstall for current user\n```\nInstall-Module -Name MaintainModule -Scope CurrentUser -Force\n```\n  \nInstall for all users\n```\nInstall-Module -Name MaintainModule -Scope AllUsers -Force\n```\n\n## Update-RSModule\n### Update all modules that are installed on the system\nYou can do that if you run the command.  \n````\nUpdate-RSModule\n````\nYou can also use the -Scope parameter if you want to change from CurrentUser to AllUsers, for example ```-Scope \"AllUser\"```  \nIf -Scope parameter are empty it will set it as CurrentUser as default.\n\n### Update specific module\nIf you want you can update specific modules, you can do that with the following command.  \n````\nUpdate-RSModule -Module \"VMWare.PowerCLI\"\n````\nThe parameter Module has support for multiple inputs, separate them with , for example ```-Module \"ImportExcel\", \"VMWare.PowerCLI\"```  \nYou can also use the -Scope parameter if you want to change from CurrentUser to AllUsers, for example ```-Scope \"AllUser\"```  \nIf -Scope parameter are empty it will set it as CurrentUser as default.\n\n### Uninstall old versions of all modules\nIf you want to uninstall all of the old versions for all of your modules that you have installed\n````\nUpdate-RSModule -UninstallOldVersion\n````\nYou can also use the -Scope parameter if you want to change from CurrentUser to AllUsers, for example ```-Scope \"AllUser\"```  \nIf -Scope parameter are empty it will set it as CurrentUser as default.\n\n\n### Uninstall old versions of a specific module only\nIf you want to uninstall old versions of only a specific module you can run\n````\nUpdate-RSModule -Module \"ImportExcel\" -UninstallOldVersion\n````\nThe parameter Module has support for multiple inputs, separate them with , for example ```-Module \"ImportExcel\", \"VMWare.PowerCLI\"```\nYou can also use the -Scope parameter if you want to change from CurrentUser to AllUsers, for example ```-Scope \"AllUser\"```  \nIf -Scope parameter are empty it will set it as CurrentUser as default.\n\n### Install missing module or modules\nIt's possible to install modules if they are not installed on the system, this only works if you have specified module or modules in the Module parameter.  \nIf the module are installed already this will not have any effect and the module will only get updated.\n````\nUpdate-RSModule -Module \"VMWare.PowerCLI\" -InstallMissing\n````\nThe parameter Module has support for multiple inputs, separate them with , for example ```-Module \"ImportExcel\", \"VMWare.PowerCLI\"```\nYou can also use the -Scope parameter if you want to change from CurrentUser to AllUsers, for example ```-Scope \"AllUser\"```  \nIf -Scope parameter are empty it will set it as CurrentUser as default.\n\n### Allow pre-release (only exists in beta)\nIf you want to allow pre-releases simply add ```-AllowPrerelease $true````\n\n### SkipPublisherCheck (only exists in beta)\nIf you for some reason want to skip publisher check add ```-SkipPublisherCheck $true``` this is needed for Pester and PowerCLI for an example","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frstolpe%2FMaintainModule","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frstolpe%2FMaintainModule","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frstolpe%2FMaintainModule/lists"}