Publish-Module
Pubblica un modulo specificato dal computer locale in una raccolta online.
Sintassi
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>]
Descrizione
Il Publish-Module
cmdlet pubblica un modulo in una raccolta online basata su NuGet usando una chiave API archiviata come parte del profilo di un utente nella raccolta. È possibile specificare il modulo per la pubblicazione in base al nome del modulo o in base al percorso della cartella contenente il modulo.
Quando si specifica un modulo in base al nome, Publish-Module
pubblica il primo modulo che verrebbe trovato eseguendo Get-Module -ListAvailable <Name>
. Se si specifica una versione minima di un modulo da pubblicare, Publish-Module
pubblica il primo modulo con una versione maggiore o uguale alla versione minima specificata.
Per la pubblicazione di un modulo sono necessari i metadati visualizzati nella pagina della raccolta relativa al modulo. I metadati necessari includono il nome del modulo, la versione, la descrizione e l'autore. Anche se la maggior parte dei metadati viene ricavata dal manifesto del modulo, alcuni metadati devono essere specificati nei Publish-Module
parametri, ad esempio Tag, ReleaseNote, IconUri, ProjectUri e LicenseUri, perché questi parametri corrispondono ai campi in una raccolta basata su NuGet.
I parametri che accettano numeri di versione del modulo prevedono stringhe formattate come numeri di versione.
- I numeri di versione standard hanno un formato in
x.y.z
cui x, y e z sono numeri - Le versioni non definitive hanno un formato in
x.y.z-<prerelease_label>
cui la<prerelease_label>
stringa è arbitraria assegnata a tale versione.
Esempio
Esempio 1: Pubblicare un modulo
In questo esempio MyDscModule viene pubblicato nella raccolta online usando la chiave API per indicare l'account della raccolta online del proprietario del modulo. Se MyDscModule non è un modulo manifesto valido che specifica un nome, una versione, una descrizione e un autore, si verifica un errore.
Publish-Module -Name "MyDscModule" -NuGetApiKey "11e4b435-6cb4-4bf7-8611-5162ed75eb73"
Esempio 2: Pubblicare un modulo con i metadati della raccolta
In questo esempio MyDscModule viene pubblicato nella raccolta online usando la chiave API per indicare l'account della raccolta del proprietario del modulo. I metadati aggiuntivi forniti vengono visualizzati nella pagina Web del modulo nella raccolta. Il proprietario aggiunge due tag di ricerca per il modulo, correlati ad Active Directory; viene aggiunta una breve nota sulla versione. Se MyDscModule non è un modulo manifesto valido che specifica un nome, una versione, una descrizione e un autore, si verifica un errore.
$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
Parametri
-AllowPrerelease
Consente la pubblicazione dei moduli contrassegnati come versione preliminare.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Richiede conferma prima di eseguire .Publish-Module
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Specifica un account utente con diritti per pubblicare un modulo per un provider di pacchetti o un'origine specificati.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
Definisce i file da escludere dal modulo pubblicato.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Forza l'esecuzione del comando senza chiedere conferma all'utente.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatVersion
Accetta solo valori validi specificati dall'attributo ValidateSet .
Per altre informazioni, vedere ValidateSet Attribute Declaration e ValidateSetAttribute.
Type: | Version |
Accepted values: | 2.0 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IconUri
Specifica l'URL di un'icona per il modulo. L'icona specificata viene visualizzata nella pagina Web della raccolta per il modulo.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
Specifica l'URL delle condizioni di licenza per il modulo da pubblicare.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Specifica il nome del modulo da pubblicare. Publish-Module
cerca il nome del modulo specificato in $Env:PSModulePath
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NuGetApiKey
Specifica la chiave API che si vuole usare per pubblicare un modulo nella raccolta online. La chiave API fa parte del profilo nella raccolta online e si trova nella pagina dell'account utente nella raccolta. La chiave API è una funzionalità specifica di NuGet.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Specifica il percorso del modulo da pubblicare. Questo parametro accetta il percorso della cartella che contiene il modulo. La cartella deve avere lo stesso nome del modulo.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProjectUri
Specifica l'URL di una pagina Web relativa a questo progetto.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
Specifica una stringa contenente note sulla versione o commenti che si desidera rendere disponibili agli utenti di questa versione del modulo.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Repository
Specifica il nome descrittivo di un repository registrato eseguendo Register-PSRepository
. Il repository deve avere un'URI PublishLocation, che è un URI NuGet valido.
PublishLocation può essere impostato eseguendo Set-PSRepository
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
Specifica la versione esatta di un singolo modulo da pubblicare.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipAutomaticTags
Rimuove i comandi e le risorse dall'essere inclusi come tag. Ignora l'aggiunta automatica di tag a un modulo.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
Aggiunge uno o più tag al modulo che si stanno pubblicando. I tag di esempio includono DesiredStateConfiguration, DSC, DSCResourceKit o PSModule. Separare più tag con virgole.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Mostra cosa accadrebbe se l'esecuzione.Publish-Module
Il cmdlet non viene eseguito.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Input
Output
Note
PowerShell include gli alias seguenti per Publish-Module
:
- Tutte le piattaforme:
pumo
Publish-Module
viene eseguito in PowerShell 3.0 o versioni successive di PowerShell, in Windows 7 o Windows 2008 R2 e versioni successive di Windows.
Importante
A partire da aprile 2020 PowerShell Gallery non supporta più le versioni 1.0 e 1.1 di TLS (Transport Layer Security). Se non si usa TLS 1.2 o versione successiva, si riceverà un errore quando si tenta di accedere a PowerShell Gallery. Per verificare di usare TLS 1.2, eseguire il comando seguente:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Per altre informazioni, vedere l'annuncio corrispondente nel blog di PowerShell.
Per la pubblicazione di un modulo sono necessari i metadati visualizzati nella pagina della raccolta relativa al modulo. I metadati necessari includono il nome del modulo, la versione, la descrizione e l'autore. La maggior parte dei metadati viene ricavata dal manifesto del modulo, ma alcuni metadati possono essere specificati nei Publish-Module
parametri, ad esempio Tag, ReleaseNote, IconUri, ProjectUri e LicenseUri. Per altre informazioni, vedere Valori del manifesto del pacchetto che influisce sull'interfaccia utente di PowerShell Gallery.