PowerShell ギャラリー UI に影響を与えるパッケージ メタデータの値

この記事では、パッケージ内のメタデータが PowerShell ギャラリーでどのように使用されるかについて説明します。 モジュールの場合、メタデータはモジュール マニフェストに格納されます。 スクリプトの場合、メタデータはコメントベースのキーワードを使用して格納されます。 このメタデータを作成または更新するには、次のコマンドレットを使用します。

次の一覧に、モジュール マニフェストによって制御される PowerShell ギャラリー パッケージ ページの UI 要素を示します。

  • タイトル - ギャラリーに公開されたパッケージの名前。

  • バージョン - 表示されるバージョンはメタデータ内のバージョン文字列で、指定されている場合、プレリリース ラベルです。 指定したプレリリース文字列が ModuleVersion に追加されます。 モジュール内のプレリリース文字列の詳細については、「プレリリース モジュールのバージョン」を参照してください。

  • 説明 - モジュール マニフェストの説明です。

  • ライセンス同意リクエスト - モジュールはユーザーのライセンス同意をリクエストできます。そのためには、RequireLicenseAcceptance = $true を設定し、LicenseURI を指定し、モジュール フォルダーのルートに license.txt ファイルを置きます。 詳細については、「ライセンス同意リクエスト」を参照してください。

  • リリース ノート - この情報は、PSData\PrivateData の下の「ReleaseNotes」セクションにあります。

  • 所有者 - 所有者は、パッケージを更新できる PowerShell ギャラリー内のユーザーの一覧です。 パッケージ マニフェストには、所有者の一覧は含まれていません。 他のドキュメントで、アイテムの所有者を管理する方法について説明しています。

  • 作成者 - これは、モジュール マニフェストに作成者として含まれています。 [作成者] フィールドは、パッケージに関連する会社や組織を指定する場合によく使用されます。

  • 著作権 - モジュール マニフェストの [著作権] フィールドです。

  • ファイル一覧 - PowerShell ギャラリーへのパッケージの公開時に、このファイル一覧が作成されます。 マニフェストの情報で制御することはできません。 PowerShell ギャラリーは、各パッケージのファイル一覧に表示される .nuspec ファイルを作成します。 このファイルは、システム上のパッケージと共にはインストールされません。 これはパッケージの NuGet パッケージ マニフェストであり、無視してかまいません。

  • タグ - タグはモジュール マニフェストの PrivateData\PSData の下に含まれています。 タグには「タグの詳細」セクションに説明されている、特定の要件と意味があります。

  • コマンドレット - モジュール マニフェストの CmdletsToExport で指定されます。 ワイルドカード * を使用するのではなく、コマンドレット名を明示的に一覧表示することをお勧めします。 一覧を用意すると、モジュール読み込みのパフォーマンスが向上します。

  • 関数 - モジュール マニフェストの FunctionsToExport で指定されます。 ワイルドカード * を使用するのではなく、コマンドレット名を明示的に一覧表示することをお勧めします。 一覧を用意すると、モジュール読み込みのパフォーマンスが向上します。

  • DSC リソース - マニフェストの DscResourcesToExport で指定されます。 この値は、PowerShell 5.0 以降のモジュールでのみサポートされます。

  • ロール機能 - モジュールに 1 つ以上のロール機能 (.psrc) ファイルがある場合、ロールが一覧表示されます。 これらのファイルは JEA によって使用されます。 詳細については、ロール機能に関する記事を参照してください。

  • PowerShell エディション - PowerShell 5.0 以前用に設計されたモジュールの場合、これはタグを使用して制御されます。 デスクトップの場合には PSEdition_Desktop タグを使用し、コアの場合には PSEdition_Core タグを使用します。 PowerShell 5.1 以降用に設計されたモジュールの場合、マニフェストに CompatiblePSEditions キーがあります。 詳細については、モジュールの PSEdition サポートに関する記事を参照してください。

  • 依存関係 - マニフェストの RequiredModules で指定されます。

  • PowerShell の最小バージョン - マニフェストの PowerShellVersion で指定されます。

  • バージョン履歴 - ギャラリーに公開されたモジュールのバージョンの一覧を表示します。 削除機能を使用して非表示になっているパッケージは、パッケージ所有者でない限り、バージョン履歴に表示されません。

  • プロジェクト サイト - モジュールのプロジェクト サイトは ProjectURI を指定することにより、モジュール マニフェストの「PrivateData\PSData」セクション内で指定されます。

  • ライセンス - モジュールのライセンス リンクは、LicenseURI を指定することにより、モジュール マニフェストの「PrivateData\PSData」セクション内で指定されます。

    重要

    ライセンスが LicenseURI またはパッケージ内で指定されていない場合は、PowerShell ギャラリーの使用条件がパッケージに適用されます。 詳細については、使用条件に関するページを参照してください。

  • アイコン - モジュールのリンクは、IconURI を指定することにより、モジュール マニフェストの「PrivateData\PSData」セクション内で指定されます。 URI は透明の背景を持つ 85x85 の画像を指す必要があります。 URI は画像ファイルの直接リンクにする必要があり、PowerShell ギャラリー パッケージの Web ページまたはファイルに移動するものであってはいけません

