Bind an environment variable to an argument action.  The env
        value will traditionally be something uppercase like `MYAPP_FOO_ARG`.

        Note that the ENV value is assigned using `set_defaults()` and as such
        it will be overridden if the argument is set via `parse_args()`

def bind_env(self, action, env):
        """ Bind an environment variable to an argument action.  The env
        value will traditionally be something uppercase like `MYAPP_FOO_ARG`.

        Note that the ENV value is assigned using `set_defaults()` and as such
        it will be overridden if the argument is set via `parse_args()` """
        if env in self._env_actions:
            raise ValueError('Duplicate ENV variable: %s' % env)
        self._env_actions[env] = action
        action.env = env