テンプレートを Python 3 に移行

2020 年 1 月 1 日より、Python コミュニティは Python 2.7 の更新、バグの修正、セキュリティの問題の修正を行いません。Deployment Manager テンプレートをできるだけ早く Python 3 に対応させることをおすすめします。

Google Cloud Python クライアント ライブラリの使用に関する情報を含め、この変更の影響を受けるサービスの概要については、Google Cloud での Python のサポートをご覧ください。

Deployment Manager テンプレートの移行

Deployment Manager の構文では、Python 3 固有の機能は使用しません。ほとんどの場合、テンプレートはコードを変更することなく Python 3 で動作します。

ヘルパー スクリプトなどのテンプレート モジュールを使用する場合は、スクリプトが Python 3 と互換性があることを確認する必要があります。

Python 2 のコードを Python 3 に移行する方法については、Python.org 移行ガイドをご覧ください。テンプレートが Python 3 と互換性があるかどうかをテストする場合は、テンプレートを使用してデプロイしてみてください。デプロイが警告なしで成功した場合、テンプレートに互換性があり、変更は必要ありません。

テンプレートに Python 3 との互換性がない機能が含まれる場合、デプロイは 2020 年 6 月まで引き続き機能します。次のいずれかの警告が表示されることがあります。

  • テンプレートは Python 3 と互換性がありません。テンプレートは Python 2 を使用して実行されますが、Python 3 では使用できません。警告として Python 3 のエラー メッセージが表示され、コードをデバッグできます。

  • テンプレートは Python 3 と Python 2 で異なる結果を生成します。これはデプロイが非決定的である(たとえば、現在の時刻や乱数に依存するなど)か、テンプレートが Python 3 と互換性のない機能を使用している可能性があるためです。テンプレートが非決定的な仕様である場合、テンプレートを変更する必要はありません。

    テンプレートで Python 3 と互換性のない機能を使用する場合は、Python 3 移行ガイドのガイドラインに沿ってテンプレートを更新してください。