この記事では、パッケージ内のメタデータが PowerShell ギャラリーでどのように使用されるかについて説明します。 モジュールの場合、メタデータはモジュール マニフェストに格納されます。 スクリプトの場合、メタデータはコメントベースのキーワードを使用して保存されます。 次のコマンドレットは、このメタデータを作成または更新するために使用されます。
モジュール マニフェストによって制御される PowerShell ギャラリー機能要素
次の一覧は、モジュール マニフェストによって制御される PowerShell ギャラリー パッケージ ページ UI の要素を示しています。
タイトル - ギャラリーに公開されたパッケージの名前。
バージョン - 表示されるバージョンは、メタデータ内のバージョン文字列と、プレリリース ラベル (指定されている場合) です。 指定されたプレリリース文字列が ModuleVersion に追加されます。 モジュールのプレリリース文字列の詳細については、「 プレリリース モジュール バージョン」を参照してください。
説明 - これはモジュール マニフェストの 説明 です。
ライセンスへの同意を要求する - モジュールは、
RequireLicenseAcceptance = $trueを設定し、 LicenseURI を指定し、モジュール フォルダーのルートにlicense.txtファイルを指定することで、ユーザーにライセンスへの同意を要求できます。 詳細については、「 ライセンスへの同意が必要」を参照してください。リリースノート - この情報は、
PSData\PrivateDataの下のリリースノートセクションから取得されます。所有者 - 所有者は、パッケージを更新できる PowerShell ギャラリー内のユーザーの一覧です。 所有者リストはパッケージ マニフェストに含まれません。 追加のドキュメントでは、 アイテム所有者を管理する方法について説明します。
作成者 - これは、 作成者としてモジュール マニフェストに含まれます。 [作成者] フィールドは、パッケージに関連付けられている会社または組織を指定するためによく使用されます。
著作権 - これは、モジュール マニフェストの 著作権フィールド です。
FileList - ファイル リストは、パッケージが PowerShell ギャラリーに発行されるときに作成されます。 マニフェスト情報では制御できません。 PowerShell ギャラリーは
.nuspec各パッケージのファイル一覧に表示されるファイルを作成します。 このファイルは、パッケージとともにシステムにインストールされません。 これはパッケージの NuGet パッケージ マニフェストであり、無視できます。タグ - タグは 、モジュール マニフェストの
PrivateData\PSDataの下に含まれます。 タグには、「 タグの詳細 」セクションで説明されている特定の要件と意味があります。コマンドレット - これは、CmdletsToExport を使用してモジュール マニフェストで提供されます。 ワイルドカード
*を使用するのではなく、コマンドレット名を明示的に一覧表示することをお勧めします。 リストがあると、ロード・モジュールのパフォーマンスが向上します。関数 - これは、 FunctionsToExport を使用してモジュール マニフェストで提供されます。 ワイルドカード
*を使用するのではなく、コマンドレット名を明示的に一覧表示することをお勧めします。 リストがあると、ロード・モジュールのパフォーマンスが向上します。DSC リソース - これは、DscResourcesToExport を使用してマニフェストで提供されます。 この値は、PowerShell 5.0 以降のモジュールでのみサポートされます。
ロール機能 - モジュールに 1 つ以上のロール機能 (
.psrc) ファイルがある場合に、ロールが一覧表示されます。 これらのファイルは JEA によって使用されます。 詳細については、「 ロール機能」を参照してください。PowerShell エディション - PowerShell 5.0 以前用に設計されたモジュールの場合、これはタグを使用して制御 されます。 Desktop の場合はタグ PSEdition_Desktop、コアの場合はタグ PSEdition_Core を使用します。 PowerShell 5.1 以降用に設計されたモジュールの場合、マニフェストに CompatiblePSEditions キーがあります。 詳細については、「 モジュールの PSEdition サポート」を参照してください。
依存関係 - これは、RequiredModules を使用してマニフェストで提供されます。
PowerShell の最小バージョン - これは、PowerShellVersion を使用してマニフェストで提供されます。
バージョン履歴 - ギャラリーに公開されているモジュールのバージョンのリストを表示します。 削除機能を使用して非表示にしたパッケージは、パッケージ所有者でない限り、バージョン履歴には表示されません。
プロジェクト サイト - プロジェクト サイトは、ProjectURI を指定することにより、モジュール マニフェストの
PrivateData\PSDataセクションのモジュールに提供されます。ライセンス - LicenseURI を指定することで、モジュール マニフェストの
PrivateData\PSDataセクションのモジュールにライセンス リンクが提供されます。Important
ライセンスが LicenseURI またはパッケージ内で提供されない場合は、PowerShell ギャラリーの使用条件がパッケージに適用されます。 詳細については、 利用規約を参照してください。
アイコン - IconURI を指定することで、モジュール マニフェストの
PrivateData\PSDataセクションにモジュールのリンクが提供されます。 URI は、透明な背景を持つ 85 x 85 の画像を指す必要があります。 URI はイメージ ファイルへの直接リンクである 必要があり 、Web ページまたは PowerShell ギャラリー パッケージ内のファイルに移動し てはなりません 。
スクリプト メタデータによって制御される PowerShell ギャラリー機能要素
次の一覧は、スクリプト ファイル内のコメントベースのメタデータによって制御される PowerShell ギャラリー パッケージ ページ UI の要素を示しています。
タイトル - これは、ギャラリーに公開されるパッケージの名前です
バージョン - 表示されるバージョンは、メタデータ内のバージョン文字列と、プレリリース ラベル (指定されている場合) です。 この値は、メタデータ コメント ブロックの
.VERSIONキーワードから取得されます。 プレリリース スクリプトを発行する場合は、プレリリース文字列をバージョンに追加します。 モジュールでのプレリリース文字列の指定の詳細については、「 スクリプトのプレリリース バージョン」を参照してください。説明 - この情報は、スクリプトファイルのコメントベースのヘルプの
.DESCRIPTIONキーワードから取得されます。ライセンスの同意が必要 - ライセンスの同意はスクリプトではサポートされていません。 ただし、スクリプトがライセンスへの同意を必要とするモジュールに依存するシナリオはサポートされています。 詳細については、「 スクリプトのライセンスへの同意の要求」を参照してください。
リリースノート - この情報は、スクリプトファイルのコメントベースのメタデータの
.RELEASENOTESキーワードから取得されます。所有者 - 所有者は、パッケージを更新できる PowerShell ギャラリー内のユーザーの一覧です。 所有者リストはパッケージ マニフェストに含まれません。 詳細については、「 アイテム所有者の管理」を参照してください。
作成者 - この情報は、スクリプトファイルのコメントベースのメタデータの
.AUTHORキーワードから取得されます。 [作成者] フィールドは、パッケージに関連付けられている会社または組織を指定するためによく使用されます。著作権 - この情報は、スクリプト ファイルのコメント ベースのメタデータの
.COPYRIGHTキーワードから取得されます。FileList - ファイル リストは、パッケージが PowerShell ギャラリーに発行されるときに作成されます。 マニフェスト情報では制御できません。 PowerShell ギャラリーは
.nuspec各パッケージのファイル一覧に表示されるファイルを作成します。 このファイルは、パッケージとともにシステムにインストールされません。 これはパッケージの NuGet パッケージ マニフェストであり、無視できます。タグ - *この情報は、スクリプトファイルのコメントベースのメタデータの
.TAGSキーワードから取得されます。 タグには、「 タグの詳細 」セクションで説明されている特定の要件と意味があります。PowerShell エディション - PowerShell 5.0 以前用に設計されたモジュールの場合、これはタグを使用して制御 されます。 Desktop の場合はタグ PSEdition_Desktop、コアの場合はタグ PSEdition_Core を使用します。 PowerShell 5.1 以降用に設計されたモジュールの場合、マニフェストに CompatiblePSEditions キーがあります。 詳細については、「 モジュールの PSEdition サポート」を参照してください。
バージョン履歴 - ギャラリーに公開されているモジュールのバージョンのリストを表示します。 削除機能を使用して非表示にしたパッケージは、パッケージ所有者でない限り、バージョン履歴には表示されません。
プロジェクト サイト - この情報は、スクリプト ファイルのコメント ベースのメタデータの
.PROJECTURIキーワードから取得されます。ライセンス - この情報は、スクリプトファイルのコメントベースのメタデータの
.LICENSEURIキーワードから取得されます。Important
ライセンスが
.LICENSEURIまたはパッケージ内で提供されない場合は、PowerShell ギャラリーの使用条件がパッケージに適用されます。 詳細については、 利用規約を参照してください。アイコン - この情報は、スクリプトファイルのコメントベースのメタデータの
.ICONURIキーワードから取得されます。 URI は、透明な背景を持つ 85 x 85 の画像を指す必要があります。 URI はイメージ ファイルへの直接リンクである 必要があり 、Web ページまたは PowerShell ギャラリー パッケージ内のファイルに移動し てはなりません 。
パッケージの詳細の編集
PowerShell ギャラリーの [パッケージの編集] ページでは、発行元はパッケージに表示されるいくつかのフィールドを変更できます。
- Title
- Description
- 概要
- アイコン URL
- プロジェクト ホーム ページの URL
- ブロック
- 著作権
- タグ
- リリース ノート
- ライセンスが必要
ギャラリーでこの情報を編集して、古いバージョンのモジュールに表示される内容を修正する必要があります。 パッケージをダウンロードしたユーザーには、メタデータが PowerShell ギャラリーと一致しないことがわかります。 ギャラリー内の情報を変更するたびに、同じ変更を加えたパッケージの新しいバージョンを発行する必要があります。
タグの詳細
タグは、コンシューマーがパッケージを検索するために使用する単純な文字列です。 タグは、関連するパッケージ間で一貫して使用される場合に最も価値があります。 データベースとデータベースやテストとテストなど、同じ単語のバリエーションを使用しても、ほとんどメリットがありません。 タグは、大文字と小文字を区別しない 1 単語の文字列であり、空白を含めることはできません。 ユーザーが検索すると思われるフレーズがある場合は、それをパッケージの説明に追加して、検索結果で見つけられるようにします。 パスカルの大文字と小文字、ハイフン、アンダースコア、またはピリオドを使用して、読みやすさを向上させます。 スペルを間違えやすい、長くて複雑で珍しいタグの作成には注意してください。
PowerShell ギャラリーと PowerShellGet コマンドレットには、 PSEdition_Desktop タグと PSEdition_Core タグに特別な意味があります。
PowerShell エディションに関する前述の説明を参照してください。
前述のように、タグは、具体的であり、多くのパッケージで一貫して使用される場合に、最も価値を提供します。 使用する最適なタグを見つけようとしている発行元にとって、最も簡単な方法は、検討しているタグを PowerShell ギャラリーで検索することです。 理想的には、返されるパッケージは、そのキーワードの使用と一致します。
次の表は、最も一般的に使用されるタグの一部を示しています。 優先タグは、最適な検索結果を返す必要があります。
| 優先タグ | 代替案と注意事項 |
|---|---|
| アクティブディレクトリ | ADは現在、単独では使用されていません |
| Appveyor | |
| Automation | |
| AWS | |
| 紺碧 | |
| AzureAD | |
| AzureAutomation | |
| AzureRm | 主に AzureRM モジュールに使用されます |
| Backup | |
| 建築する | |
| ChatOps | |
| 雲 | |
| 色 | |
| コンフィギュレーション | |
| クレッシェンドビルト | このタグは、モジュールをエクスポートするときにCrescendoによって自動的に追加されます |
| データベース | データベース (複数形) はあまり望ましくありません |
| DBAの | |
| デプロイメント | Deploy の使用頻度はやや低くなります |
| DevOps | |
| DNS | |
| Docker | |
| DSC | DesiredStateConfiguration はあまり望ましくなく、長すぎます |
| DSCResource | |
| DSCResourceKit | |
| エクセル | |
| 交換 | |
| Firewall | |
| GITの | |
| GitHub | |
| ギットラボ | |
| HTML | |
| Hyper-V | HyperV はタグとしてはあまり一般的ではありません |
| IaaS | |
| IIS | |
| Json | |
| Linux | |
| Log | モノとしてのログの推奨使用法 |
| ロギング(記録) | アクションとしてのロギングの使用が推奨される |
| MacOS | |
| モニタリング | |
| MSI | |
| ネットワーク | ネットワーキングも同様ですが、あまり使用されません |
| Office365 | Office を綴ることが望ましいです。 O365 は、短いですが、あまり一般的ではありません |
| パッケージ管理 | |
| いびる | |
| ポッシュボット | |
| レポート | レポートは物事です |
| レポーティング | 報告は行動であり、報告は物です |
| ResourceManager | "Arm" はプロセッサのグループを表すために使用され、Azure Resource Manager には使用しないでください |
| REST | |
| セキュリティ | 防御の精度が低い |
| SharePoint | |
| SQL | |
| SQLServer (英語) | |
| Storage | |
| Test | テストはあまり望ましくありません |
| VersionControl | バージョンは精度は低いですが、より頻繁に使用されます |
| VSTS | |
| ウィンドウズ | |
| WinRM | |
| WMI | |
| ZIPファイル |
PowerShell Gallery