PowerShell 用の AWSPowerShell モジュールを使用して CloudFront ディストリビューションを更新しようとしています。モジュールから update コマンドレットを使用すると、"IfMatch" パラメーターが指定されていないというエラーが常に表示されます。
$cfd = Update-CFDistribution @parameters -Id "E2POBWR9AXFROP"
Error: The If-Match version is missing or not valid for the resource.
Update-CFDistribution : The If-Match version is missing or not valid for the resource.
このパラメータについて知るために AWS ドキュメントにアクセスしたところ、次のように書かれています。
-IfMatch: ディストリビューションの構成を取得するときに受け取った ETag ヘッダーの値。例: E2QWRUHAPOMQZL。
AWSPowerShell モジュールのコマンドレットを使用して ETag ヘッダーの内容を取得する方法があるかどうか疑問に思っていました。ヘッダーのコンテンツを取得するためだけに、PowerShell スクリプトで Http リクエストを実行する AWS API を直接呼び出したくはありませんが、おそらくそれが唯一の方法です。
Get-CFDistributionConfig コマンドレットを試しましたが、この情報が返されません。
$cfd = Get-CFDistributionConfig @parameters -Id "E2POBWR9AXFROP"
これは、私が使用している PowerShell のバージョンです。
PS C:\> $PSVersionTable.PSVersion
Major Minor Build Revision
----- ----- ----- --------
5 1 15063 608
これは、私が使用している AWSPowerShell モジュールのバージョンです。
PS C:\> Get-Module "AWSPowerShell" -ListAvailable
ModuleType Version Name
---------- ------- ----
Binary 3.3.169.0 AWSPowerShell