Редагувати

Поділитися через


Publish-PSResource

Publishes a specified module from the local computer to PSResource repository.

Syntax

Publish-PSResource
       [-ApiKey <String>]
       [-Repository <String>]
       [-Path] <String>
       [-DestinationPath <String>]
       [-Credential <PSCredential>]
       [-SkipDependenciesCheck]
       [-SkipModuleManifestValidate]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Publish-PSResource
       [-ApiKey <String>]
       [-Repository <String>]
       [-DestinationPath <String>]
       [-Credential <PSCredential>]
       [-SkipDependenciesCheck]
       [-SkipModuleManifestValidate]
       [-Proxy <Uri>]
       [-ProxyCredential <PSCredential>]
       -NupkgPath <String>
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

This cmdlet combines the functions of the Publish-Module and Publish-Script cmdlets from PowerShellGet v2. Publish-PSResource publishes a resource from the local computer to an online NuGet-based repository. You can specify the resource by a path containing the module or script resource files or by pointing a prepackaged .nupkg file.

Examples

Example 1

This example publishes the module TestModule to the repository registered with highest priority.

Publish-PSResource -Path c:\TestModule

Example 2

This example publishes the module TestModule to the PowerShell Gallery. The API key is a secret that's generated by the PowerShell Gallery for a user account.

Publish-PSResource -Path c:\TestModule -Repository PSGallery -APIKey '1234567'

Example 3

This example publishes the module Nupkg TestModule.nupkg to a repositroy named TestRepository.

Publish-PSResource -NupkgPath c:\TestModule.nupkg -Repository TestRepository

Parameters

-ApiKey

Specifies the API key that you want to use to publish a resource to the online gallery.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

Prompts you for confirmation before running the cmdlet.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Specifies a user account that has rights to a specific repository.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DestinationPath

Specifies the path where the NuGet package .nupkg file should be saved. This parameter can be used in conjunction with the Repository parameter to publish to a repository and also save the exact same package to the local file system.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ModulePrefix

This is a dynamic parameter that is only available on the command line when you have supplied the Path or Nupkg parameters and the Repository parameter for a ContainerRegistry repository.

The value of the parameter is pre-pended to the package name. This information is only used for publishing and isn't included in the package metadata. The module prefix controls the visibility of the module, for example: internal, public, staging.

This parameter is only used when publishing to the Microsoft Artifact Registry (MAR).

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NupkgPath

Path to the .nupkg file to be published. The .nupkg file could have been created by a previous run of Publish-PSResource with the DestinationPath parameter. Or, you can create the .nupkg file using the Compress-PSResource command.

This parameter was added in v1.1.0-preview2 of Microsoft.PowerShell.PSResourceGet.

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Path

The path to the module or script file or the path to a folder containing the module or script file to be published. The cmdlet packages all files in the folder into a .nupkg file before publishing to the repository.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Proxy

The URL to a proxy server used to access repositories outside of your network.

Type:Uri
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ProxyCredential

The credentials required to use the proxy server.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Repository

Specifies the repository to publish to.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipDependenciesCheck

Bypasses the default check that all dependencies are present in the target repository.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SkipModuleManifestValidate

Skips validating the module manifest before publishing.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Shows what would happen if the cmdlet runs. The cmdlet isn't run.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Inputs

None

Outputs

Object

Notes

The module defines pbres as an alias for Publish-PSResource.

Fileshare-based repository have no metadata about the resources. Therefore, there is no way to check for dependencies.