風柳メモ

ソフトウェア・プログラミング関連の覚書が中心

『GAE-Cron』のソース&サービス登録サイト公開

この記事は Google App Engine の Python 2.5 runtime 版 GAE-Cron について書かれたものです。
Python 2.7 runtime 版 GAE-Cron のソースファイルは、

GAE-Cronの説明書
GAE-Cronソースファイルダウンロード

furyutei/GAE-Cron · GitHub

にて公開中です。


2014年現在、Python 2.5 runtime 版アプリケーションは、Google App Engine 上では新規に作成できなくなっている模様です。
2013年以前に Python 2.5 runtime で作成したアプリケーションはまだ動作しています(将来的には動作しなくなる可能性があります)。

バージョン2.7への移行を:Google App Engine、Python 2.5ランタイムを非推奨に - @IT
Google App Engine Blog: Python 2.5, thanks for the good times



GAE-Cronがなぜか好評みたいで、おかわりぶんもなくなったみたいなので、

GAE-Cron Club GAE-Cron Club - プロバイダ一覧

ゼットンでも倒せそうな勢いのやっつけ仕事なので、いろいろ不具合はあるかと思いますが、ご容赦を。

GAE-Cronアップロード(デプロイ)手順

Google App Engineへの登録がまだの方は、先に

Google App Engineへの登録と開発環境のセットアップ(Python編)

の記事を参照して、登録を済ませておいてください。

また、新規にアプリケーションを作成する前提で説明してあります。
Google App Engine上のWebアプリケーションは、通常、
http://<appid>.appspot.com/
がトップページになりますが、このappidの部分(アプリケーションID)はユーザが決める必要が有ります。

既存のアプリケーションに相乗りさせる場合は、GAE-Cronのソースアーカイブ内にある、READMEを参照して下さい。

■ アプリケーション名の決定

Google App EngineのApplications Overviewページ
https://appengine.google.com/
へ行き(必要に応じてGoogleアカウントでのログインすること)、[Create an Application]ボタンを押すと、

の画面が出てくるので、

  1. アプリケーションID:Application Identifier(appidとも。デフォルトでは<appid>.appspot.comがドメイン名)
  2. タイトル:Application Title(英文しか受け付けない模様)

を決定し、[Save]。
appidは他のアプリケーションのものと重なるものは使用不可(<appid>.appspot.comがWeb上で一意である必要があるため、早い者勝ち)。使用できるかどうかは[Check Availability]ボタンで確認可能。

■ GAE-Cronのダウンロードと設定ファイル(app.yaml)の修正

GAE-Cronのソースアーカイブ(ZIPファイル)
https://github.com/furyutei/GAE-Cron/archive/master.zip
をダウンロードし、適当なフォルダに展開。
この例では、C:\GAE というフォルダを作り、その下に展開して C:\GAE\gaecron というフォルダができたものとして説明しています。自分で実際に展開したフォルダ名に適宜読み替えて下さい。

テキストエディタで app.yaml を開き、

application: gaecron

の行の"gaecron"を、自分で登録したアプリケーションID(appid)に書き換え。

■ GAE-Cronのアップロード(デプロイ)

SDKのランチャを起動し(Windows XPのデフォルトではC:\Program Files\Google\google_appengine\launcher\GoogleAppEngineLauncher.exeにある。デスクトップ上のショートカットがあれば、これをダブルクリック)、

[File]メニューから[Add Existing Application... Ctrl+Shift+N]を選択すると

のようなダイアログが出てくるので、 Application PATH にフォルダ名(例ではC:\GAE\gaecron)を入れて[Add]し、その後、[Deploy]アイコンを押して出てくる

のようなダイアログに、登録時に使用したGoogleアカウント及びパスワードを入れて(見切れているが)[OK]ボタンを押してアップロード(デプロイ)する。


最終的に、上記のように表示されたら、デプロイ完了。

■ 動作確認

Web上の管理画面(https://appengine.google.com/)にて、デプロイしたアプリケーション名(IDとタイトル)が表示されていることと(図のApplicationとTitleは例、実際は自分で登録したときのものが表示される)、


そのアプリのリンク→「Cron Jobs」リンクを辿って、


のように /gaetimer/timercycle/check_timer/gaetimer/restore の二つが登録されていることを確認。

また、実際にブラウザで http://<appid>.appspot.com/ にアクセスしてみて(<appid>は自分で登録したアプリケーションID)、GAE-Cronのトップページ

が表示され、ログインや設定などができるかどうかを確認。

GAE-Cron Clubへの登録→GAEの仕様変更に伴う負荷増大のため、現在は稼働しておりません

自分だけで使うのも悪いとはいいませんが(笑)、どうせなら公開して、皆で共有できるようにしましょう。
というわけで、

GAE-Cron Club GAE-Cron Club - プロバイダ一覧

へ行って、自分のアプリを登録したアカウントでログインし、自分のGAE-CronのトップページのURLを登録して下さい。ご協力お願いいたします。
登録した人と提供した人が同じかどうか調べるためにちょっと変なことをやっているので、登録するとメールが行くと思いますが、気にしないで下さい(苦笑)。