Publish-Module
指定したモジュールをローカル コンピューターからオンライン ギャラリーに発行します。
構文
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>]
説明
コマンドレットは Publish-Module
、ユーザーのプロファイルの一部としてギャラリーに格納されている API キーを使用して、オンライン NuGet ベースのギャラリーにモジュールを発行します。 モジュールの名前、またはモジュールを含むフォルダーへのパスのいずれかでモジュールを発行するように指定できます。
モジュールを名前で指定すると、 Publish-Module
を実行 Get-Module -ListAvailable <Name>
して見つかった最初のモジュールを発行します。 発行するモジュールの最小バージョンを指定した場合は、 Publish-Module
指定した最小バージョン以上のバージョンで最初のモジュールを発行します。
モジュールを発行するには、モジュールのギャラリー ページに表示されるメタデータが必要です。 必要なメタデータには、モジュールの名前、バージョン、説明、作成者が含まれています。 ほとんどのメタデータはモジュール マニフェストから取得されますが、これらのパラメーターは NuGet ベースのギャラリー内の Publish-Module
フィールドと一致するため、 Tag、 ReleaseNote、 IconUri、 ProjectUri、 LicenseUri などのパラメーターで一部のメタデータを指定する必要があります。
モジュールのバージョン番号を受け取るパラメーターには、バージョン番号として書式設定された文字列が必要です。
- 標準バージョン番号の形式
x.y.z
は、x、y、z は数値です - プレリリース バージョンには の形式
x.y.z-<prerelease_label>
があります。ここで、<prerelease_label>
はそのリリースに割り当てられた任意の文字列です。
例
例 1: モジュールを発行する
この例では、MyDscModule は、API キーを使用してモジュール所有者のオンライン ギャラリー アカウントを示すことによって、オンライン ギャラリーに発行されます。 MyDscModule が、名前、バージョン、説明、および作成者を指定する有効なマニフェスト モジュールでない場合は、エラーが発生します。
Publish-Module -Name "MyDscModule" -NuGetApiKey "11e4b435-6cb4-4bf7-8611-5162ed75eb73"
例 2: ギャラリー メタデータを含むモジュールを発行する
この例では、MyDscModule は、API キーを使用してモジュール所有者のギャラリー アカウントを示すことによって、オンライン ギャラリーに発行されます。 提供された追加のメタデータは、ギャラリー内のモジュールの Web ページに表示されます。 所有者は、モジュールに対して 2 つの検索タグを追加し、Active Directory に関連付けます。簡単なリリース ノートが追加されました。 MyDscModule が、名前、バージョン、説明、および作成者を指定する有効なマニフェスト モジュールでない場合は、エラーが発生します。
$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
パラメーター
-AllowPrerelease
プレリリースとしてマークされたモジュールの発行を許可します。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Confirm
を実行する前に、確認を求めるメッセージが表示されます Publish-Module
。
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
指定したパッケージ プロバイダーまたはソースのモジュールを発行する権限を持つユーザー アカウントを指定します。
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
発行済みモジュールから除外するファイルを定義します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
ユーザーに確認せずに、直ちにコマンドを実行します。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatVersion
ValidateSet 属性で指定された有効な値のみを受け入れます。
詳細については、「 ValidateSet 属性宣言 」と 「ValidateSetAttribute」を参照してください。
Type: | Version |
Accepted values: | 2.0 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IconUri
モジュールのアイコンの URL を指定します。 指定したアイコンが、モジュールのギャラリー Web ページに表示されます。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LicenseUri
発行するモジュールのライセンス条項の URL を指定します。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
発行するモジュールの名前を指定します。 Publish-Module
で指定したモジュール名を $Env:PSModulePath
検索します。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-NuGetApiKey
モジュールをオンライン ギャラリーに発行するために使用する API キーを指定します。 API キーは、オンライン ギャラリーのプロファイルの一部であり、ギャラリーのユーザー アカウント ページにあります。 API キーは、NuGet 固有の機能です。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
発行するモジュールへのパスを指定します。 このパラメーターは、モジュールを含むフォルダーへのパスを受け入れます。 フォルダーの名前はモジュールと同じである必要があります。
Type: | String |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProjectUri
このプロジェクトに関する Web ページの URL を指定します。
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReleaseNotes
このバージョンのモジュールのユーザーが使用できるようにするリリース ノートまたはコメントを含む文字列を指定します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Repository
を実行 Register-PSRepository
して登録されているリポジトリのフレンドリ名を指定します。 リポジトリには、有効な NuGet URI である PublishLocation が必要です。
PublishLocation は、 を実行Set-PSRepository
して設定できます。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
発行する 1 つのモジュールの正確なバージョンを指定します。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SkipAutomaticTags
コマンドとリソースをタグとして含めずに削除します。 モジュールへのタグの自動的な追加をスキップします。
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tags
発行するモジュールに 1 つ以上のタグを追加します。 タグの例としては、DesiredStateConfiguration、DSC、DSCResourceKit、PSModule などがあります。 複数のタグをコンマで区切ります。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WhatIf
が実行された場合の動作を Publish-Module
示します。 このコマンドレットは実行されません。
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
入力
出力
メモ
PowerShell には、 の次のエイリアスが Publish-Module
含まれています。
- すべてのプラットフォーム:
pumo
Publish-Module
は、PowerShell の PowerShell 3.0 以降のリリース、Windows 7 または Windows 2008 R2 以降のリリースの Windows で実行されます。
重要
2020 年 4 月時点で、PowerShell ギャラリーでは、トランスポート層セキュリティ (TLS) バージョン 1.0 および 1.1 がサポートされなくなります。 TLS 1.2 以降を使用していない場合、PowerShell ギャラリーにアクセスしようとするとエラーが発生します。 次のコマンドを使用して、確実に TLS 1.2 を使用するようにします。
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
詳細については、PowerShell ブログのお知らせを参照してください。
モジュールを発行するには、モジュールのギャラリー ページに表示されるメタデータが必要です。 必要なメタデータには、モジュールの名前、バージョン、説明、作成者が含まれています。 ほとんどのメタデータはモジュール マニフェストから取得されますが、一部のメタデータは、Tag、ReleaseNote、IconUri、ProjectUri、LicenseUri などのパラメーターでPublish-Module
指定できます。 詳細については、「PowerShell ギャラリー UI に影響するパッケージ マニフェスト値」を参照してください。
関連リンク
PowerShellGet