最初は、configファイルに以下のような定数を書いており、app.configから読み取ってgcpクライアントを利用するようにしていましたが、それだと不具合が発生することがわかり、共通モジュールを作成してその中で定数を使いまわそうと考えました。
そもそも、共通モジュールから定数群を利用する場合、classを作成して__init__関数内で読むようにすべきか、はてまた、以下のようにそのまま直書きで利用するようにすべきか、などメリットデメリットが良くわかっていません。
今は、共通モジュールを作成して以下のように書いていますが、configファイルの方はクラスを作成してその中で書いています。
なにか、こうしたほうがいいなどのアイデアがあればご教示いただけませんでしょうか?
python
1 if 'GCP_KEY' not in os.environ: 2 raise Exception('KEY is mandatory') 3 elif not os.environ.get("GCP_KEY"): 4 raise Exception('KEY does not exsist') 5 else: 6 json_key_file = os.environ.get("GCP_KEY") 7 8 if os.environ.get("CONFIG", "local") == "local": 9 # Local 10 STORAGE_CLIENT = storage.Client.from_service_account_json(json_key_file) 11 else: 12 # Staging 13 STORAGE_CLIENT = storage.Client() 14 BQ_CLIENT = get_client(PROJECT_ID, json_key_file=json_key_file, readonly=True)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。