classicvalues / WSAProvider

A PackageManagement provider to find and install packages for Appx based packaging format

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Introduction

A PackageManagement provider to discover, install and inventory Windows Server App (WSA) packages. WSA is an APPX based installer for Windows Server. It is the only installer available on Nano Server. For more information on WSA, please read this blog.

Supported Platforms

Currently, the provider is supported on Nano Server Only

Cmdlets

Module introduces Find-AppxPackage cmdlet

Find-AppxPackage [[-Name] <string[]>] [-MinimumVersion <version>] [-MaximumVersion <version>] [-RequiredVersion <version>] [-Architecture <string>] [-ResourceId <string>] [-Source <string[]>] [<CommonParameters>]

It also supports following PackageManagement cmdlets

Find-Package
Get-Package
Install-Package
Save-Package
Uninstall-Package
Register-PackageSource
UnRegister-PackageSource
Get-PackageSource
Set-PackageSource

How to Install

Install-PackageProvider -Name WSAProvider 
Import-PackageProvider WSAProvider

List all installed Providers

Get-PackageProvider

How to use

Register a package source for WSA packages. It can either be a local folder or a network share

Register-PackageSource -ProviderName WSAProvider -Name WSAPackageSource -Location <WSAPackageLocation>

Discover available WSA Packages. Wildcard is supported for the WSA package name.

Find-Package -Provider WSAProvider 

or

Find-AppxPackage

Install WSA package. Pipeline from find-package is supported.

Install-Package -ProviderName WSAProvider -Name <WSAPackageName>

Get list of installed packages

Get-Package -ProviderName WSAProvider

UnInstall WSA Package

 UnInstall-Package -Name <WSAPackage> -ProviderName WSAProvider

More examples

Register local package source

 Register-PackageSource -Name Local -ProviderName WSAProvider -Location C:\temp\

Register network share as package source

 New-PSDrive -Name Z -PSProvider FileSystem -Root \\Mydevbox2\WSAPackages -Credential mytestuser
 Register-PackageSource -Name dev2 -ProviderName WSAProvider -Location Z:\

Find WSA packages from a specific source

	Find-Package -ProviderName WSAProvider -Source dev2

Find WSA package with the given name(with or without extension)

	Find-Package -ProviderName WSAProvider -Name TestPackage
	Find-Package -ProviderName WSAProvider -Name TestPackage.appx
	Find-Package -source dev2 -name TestP*

Find WSA packages with given Resource Id

	Find-Package -ProviderName WSAProvider -ResourceId NorthAmerica

Find WSA packages with given Architecture

	Find-Package -ProviderName WSAProvider -Architecture x64

Find WSA package that have the given version

	Find-Package -ProviderName WSAProvider -RequiredVersion 1.4.0.0 -Name TestPackage.appx

Installing WSA package with the given name(with or without extension)

	Install-Package -providername WSAProvider -Name testpackage
	Install-Package -providername WSAProvider -Name testpackage.appx

Install WSA package that have the given version

	Install-Package -Name TestPackage.appx -requiredVersion 1.4.0.0 -Source Local

Install all the WSA package from the search result

	Find-package -ProviderName WSAProvider | Install-Package

Save the latest version of WSA package to the directory that matches the LiteralPath

	Save-Package -ProviderName WSAProvider -Name TestPackage -LiteralPath C:\temp\

All results of the find will be saved in the given LiteralPath

 Find-AppxPackage | Save-Package -LiteralPath C:\temp\

About

A PackageManagement provider to find and install packages for Appx based packaging format

License:MIT License


Languages

Language:PowerShell 100.0%