次の一覧に、スクリプト ファイルのコメントベースのメタデータによって制御される PowerShell ギャラリー パッケージ ページの UI 要素を示します。

  • タイトル - ギャラリーに公開されるパッケージの名前です

  • バージョン - 表示されるバージョンはメタデータ内のバージョン文字列で、指定されている場合、プレリリース ラベルです。 値は、メタデータ コメント ブロック内の .VERSION キーワードから取得されます。 プレリリース スクリプトを発行するときは、プレリリース文字列をバージョンに追加します。 モジュールでのプレリリース文字列の指定については、「プレリリース バージョンのスクリプト」を参照してください。

  • 説明 - この情報は、スクリプト ファイルのコメント ベースのヘルプの .DESCRIPTION キーワードから取得されます。

  • ライセンスの受け入れを要求 する - スクリプトではライセンスの同意はサポートされていません。 ただし、ライセンスへの同意が必要なモジュールにスクリプトが依存するシナリオはサポートされています。 詳細については、「スクリプトでのライセンス同意の必須化」を参照してください。

  • リリース ノート - この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.RELEASENOTES キーワードから取得されます。

  • 所有者 - 所有者は、パッケージを更新できる PowerShell ギャラリー内のユーザーの一覧です。 パッケージ マニフェストには、所有者の一覧は含まれていません。 詳細については、アイテム所有者の管理に関する記事を参照してください。

  • 作成者 - この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.AUTHOR キーワードから取得されます。 [作成者] フィールドは、パッケージに関連する会社や組織を指定する場合によく使用されます。

  • 著作権 - この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.COPYRIGHT キーワードから取得されます。

  • ファイル一覧 - PowerShell ギャラリーへのパッケージの公開時に、このファイル一覧が作成されます。 マニフェストの情報で制御することはできません。 PowerShell ギャラリーは、各パッケージのファイル一覧に表示される .nuspec ファイルを作成します。 このファイルは、システム上のパッケージと共にはインストールされません。 これはパッケージの NuGet パッケージ マニフェストであり、無視してかまいません。

  • タグ - *この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.TAGS キーワードから取得されます。 タグには「タグの詳細」セクションに説明されている、特定の要件と意味があります。

  • PowerShell エディション - PowerShell 5.0 以前用に設計されたモジュールの場合、これはタグを使用して制御されます。 デスクトップの場合には PSEdition_Desktop タグを使用し、コアの場合には PSEdition_Core タグを使用します。 PowerShell 5.1 以降用に設計されたモジュールの場合、マニフェストに CompatiblePSEditions キーがあります。 詳細については、モジュールの PSEdition サポートに関する記事を参照してください。

  • バージョン履歴 - ギャラリーに公開されたモジュールのバージョンの一覧を表示します。 削除機能を使用して非表示になっているパッケージは、パッケージ所有者でない限り、バージョン履歴に表示されません。

  • プロジェクト サイト - この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.PROJECTURI キーワードから取得されます。

  • ライセンス - この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.LICENSEURI キーワードから取得されます。

    重要

    ライセンスが .LICENSEURI またはパッケージ内で指定されていない場合は、PowerShell ギャラリーの使用条件がパッケージに適用されます。 詳細については、使用条件に関するページを参照してください。

  • アイコン - この情報は、スクリプト ファイルのコメント ベースのメタデータ内の.ICONURI キーワードから取得されます。 URI は透明の背景を持つ 85x85 の画像を指す必要があります。 URI は画像ファイルの直接リンクにする必要があり、PowerShell ギャラリー パッケージの Web ページまたはファイルに移動するものであってはいけません

