Publish-Module
Publikuje określony moduł z komputera lokalnego do galerii online.
Składnia
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>]
Opis
Polecenie Publish-Module
cmdlet publikuje moduł w galerii opartej na nuGet online przy użyciu klucza interfejsu API przechowywanego jako część profilu użytkownika w galerii. Możesz określić moduł do opublikowania według nazwy modułu lub ścieżki do folderu zawierającego moduł.
Po określeniu modułu według nazwy publikuje pierwszy moduł, Publish-Module
który zostanie znaleziony, uruchamiając polecenie Get-Module -ListAvailable <Name>
. Jeśli określisz minimalną wersję modułu do opublikowania, Publish-Module
opublikuje pierwszy moduł z wersją większą lub równą określonej minimalnej wersji.
Opublikowanie modułu wymaga metadanych wyświetlanych na stronie galerii modułu. Wymagane metadane obejmują nazwę modułu, wersję, opis i autora. Chociaż większość metadanych jest pobierana z manifestu modułu, niektóre metadane muszą być określone w Publish-Module
parametrach, takich jak Tag, ReleaseNote, IconUri, ProjectUri i LicenseUri, ponieważ te parametry pasują do pól w galerii opartej na nuGet.
Parametry, które przyjmują numery wersji modułu, oczekują ciągów sformatowanych jako numery wersji.
- Numery wersji standardowych mają format
x.y.z
, w którym x, y i z to liczby - Wersje wstępne mają format
x.y.z-<prerelease_label>
, w<prerelease_label>
którym jest przypisany dowolny ciąg do tej wersji.
Przykłady
Przykład 1. Publikowanie modułu
W tym przykładzie moduł MyDscModule jest publikowany w galerii online przy użyciu klucza interfejsu API w celu wskazania konta galerii online właściciela modułu. Jeśli moduł MyDscModule nie jest prawidłowym modułem manifestu określającym nazwę, wersję, opis i autora, wystąpi błąd.
Publish-Module -Name "MyDscModule" -NuGetApiKey "11e4b435-6cb4-4bf7-8611-5162ed75eb73"
Przykład 2. Publikowanie modułu z metadanymi galerii
W tym przykładzie moduł MyDscModule jest publikowany w galerii online przy użyciu klucza interfejsu API w celu wskazania konta właściciela modułu galerii. Dodatkowe metadane są wyświetlane na stronie internetowej modułu w galerii. Właściciel dodaje dwa tagi wyszukiwania dla modułu, powiązane z usługą Active Directory; Zostanie dodana krótka informacja o wersji. Jeśli moduł MyDscModule nie jest prawidłowym modułem manifestu określającym nazwę, wersję, opis i autora, wystąpi błąd.
$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
Parametry
-AllowPrerelease
Umożliwia publikowanie modułów oznaczonych jako wstępnie.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
Monituje o potwierdzenie przed uruchomieniem polecenia Publish-Module
.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Określa konto użytkownika, które ma uprawnienia do publikowania modułu dla określonego dostawcy pakietu lub źródła.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
Definiuje pliki do wykluczenia z opublikowanego modułu.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Wymusza uruchomienie polecenia bez monitowania o potwierdzenie użytkownika.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatVersion
Akceptuje tylko prawidłowe wartości określone przez atrybut ValidateSet .
Aby uzyskać więcej informacji, zobacz ValidateSet Attribute Declaration i ValidateSetAttribute.
Type: | Version |
Accepted values: | 2.0 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IconUri
Określa adres URL ikony modułu. Określona ikona jest wyświetlana na stronie internetowej galerii dla modułu.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
Określa adres URL postanowień licencyjnych dla modułu, który chcesz opublikować.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Określa nazwę modułu, który chcesz opublikować. Publish-Module
wyszukuje określoną nazwę modułu w pliku $Env:PSModulePath
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NuGetApiKey
Określa klucz interfejsu API, którego chcesz użyć do opublikowania modułu w galerii online. Klucz interfejsu API jest częścią Twojego profilu w galerii online i można go znaleźć na stronie twojego konta użytkownika w galerii. Klucz interfejsu API jest funkcją specyficzną dla narzędzia NuGet.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
Określa ścieżkę do modułu, który chcesz opublikować. Ten parametr akceptuje ścieżkę do folderu zawierającego moduł. Folder musi mieć taką samą nazwę jak moduł.
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProjectUri
Określa adres URL strony internetowej dotyczącej tego projektu.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
Określa ciąg zawierający informacje o wersji lub komentarze, które mają być dostępne dla użytkowników tej wersji modułu.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Repository
Określa przyjazną nazwę repozytorium, które zostało zarejestrowane przez uruchomienie polecenia Register-PSRepository
. Repozytorium musi mieć wartość PublishLocation, która jest prawidłowym identyfikatorem URI NuGet.
Polecenie PublishLocation można ustawić, uruchamiając polecenie Set-PSRepository
.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
Określa dokładną wersję pojedynczego modułu do opublikowania.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipAutomaticTags
Usuwa polecenia i zasoby z dołączania ich jako tagów. Pomija automatyczne dodawanie tagów do modułu.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
Dodaje co najmniej jeden tag do publikowanego modułu. Przykładowe tagi obejmują DesiredStateConfiguration, DSC, DSCResourceKit lub PSModule. Oddziel wiele tagów przecinkami.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
Pokazuje, co się stanie, jeśli przebiegi zostaną uruchomione Publish-Module
. Polecenie cmdlet nie zostało uruchomione.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Dane wejściowe
Dane wyjściowe
Uwagi
Program PowerShell zawiera następujące aliasy dla Publish-Module
programu :
- Wszystkie platformy:
pumo
Publish-Module
działa w wersjach programu PowerShell 3.0 lub nowszych programu PowerShell w systemach Windows 7 lub Windows 2008 R2 i nowszych wersjach systemu Windows.
Ważne
Od kwietnia 2020 r. Galeria programu PowerShell nie obsługuje już protokołu Transport Layer Security (TLS) w wersji 1.0 i 1.1. Jeśli nie używasz protokołu TLS 1.2 lub nowszego, podczas próby uzyskania dostępu do Galeria programu PowerShell zostanie wyświetlony błąd. Użyj następującego polecenia, aby upewnić się, że używasz protokołu TLS 1.2:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Aby uzyskać więcej informacji, zobacz ogłoszenie w blogu programu PowerShell.
Opublikowanie modułu wymaga metadanych wyświetlanych na stronie galerii modułu. Wymagane metadane obejmują nazwę modułu, wersję, opis i autora. Większość metadanych jest pobierana z manifestu modułu, ale niektóre metadane można określić w Publish-Module
parametrach, takich jak Tag, ReleaseNote, IconUri, ProjectUri i LicenseUri. Aby uzyskać więcej informacji, zobacz Package manifest values that impact the Galeria programu PowerShell UI (Wartości manifestu pakietu wpływające na interfejs użytkownika Galeria programu PowerShell).