Symptoms: 免責事項: これは英文の記事 vCert.py execution fails with SyntaxError の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
証明書更新に伴い vCert.py を実行すると、以下の出力を伴って失敗します。
root@vcsa [ /vCert-6.1.0-20250910 ]# ./vCert.pyTraceback (most recent call last):File "./vCert.py", line 20, infrom lib.menu import Menu, MenuInputFile "/vCert-6.1.0-20250910/lib/menu.py", line 17, infrom lib.vmdir import get_identity_sources3File "/vCert-6.1.0-20250910/lib/vmdir.py", line 554args = [DIR_CLI, 'service', 'update', '--name', f"{soluser}-{machine_id}", '--cert',^SyntaxError: invalid syntax
VMware vCenter Server
こちらのエラーはアプラインスにインストールされている python のバージョンが 3.6 より古く、
f-strings に対応していないことから発生します。
主に vCenter Server アプライアンス 6.7 以前で vCert.py を実行した際に発生します。
vCert.py は vCenter Sever 7.0 以降で対応しており、6.7 以前のバージョンには対応しておりません。
vCert.py は vCenter Sever 7.0 以降で実行してください。
"vCert.py is a menu-driven tool that provides management capability for most certificate-related operations on vCenter versions 7.0 to 9.0."
* vCert - Scripted vCenter Expired Certificate Replacement