Publish-Module

Hiermee publiceert u een opgegeven module van de lokale computer naar een onlinegalerie.

Syntax

Publish-Module
       -Name <String>
       [-RequiredVersion <String>]
       [-NuGetApiKey <String>]
       [-Repository <String>]
       [-Credential <PSCredential>]
       [-FormatVersion <Version>]
       [-ReleaseNotes <String[]>]
       [-Tags <String[]>]
       [-LicenseUri <Uri>]
       [-IconUri <Uri>]
       [-ProjectUri <Uri>]
       [-Exclude <String[]>]
       [-Force]
       [-AllowPrerelease]
       [-SkipAutomaticTags]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Publish-Module
       -Path <String>
       [-NuGetApiKey <String>]
       [-Repository <String>]
       [-Credential <PSCredential>]
       [-FormatVersion <Version>]
       [-ReleaseNotes <String[]>]
       [-Tags <String[]>]
       [-LicenseUri <Uri>]
       [-IconUri <Uri>]
       [-ProjectUri <Uri>]
       [-Force]
       [-SkipAutomaticTags]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

De Publish-Module cmdlet publiceert een module naar een online op NuGet gebaseerde galerie met behulp van een API-sleutel, die is opgeslagen als onderdeel van het profiel van een gebruiker in de galerie. U kunt de te publiceren module opgeven op basis van de naam van de module of op basis van het pad naar de map die de module bevat.

Wanneer u een module opgeeft op naam, Publish-Module publiceert u de eerste module die zou worden gevonden door uit te voeren Get-Module -ListAvailable <Name>. Als u een minimale versie van een module opgeeft die u wilt publiceren, Publish-Module publiceert u de eerste module met een versie die groter is dan of gelijk is aan de minimale versie die u hebt opgegeven.

Voor het publiceren van een module zijn metagegevens vereist die worden weergegeven op de galeriepagina voor de module. Vereiste metagegevens omvatten de modulenaam, versie, beschrijving en auteur. Hoewel de meeste metagegevens afkomstig zijn uit het modulemanifest, moeten sommige metagegevens worden opgegeven in Publish-Module parameters, zoals Tag, ReleaseNote, IconUri, ProjectUri en LicenseUri, omdat deze parameters overeenkomen met velden in een op NuGet gebaseerde galerie.

De parameters die moduleversienummers gebruiken, verwachten tekenreeksen die zijn opgemaakt als versienummers.

  • Standaardversienummers hebben een notatie waarbij x.y.z x, y en z getallen zijn
  • Voorlopige versies hebben een indeling waarin x.y.z-<prerelease_label> de <prerelease_label> willekeurige tekenreeks is toegewezen aan die release.

Voorbeelden

Voorbeeld 1: Een module publiceren

In dit voorbeeld wordt MyDscModule gepubliceerd naar de onlinegalerie met behulp van de API-sleutel om het online galerieaccount van de eigenaar van de module aan te geven. Als MyDscModule geen geldige manifestmodule is die een naam, versie, beschrijving en auteur opgeeft, treedt er een fout op.

Publish-Module -Name "MyDscModule" -NuGetApiKey "11e4b435-6cb4-4bf7-8611-5162ed75eb73"

Voorbeeld 2: Een module publiceren met galeriemetagegevens

In dit voorbeeld wordt MyDscModule gepubliceerd naar de onlinegalerie met behulp van de API-sleutel om het galerieaccount van de eigenaar van de module aan te geven. De aanvullende metagegevens worden weergegeven op de webpagina voor de module in de galerie. De eigenaar voegt twee zoektags toe voor de module, die betrekking heeft op Active Directory; er wordt een korte releaseopmerking toegevoegd. Als MyDscModule geen geldige manifestmodule is die een naam, versie, beschrijving en auteur opgeeft, treedt er een fout op.

$parameters = @{
    Name        = "MyDscModule"
    NuGetApiKey = "11e4b435-6cb4-4bf7-8611-5162ed75eb73"
    LicenseUri  = "http://contoso.com/license"
    Tag         = "Active Directory","DSC"
    ReleaseNote = "Updated the ActiveDirectory DSC Resources to support adding users."
}
Publish-Module @parameters

Parameters

-AllowPrerelease

Hiermee staat u toe dat modules die zijn gemarkeerd als voorlopige versie, worden gepubliceerd.

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

-Confirm

