2017-06-22 11 views
2

エアフローGUIを使用せずにS3接続を作成したいと考えています。 airflow.cfgまたはコマンドライン経由で可能ですか?私たちは、AWSの役割を使用して接続パラメータを以下の通りですエアフローGUI外の接続の作成

は、私たちのために動作します: { "aws_account_id": "XXXX"、 "role_arn": "YYYYY"}

をので、手動でS3のためのGUI上で接続を作成取り組んでいますこのプロセスを自動化し、Airflowデプロイメントプロセスの一部として追加したいと考えています。どんな仕事?

答えて

0

私は、例えばS3_hook.py

をチェックアウトした後、それを把握することができた:

ここ
export AIRFLOW_CONN_S3_DEFAULT={"aws_account_id":"99999999","role_arn":"bbbbb"} 

  • "S3_DEFAULTは、" ここに
  • 接続IDですAWSアカウントIDとrole_arnを渡し、環境変数を作成します。
+1

BaseHookは期待していないように環境変数のJSONがURIである:https://github.com/apache/incubator-airflow/blob/master/airflow/hooks/base_hook.py#L59-L64 – andresp

2

気流CLIを使用できます。残念ながら、接続の編集はサポートされていないため、展開プロセスの一部として削除して追加する必要があります。

airflow connections -d --conn_id 'aws_default' 
airflow connections -a --conn_id 'aws_default' --conn_uri 'aws:' --conn_extra '{"region_name": "eu-west-1"}' 
関連する問題