🚀 DevOps & SRE Certification Program 📅 Starting: 1st of Every Month 🤝 +91 8409492687 🔍 Contact@DevOpsSchool.com

Upgrade & Secure Your Future with DevOps, SRE, DevSecOps, MLOps!

We spend hours scrolling social media and waste money on things we forget, but won’t spend 30 minutes a day earning certifications that can change our lives.
Master in DevOps, SRE, DevSecOps & MLOps by DevOpsSchool!

Learn from Guru Rajesh Kumar and double your salary in just one year.


Get Started Now!

PowerShellGet Commands Reference


Managing Resources with PowerShellGet v3

The cmdlet names have changed in PowerShellGet v3. Instead of Install-Module, you will use Install-PSResource. It’s actually the same cmdlet for all resources such as scripts and DSC resources.

Install-PSResource -Name Universal

The Install-PSResource cmdlet supports similar parameters to Install-Module but have slightly different names and meanings.

For example, -AllowClobber was optional in Install-Module but is now the default for Install-PSResource. You can use -NoClobber to change this behavior.

Install-PSResource -Name dbatools -Version '1.1.41' -NoClobber
Code language: JavaScript (javascript)

Changing Installation Scope

The -Scope parameter can be used to install the module for CurrentUser or AllUsersCurrentUser is the default setting. You will need to be running as administrator to install to all users.

Install-PSResource -Name 'PSWindowsUpdate' -Scope AllUsers
Code language: JavaScript (javascript)

Installing DSC Resources

You can also install DSC resources with Install-PSResource. The syntax is very much the same as with modules.

Install-PSResource -Name 'NetworkingDsc'
Code language: JavaScript (javascript)

Saving a Module

Much like Save-Module, you can use Save-PSResource to download a module for deployment to offline machines or to save into your own repository. Save-PSResource supports parameters like -AsNupkg and -IncludeXml to change what is downloaded. NuPkg files are special ZIP files that contain manifest information and are used with the NuGet package management system.

Save-PSResource -Name Universal -AsNupkg -Path .\universal.nupkg 
Code language: CSS (css)

List Installed Modules

You can use Get-PSResource to list modules, and other resources, that have been installed with PowerShellGet.

Get-PSResource

Uninstall a Module

You can use the Uninstall-PSResource cmdlet to uninstall a module.

Uninstall-PSResource -Name Universal

Publish a Module

You can publish modules, an other resources, to repositories using Publish-PSResource.

Publish-PSResource -Path .\universal -ApiKey 'Test'
Code language: JavaScript (javascript)

Working with Repositories in PowerShellGet v3

By default, you will have the PowerShell Gallery defined as a repository. It will not be trusted but you can use the -TrustRepository cmdlet on the *-PSResource cmdlets to avoid the prompt to trust the repository.

Install-PSResource -Name 'PendingReboot' -TrustRepository
Code language: JavaScript (javascript)

Trust a Repository

You can trust a repository by using the Set-PSResourceRepository cmdlet. You won’t be prompted to trust the repository with each call from now on.

Set-PSResourceRepository -Name PSGallery -Trusted
Code language: JavaScript (javascript)

Register a Repository

You can register a repository by using the Register-PSResourceRepository cmdlet.

Register-PSResourceRepository -Name Local -URL \\server\share

To reverse the change, use Unregister-PSResourceRepository.

Unregister-PSResourceRepository -Name Local

Find Resources with PowerShellGet v3

To find resources with PowerShellGet, you’ll use the Find-PSResource cmdlet.

Find-PSResource -Name Universal

Find Resources by Type

You can specify the -Type parameter to look for resources by type.

Find-PSResource -Name PSDscResources -Type DscResource

Find Resources by Tag

You can use the -Tag parameter to look up resources with tags.

Find-PSResource -Tag universal-dashboard

You can also use wildcard searches to find resources that contain a pattern.

Find-PSResource -Name Universal*

Backwards Compatibility

Since PowerShellGet v2 and v3 are very different, the PowerShell team has released a compatibility module so that you can continue to use the original syntax and commands.

You’ll need to install the CompatPowerShellGet module in order to use the previous commands with the new version of PowerShellGet.

Install-PSResource -Name CompatPowerShellGet 

Now, you can use cmdlets like Install-Module and it will map the command to Install-PSResource automatically.

Install-Module -Name dbatools -AllowPrerelease

Internally, this executes the following.

Install-PSResource -Name dbatools -Prerelease

The command will work as expected but you will see a warning.

Install-Module -Name dbatools -AllowPrerelease
WARNING: The cmdlet 'Install-Module' is deprecated, please use 'Install-PSResource'.
Code language: JavaScript (javascript)
Subscribe
Notify of
guest


0 Comments
Newest
Oldest Most Voted
Inline Feedbacks
View all comments

Certification Courses

DevOpsSchool has introduced a series of professional certification courses designed to enhance your skills and expertise in cutting-edge technologies and methodologies. Whether you are aiming to excel in development, security, or operations, these certifications provide a comprehensive learning experience. Explore the following programs:

DevOps Certification, SRE Certification, and DevSecOps Certification by DevOpsSchool

Explore our DevOps Certification, SRE Certification, and DevSecOps Certification programs at DevOpsSchool. Gain the expertise needed to excel in your career with hands-on training and globally recognized certifications.

0
Would love your thoughts, please comment.x
()
x