スタンドアロンの App Engine SDK は 2019 年 7 月 30 日に非推奨となっており、現在提供を終了しています。次の表に、非推奨の機能と推奨される代替手段を示します。
非推奨 | 推奨される対処方法 |
---|---|
スタンドアロンの App Engine SDK | Google Cloud CLI をダウンロードします |
App Engine SDK を使用した App Engine のレガシー API へのアクセス | バンドルされていない Google Cloud またはサードパーティ サービスに移行するか、App Engine サービス SDK を使用してバンドル サービスにアクセスします(第 2 世代ランタイムを使用している場合) |
appcfg コマンド |
AppCfg から gcloud コマンドラインに移行します |
dev_appserver.sh コマンド |
ローカル開発の場合は、gcloud CLI の bin ディレクトリから java_dev_appserver.sh コマンドを実行します。 |
Java App Engine SDK ベースの Maven 用プラグイン(com.google.appengine.appengine-maven ) |
gcloud CLI ベースの Maven プラグインへの移行 |
Java App Engine SDK ベースの Gradle 用プラグイン(com.google.appengine.appengine-gradle ) |
gcloud CLI ベースの Gradle プラグインへの移行 |
cron.xml 、datastore-index.xml 、dispatch.xml 、queue.xml ファイル形式 |
gcloud beta app migrate-config ツールを使用して自動的に移行するか、xml を手動で yaml ファイルに移行します。 |
移行スケジュール
2019 年 7 月 30 日: スタンドアロンの App Engine SDK をベースとしたツールが非推奨になりました。
2020 年 8 月 30 日: スタンドアロンの App Engine SDK をダウンロードできなくなりました。スタンドアロンの App Engine SDK を使用している場合、動作しなくなる可能性があります。
2020 年 8 月 30 日: Google では、スタンドアロンの App Engine SDK を停止し、サポートを終了しました。
下位互換性のない機能
appcfg
ツールとスタンドアロンの App Engine SDK の提供が終了したため、現在、次の機能は gcloud CLI でサポートされていません。
- AppCfg を使用したアプリケーション ファイルのダウンロード。
XML から YAML へのファイル形式の移行
gcloud CLI は、次のファイル形式をサポートしていません。
cron.xml
datastore-index.xml
dispatch.xml
queue.xml
次の例は、xml
ファイルを yaml
ファイルに移行する方法を示しています。
自動的にファイルを移行する
xml
ファイルを自動的に移行するには:
gcloud CLI バージョン 226.0.0 以降が必要です。最新バージョンに更新するには:
gcloud components update
移行するファイルごとに、次のいずれかのサブコマンド(
cron-xml-to-yaml
、datastore-indexes-xml-to-yaml
、dispatch-xml-to-yaml
、queue-xml-to-yaml
)とファイル名を指定します。gcloud beta app migrate-config queue-xml-to-yaml MY-QUEUE-XML-FILE.xml
本番環境にデプロイする前に、変換後のファイルを手動でダブルチェックします。
xml
ファイルからyaml
ファイルへの正常な変換例については、手動でファイルを移行するのタブをご覧ください。
手動でファイルを移行する
xml
ファイルを yaml
ファイルに手動で移行するには:
cron.yaml
cron
オブジェクトを含む cron.yaml
ファイルを作成します。このオブジェクトにはオブジェクトのリストが含まれます。以下に示すように、各オブジェクトには cron.xml
ファイルの <cron>
タグ属性に対応するフィールドがあります。
変換後の cron.yaml
ファイル:
cron:
- url: '/recache'
schedule: 'every 2 minutes'
description: 'Repopulate the cache every 2 minutes'
- url: '/weeklyreport'
schedule: 'every monday 08:30'
target: 'version-2'
timezone: 'America/New_York'
description: 'Mail out a weekly report'
元の cron.xml
ファイル:
<?xml version="1.0" encoding="UTF-8"?>
<cronentries>
<cron>
<url>/recache</url>
<description>Repopulate the cache every 2 minutes</description>
<schedule>every 2 minutes</schedule>
</cron>
<cron>
<url>/weeklyreport</url>
<description>Mail out a weekly report</description>
<schedule>every monday 08:30</schedule>
<timezone>America/New_York</timezone>
<target>version-2</target>
</cron>
</cronentries>
詳細については、cron.yaml
リファレンス ドキュメントをご覧ください。
dispatch.yaml
dispatch
オブジェクトを含む dispatch.yaml
ファイルを作成します。このオブジェクトにはオブジェクトのリストが含まれます。以下に示すように、各オブジェクトには dispatch.xml
ファイルの <dispatch>
タグ属性に対応するフィールドがあります。
変換後の dispatch.yaml
ファイル:
dispatch:
- url: '*/favicon.ico'
module: default
- url: 'simple-sample.uc.r.appspot.com/'
module: default
- url: '*/mobile/*'
module: mobile-frontend
元の dispatch.xml
ファイル
<?xml version="1.0" encoding="UTF-8"?>
<dispatch-entries>
<dispatch>
<url>*/favicon.ico</url>
<module>default</module>
</dispatch>
<dispatch>
<url>simple-sample.uc.r.appspot.com/</url>
<module>default</module>
</dispatch>
<dispatch>
<url>*/mobile/*</url>
<module>mobile-frontend</module>
</dispatch>
</dispatch-entries>
詳細については、dispatch.yaml
リファレンス ドキュメントをご覧ください。
index.yaml
indexes
オブジェクトを含む index.yaml
ファイルを作成します。このオブジェクトにはオブジェクトのリストが含まれます。以下に示すように、各オブジェクトには datastore-indexes.xml
ファイルの <datastore-index>
タグ属性に対応するフィールドがあります。
変換後の index.yaml
ファイル:
indexes:
- ancestor: false
kind: Employee
properties:
- direction: asc
name: lastName
- direction: desc
name: hireDate
- ancestor: false
kind: Project
properties:
- direction: asc
name: dueDate
- direction: desc
name: cost
元の datastore-index.xml
ファイル:
<?xml version="1.0" encoding="utf-8"?>
<datastore-indexes
autoGenerate="true">
<datastore-index kind="Employee" ancestor="false">
<property name="lastName" direction="asc" />
<property name="hireDate" direction="desc" />
</datastore-index>
<datastore-index kind="Project" ancestor="false">
<property name="dueDate" direction="asc" />
<property name="cost" direction="desc" />
</datastore-index>
</datastore-indexes>
詳細については、index.yaml
リファレンス ドキュメントをご覧ください。
queue.yaml
queue
オブジェクトを含む queue.yaml
ファイルを作成します。このオブジェクトにはオブジェクトのリストが含まれます。以下に示すように、各オブジェクトには queue.xml
ファイルの <queue>
タグ属性に対応するフィールドがあります。
変換後の queue.yaml
ファイル:
queue:
- name: fooqueue
mode: push
rate: 1/s
retry_parameters:
task_retry_limit: 7
task_age_limit: 2d
- name: barqueue
mode: push
rate: 1/s
retry_parameters:
min_backoff_seconds: 10
max_backoff_seconds: 200
max_doublings: 0
元の queue.xml
ファイル:
<queue-entries>
<queue>
<name>fooqueue</name>
<rate>1/s</rate>
<retry-parameters>
<task-retry-limit>7</task-retry-limit>
<task-age-limit>2d</task-age-limit>
</retry-parameters>
</queue>
<queue>
<name>barqueue</name>
<rate>1/s</rate>
<retry-parameters>
<min-backoff-seconds>10</min-backoff-seconds>
<max-backoff-seconds>200</max-backoff-seconds>
<max-doublings>0</max-doublings>
</retry-parameters>
</queue>
<queue-entries>