Ошибка импорта gsutil CONFIG_REQUIRED?

Я попытался установить и запустить gsutil и получаю следующую ошибку:

Traceback (most recent call last):
  File "/Users/groovebug/gsutil/gsutil", line 88, in <module>
    sys.exit(gslib.__main__.main())
  File "/Users/groovebug/gsutil/gslib/__main__.py", line 93, in main
    command_runner = CommandRunner(config_file_list)
  File "/Users/groovebug/gsutil/gslib/command_runner.py", line 102, in __init__
    self.command_map = self._LoadCommandMap()
  File "/Users/groovebug/gsutil/gslib/command_runner.py", line 112, in _LoadCommandMap
    __import__('gslib.commands.%s' % module_name)
  File "/Users/groovebug/gsutil/gslib/commands/disablelogging.py", line 18, in <module>
    from gslib.command import CONFIG_REQUIRED
ImportError: cannot import name CONFIG_REQUIRED

Я переустановил и продолжил получать его, и не нашел никого, кто решил бы это в другом месте.


person user1612868    schedule 17.09.2013    source источник


Ответы (2)


gsutil больше не использует эту переменную. Если вы обновитесь до последней версии gsutil, эта проблема больше не должна возникать:

обновление gsuil

person Mike Schwartz    schedule 17.09.2013
comment
Сегодня я скачал по этой ссылке несколько раз. Я получал ошибку для каждой команды, которую я пытался запустить, включая обновление и справку. Фактической причиной мог быть старый файл .boto или что-то еще, потому что, как только я добавил эту строку и смог запустить ее gsutil config -b один раз, все заработало хорошо, даже после того, как я перезапустил tar xfz gsutil.tar.gz -C $HOME на том же tar. (Извините, если вы получили дублирующиеся уведомления, я нажал Enter, думая, что это даст мне новую строку.) - person user1612868; 18.09.2013
comment
Вы уверены, что использовали новую версию, которую установили из файла gsutil.tar.gz? Например, может быть, вы установили более старую версию gsutil где-то еще в PATH и запустили ее? В текущем коде нигде нет CONFIG_REQUIRED, так что это единственное объяснение, которое я могу представить, почему вы продолжаете видеть эту проблему. - person Mike Schwartz; 18.09.2013
comment
Я не уверен на 100%, но почти уверен. Я хотел бы иметь возможность путешествовать во времени, чтобы вернуться и проверить это. Я не могу найти версию до 3.35 на своем компьютере. Как я уже сказал выше, я смог удалить изменение, как только смог запустить его один раз. (Но я запустил обновление, как только смог запустить его один раз). Однако он вывел, что у меня уже есть последняя версия. Прочитав ваш ответ, я пересобрал tar, и это не воскресило проблему. Я переместил рабочую папку перед восстановлением tar. Единственное вхождение этой переменной - это то, что я добавил. Был странный баг. - person user1612868; 18.09.2013

CONFIG_REQUIRED — это просто постоянное имя для ключа, используемого в словаре.

Если вы откроете ${Directory_Containing_gsutil}/gsutil/gslib/command.py

и добавьте строку

CONFIG_REQUIRED = 'config_required'

это решает проблему. Не уверен, почему эта строка отсутствует.

person user1612868    schedule 17.09.2013