ドキュメント
タスク構成
コマンドラインから構成できるクラウドタスク設定オプションは、テンプレートのデフォルトで設定するか、環境変数を定義することで設定できます。
選択のための決断の発注:
- コマンドライン(最も優先度の高い)
- タスクレベルのデフォルト
- CLOUDTASK_{PARAM_NAME} 環境変数(最優先)
例えば、ec2 領域ワーカーインスタンスを立ち上げたい場合は、次のように設定できます。
1) --ec2-regionコマンドラインオプション:
$ cloudtask --ec2-region ap-southeast-1
2) タスクテンプレートでEC2_REGIONを定義することで:
$ cat > foo.py << 'EOF'
from cloudtask import Task
class Foo(Task):
EC2_REGION = 'ap-southeast-1'
Foo.main()
EOF
$ chmod +x ./foo.py
$ ./foo.py
3) CLOUDTASK_EC2_REGION環境変数を設定することにより:
export CLOUDTASK_EC2_REGION=ap-southeast-1
生産使用のためのベストプラクティス
生産用途では、リビジョンコントロール(Gitリポジトリなど)のジョブの定期的なジョブの事前構成されたタスクテンプレートを作成することを推奨しています。 タスクテンプレートは、共通モジュールからハブAPIKEYやレポートのホックなどの共有定義を継承できます。
$ cat > common.py << 'EOF'
from cloudtask import Task
class BaseTask(Task):
HUB_APIKEY = 'BRDUKK3WDXY3CFQ'
REPORT = 'mail: cloudtask@example.com alon@example.com liraz@example.com'
# save sessions in the local directory ratehr than
# $HOME/.cloudtask. That way we can easily track the session
# logs in Git too.
SESSIONS = 'sessions/'
EOF
$ cat > helloworld << 'EOF'
#!/usr/bin/python
from common import BaseTask
class HelloWorld(BaseTask):
COMMAND = 'echo hello world'
HelloWorld.main()
EOF
chmod +x helloworld