community.windows.win_psrepository – Adds, removes or updates a Windows PowerShell repository.¶
Note
This plugin is part of the community.windows collection (version 1.3.0).
To install it use: ansible-galaxy collection install community.windows
.
To use it in a playbook, specify: community.windows.win_psrepository
.
Synopsis¶
This module helps to add, remove and update Windows PowerShell repository on Windows-based systems.
Requirements¶
The below requirements are needed on the host that executes this module.
PowerShell Module PowerShellGet >= 1.6.0
PowerShell Module PackageManagement >= 1.1.7
PowerShell Package Provider
NuGet
>= 2.8.5.201
Parameters¶
Notes¶
Note
See the examples on how to update the NuGet package provider.
You can not use
win_psrepository
to re-register (add) removed PSGallery, use the commandRegister-PSRepository -Default
instead.When registering or setting source_location, PowerShellGet will transform the location according to internal rules, such as following HTTP/S redirects.
This can result in a
CHANGED
status on each run as the values will never match and will be “reset” each time.To work around that, find the true destination value with community.windows.win_psrepository_info or
Get-PSRepository
and update the playbook to match.When updating an existing repository, all options except name are optional. Only supplied options will be updated. Use force=True to exactly match.
script_location, publish_location, and script_publish_location are optional but once set can only be cleared with force=True.
Using force=True will unregister and re-register the repository if there are any changes, so that it exactly matches the options specified.
See Also¶
See also
- community.windows.win_psrepository_info
The official documentation on the community.windows.win_psrepository_info module.
- community.windows.win_psmodule
The official documentation on the community.windows.win_psmodule module.
Examples¶
---
- name: Ensure the required NuGet package provider version is installed
ansible.windows.win_shell: Find-PackageProvider -Name Nuget -ForceBootstrap -IncludeDependencies -Force
- name: Register a PowerShell repository
community.windows.win_psrepository:
name: MyRepository
source_location: https://myrepo.com
state: present
- name: Remove a PowerShell repository
community.windows.win_psrepository:
name: MyRepository
state: absent
- name: Add an untrusted repository
community.windows.win_psrepository:
name: MyRepository
installation_policy: untrusted
- name: Add a repository with different locations
community.windows.win_psrepository:
name: NewRepo
source_location: https://myrepo.example/module/feed
script_source_location: https://myrepo.example/script/feed
publish_location: https://myrepo.example/api/module/publish
script_publish_location: https://myrepo.example/api/script/publish
- name: Update only two properties on the above repository
community.windows.win_psrepository:
name: NewRepo
installation_policy: untrusted
script_publish_location: https://scriptprocessor.example/publish
- name: Clear script locations from the above repository by re-registering it
community.windows.win_psrepository:
name: NewRepo
installation_policy: untrusted
source_location: https://myrepo.example/module/feed
publish_location: https://myrepo.example/api/module/publish
force: True
Authors¶
Wojciech Sciesinski (@it-praktyk)
Brian Scholer (@briantist)