ОШИБКА "несвязанной переменной" при использовании conda в bash скриптах, содержащих оператор "set -u" - PullRequest
0 голосов
/ 29 мая 2020

Мне не удалось найти способ связаться с командой anaconda DevOps, поэтому я отправляю этот запрос здесь в надежде, что меня заметят:

Script /etc/conda/deactivate.d/glib_deactivate. sh восстанавливает значение переменной GSETTINGS_SCHEMA_DIR с помощью резервной переменной GSETTINGS_SCHEMA_DIR_CONDA_BACKUP, например:

export GSETTINGS_SCHEMA_DIR=$GSETTINGS_SCHEMA_DIR_CONDA_BACKUP

Эта переменная резервного копирования устанавливается в скрипте /etc/conda/activate.d/glib_activate.sh, например это:

export GSETTINGS_SCHEMA_DIR_CONDA_BACKUP=${GSETTINGS_SCHEMA_DIR:-}

Проблема: если GSETTINGS_SCHEMA_DIR не привязан, то GSETTINGS_SCHEMA_DIR_CONDA_BACKUP тоже не привязан.

Ошибка: сценарий bash, содержащий «set -u», вызовет несвязанную переменную ошибка, если этот glib_deactivate. sh выполняется как часть команды conda.

Решение: Оператор в glib_deactivate. sh должен быть:

export GSETTINGS_SCHEMA_DIR=${GSETTINGS_SCHEMA_DIR_CONDA_BACKUP:-}

имитирующим аналогичный оператор в glib_activate . sh.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...