Condividi tramite


Publish-Module

Pubblica un modulo specificato dal computer locale in una raccolta online.

Sintassi

ModuleNameParameterSet (Impostazione predefinita)

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>]

ModulePathParameterSet

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 cmdlet Publish-Module pubblica un modulo in una raccolta basata su NuGet online usando una chiave API archiviata come parte del profilo di un utente nella raccolta. È possibile specificare il modulo da pubblicare in base al nome del modulo o 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.

La pubblicazione di un modulo richiede metadati visualizzati nella pagina della raccolta per il modulo. I metadati obbligatori 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.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ModuleNameParameterSet
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Confirm

Richiede conferma prima di eseguire il Publish-Module.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:cfr

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Credential

Specifica un account utente con diritti per pubblicare un modulo per un provider di pacchetti o un'origine specificati.

Proprietà dei parametri

Tipo:PSCredential
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-Exclude

Definisce i file da escludere dal modulo pubblicato.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ModuleNameParameterSet
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Force

Forza l'esecuzione del comando senza chiedere conferma dell'utente.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-FormatVersion

Accetta solo valori validi specificati dall'attributo ValidateSet .

Per altre informazioni, vedere di dichiarazione dell'attributo ValidateSet e ValidateSetAttribute.

Proprietà dei parametri

Tipo:Version
Valore predefinito:None
Valori accettati:2.0
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-IconUri

Specifica l'URL di un'icona per il modulo. L'icona specificata viene visualizzata nella pagina Web della raccolta per il modulo.

Proprietà dei parametri

Tipo:Uri
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-LicenseUri

Specifica l'URL delle condizioni di licenza per il modulo da pubblicare.

Proprietà dei parametri

Tipo:Uri
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Name

Specifica il nome del modulo da pubblicare. Publish-Module cerca il nome del modulo specificato in $Env:PSModulePath.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ModuleNameParameterSet
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-NuGetApiKey

Specifica la chiave API da 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.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti: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.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ModulePathParameterSet
Posizione:Named
Obbligatorio:True
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:True
Valore dagli argomenti rimanenti:False

-ProjectUri

Specifica l'URL di una pagina Web relativa a questo progetto.

Proprietà dei parametri

Tipo:Uri
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-ReleaseNotes

Specifica una stringa contenente note sulla versione o commenti che si desidera rendere disponibili agli utenti di questa versione del modulo.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Repository

Specifica il nome descrittivo di un repository registrato eseguendo Register-PSRepository. Il repository deve avere un PublishLocation, che è un URI NuGet valido. È possibile impostare PublishLocation eseguendo Set-PSRepository.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-RequiredVersion

Specifica la versione esatta di un singolo modulo da pubblicare.

Proprietà dei parametri

Tipo:String
Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

ModuleNameParameterSet
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-SkipAutomaticTags

Rimuove i comandi e le risorse dall'essere inclusi come tag. Ignora l'aggiunta automatica di tag a un modulo.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-Tags

Aggiunge uno o più tag al modulo che si desidera pubblicare. I tag di esempio includono DesiredStateConfiguration, DSC, DSCResourceKit o PSModule. Separare più tag con virgole.

Proprietà dei parametri

Tipo:

String[]

Valore predefinito:None
Supporta i caratteri jolly:False
DontShow:False

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

-WhatIf

Mostra cosa accadrebbe se il Publish-Module venisse eseguito. Il cmdlet non viene eseguito.

Proprietà dei parametri

Tipo:SwitchParameter
Valore predefinito:False
Supporta i caratteri jolly:False
DontShow:False
Alias:Wi

Set di parametri

(All)
Posizione:Named
Obbligatorio:False
Valore dalla pipeline:False
Valore dalla pipeline in base al nome della proprietà:False
Valore dagli argomenti rimanenti:False

CommonParameters

Questo cmdlet supporta i parametri comuni: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Per altre informazioni, vedi about_CommonParameters.

Input

String

PSCredential

Output

Object

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 Transport Layer Security (TLS). Se non si usa TLS 1.2 o versione successiva, si riceverà un errore quando si prova ad accedere a PowerShell Gallery. Usare il comando seguente per assicurarsi di usare TLS 1.2:

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

Per altre informazioni, vedere l'annuncio nel blog di PowerShell.

La pubblicazione di un modulo richiede metadati visualizzati nella pagina della raccolta per il modulo. I metadati obbligatori 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 parametri Publish-Module, ad esempio Tag, ReleaseNote, IconUri, ProjectUrie LicenseUri. Per altre informazioni, vedere valori del manifesto del pacchetto che influisce sull'interfaccia utente di PowerShell Gallery.