0
0

noxで環境変数を消して実行

Last updated at Posted at 2023-01-17

Noxで環境変数を消してコマンドを実行するにはどうしたら良いか?

既存の環境変数を上書き指定するならsession.run(env={'FOO': 'bar'})が使えますが削除はできません。session.run(env={'FOO': None})はエラーになります。

またos.environで消しても効果はありません。コマンド実行時に適用される環境変数はsessionの中に保存されているためです。

sessionの中に保存されている環境変数を直接操作することで、実行時に適用される環境変数を、削除も含めて自由に編集できるようです。

@nox.session
def good(session):
    """環境変数FOOを削除してコマンドを実行。"""
    session.env.pop('FOO', None)
    session.run('/usr/bin/printenv', external=True)
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0