Vraagt u om bevestiging voordat u de Publish-Moduleuitvoert.

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

-Credential

Hiermee geeft u een gebruikersaccount op dat rechten heeft om een module te publiceren voor een opgegeven pakketprovider of bron.

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

-Exclude

Definieert bestanden die moeten worden uitgesloten van de gepubliceerde module.

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

-Force

Hiermee wordt de opdracht uitgevoerd zonder dat om bevestiging van de gebruiker wordt gevraagd.

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

-FormatVersion

Accepteert alleen geldige waarden die zijn opgegeven door het kenmerk ValidateSet .

Zie ValidateSet Attribute Declaration en ValidateSetAttribute voor meer informatie.

Type:Version
Accepted values:2.0
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IconUri

Hiermee geeft u de URL van een pictogram voor de module. Het opgegeven pictogram wordt weergegeven op de webpagina van de galerie voor de module.

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

-LicenseUri

Hiermee geeft u de URL van licentievoorwaarden op voor de module die u wilt publiceren.

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

-Name

Hiermee geeft u de naam van de module die u wilt publiceren. Publish-Module zoekt naar de opgegeven modulenaam in $Env:PSModulePath.

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

-NuGetApiKey

Hiermee geeft u de API-sleutel op die u wilt gebruiken om een module te publiceren in de onlinegalerie. De API-sleutel maakt deel uit van uw profiel in de onlinegalerie en vindt u op de pagina van uw gebruikersaccount in de galerie. De API-sleutel is nu-specifieke functionaliteit.

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

-Path

Hiermee geeft u het pad naar de module die u wilt publiceren. Deze parameter accepteert het pad naar de map die de module bevat. De map moet dezelfde naam hebben als de module.

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

-ProjectUri

Hiermee geeft u de URL van een webpagina over dit project.

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

-ReleaseNotes

Hiermee geeft u een tekenreeks op met releaseopmerkingen of opmerkingen die beschikbaar moeten zijn voor gebruikers van deze versie van de module.

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

-Repository

Hiermee geeft u de beschrijvende naam op van een opslagplaats die is geregistreerd door uit te voeren Register-PSRepository. De opslagplaats moet een PublishLocation hebben. Dit is een geldige NuGet-URI. De PublishLocation kan worden ingesteld door uit te voeren Set-PSRepository.

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

-RequiredVersion

Hiermee geeft u de exacte versie van één module te publiceren.

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

-SkipAutomaticTags

Hiermee worden opdrachten en resources niet opgenomen als tags. Hiermee wordt het automatisch toevoegen van tags aan een module overgeslagen.

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

-Tags

Hiermee voegt u een of meer tags toe aan de module die u publiceert. Voorbeelden van tags zijn DesiredStateConfiguration, DSC, DSCResourceKit of PSModule. Scheid meerdere tags met komma's.

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

-WhatIf

Hier ziet u wat er gebeurt als de Publish-Module uitvoeringen worden uitgevoerd. De cmdlet wordt niet uitgevoerd.

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

Invoerwaarden

String

PSCredential

Uitvoerwaarden

Object

Notities

PowerShell bevat de volgende aliassen voor Publish-Module:

  • Alle platformen:
    • pumo

Publish-Module wordt uitgevoerd op PowerShell 3.0 of latere versies van PowerShell, op Windows 7 of Windows 2008 R2 en latere versies van Windows.

Belangrijk

Vanaf april 2020 biedt de PowerShell Gallery geen ondersteuning meer voor TLS-versies (Transport Layer Security) 1.0 en 1.1. Als u tls 1.2 of hoger niet gebruikt, krijgt u een foutmelding wanneer u toegang probeert te krijgen tot de PowerShell Gallery. Gebruik de volgende opdracht om ervoor te zorgen dat u TLS 1.2 gebruikt:

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Zie de aankondiging in de PowerShell-blog voor meer informatie.

Voor het publiceren van een module zijn metagegevens vereist die worden weergegeven op de galeriepagina voor de module. Vereiste metagegevens omvatten de modulenaam, versie, beschrijving en auteur. De meeste metagegevens zijn afkomstig uit het modulemanifest, maar sommige metagegevens kunnen worden opgegeven in Publish-Module parameters, zoals Tag, ReleaseNote, IconUri, ProjectUri en LicenseUri. Zie Manifestwaarden van pakketten die van invloed zijn op de gebruikersinterface van PowerShell Gallery voor meer informatie.