パッケージの詳細の編集

PowerShell ギャラリー パッケージ編集ページでは、公開者は表示されるパッケージのフィールドの一部を個別に変更できます。

  • タイトル
  • 説明
  • まとめ
  • アイコン URL
  • プロジェクト ホーム ページの URL
  • Authors
  • 著作権
  • Tags
  • リリース ノート
  • ライセンス リクエスト

ギャラリーでこの情報を編集して、古いバージョンのモジュールに対して表示される内容を修正する必要があります。 パッケージをダウンロードしたユーザーには、メタデータと PowerShell ギャラリーが一致しないことがわかります。 ギャラリーの情報を変更するたびに、同じ変更を含むパッケージの新しいバージョンを公開する必要があります。

タグの詳細

タグは、利用者がパッケージを探すのに使用する単純な文字列です。 タグは、関連するパッケージ間で一貫して使用される場合に最も重要になります。 同じ語の変化形 (たとえば database と databases、あるいは test と testing など) を使用しても、通常ベネフィットはほとんどありません。 タグは、大文字と小文字の区別のない単語の文字列で、空白を含めることはできません。 ユーザーが検索すると思われる語句がある場合には、それをパッケージの説明に追加すると、検索結果に表示されます。 キャメルケース、ハイフン、アンダースコア、またはピリオドを使用すると、読みやすさが向上します。 長くて複雑な珍しいタグを作成すると、スペルミスをしやすくなるため注意してください。

PowerShell ギャラリーと PowerShellGet コマンドレットには、PSEdition_DesktopPSEdition_Core のタグに関する特別な意味があります。 先ほどのPowerShell エディションの説明を参照してください。

前述のように、タグは具体的であると同時に多くのパッケージで一貫して使用される場合に、最も価値が発揮されます。 公開者が使用すべき最適なタグを探す場合には、検討しているタグを PowerShell ギャラリーで探すのが最も簡単な方法です。 返されるパッケージがそのキーワードの使用に合わせて調整されるのが理想的です。

特に一般的に使用されるタグは、次の表のとおりです。 優先タグは、最適な検索結果を返すはずです。

優先タグ 代替タグと注意事項
ActiveDirectory AD はそれ自体が現在使用されていません
Appveyor
Automation
AWS
Azure
AzureAD
AzureAutomation
AzureRm AzureRM モジュールで主に使用されます
Backup
Build
ChatOps
クラウド
Color
構成
CrescendoBuilt このタグは、モジュールをエクスポートするときに Crescendo によって自動的に追加されます
データベース Databases (複数) は推奨されません
DBA
デプロイ Deploy の使用頻度はやや低めです
DevOps
DNS
Docker
DSC DesiredStateConfiguration は長すぎるため推奨されません
DSCResource
DSCResourceKit
Excel
Exchange
ファイアウォール
GIT
GitHub
Gitlab
Google
HTML
Hyper-V HyperV は、タグとしてはこれほど一般的ではありません
IaaS
IIS
Json
Linux
ログ Log は物としての使用が推奨されます
ログ記録 Logging はアクションとしての使用が推奨されます
MacOS
監視
MSI
ネットワーク Networking も同様ですが、使用頻度は低めです
Office365 Office と綴ることをお勧めします。 O365 はこれより短いですが、使用頻度は低めです
PackageManagement
Pester
PoshBot
レポート Report は物です
レポーティング Reporting はアクションで、Report は物です
ResourceManager "Arm" は、プロセッサのグループを表す場合に使用します。Azure Resource Manager には使用しないでください
REST
Security Defense は精度が低くなります
SharePoint
SQL
SQLServer
記憶域
テスト Testing は推奨されません
VersionControl Version はこれよりも頻繁に使用されますが、精度が低くなります
VSTS
Windows
WinRM
WMI
Zip