Мне тут ansible нужно было запустить определенной версии, естественно он работал на определённой версии питона которой нет на MacBook по умолчанию.
Я с начало устанавливал python3.10 через brew. Но почему-то у меня не подхватывались модули. Времени было мало. Я использовал знакомый метод, который я когда-то использовал для установки python 3.7. Может вам пригодится.
brew install pyenv
pyenv install 3.10.15
pyenv global 3.10.15
Первая команда устанавливает pyenv.
Вторая устанавливает python нужной версии.
Третья говорит pyenv использовать нужную версию.
Далее нужно сделать так чтобы окружения понимало откуда ему запускать бинарники python и откуда брать модули:
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init --path)"
if command -v pyenv 1>/dev/null 2>&1; then
eval "$(pyenv init -)"
fi
Если это нужно временно выполняем в термирале, если на постоянной основе добавляем в файл ~/.zshrc
В файл requirements.txt добавил все необходимые мне модули с указанием их версий.
Установил командой
python3.10 -m pip install -r ./requirements.txt
Ansible нужной версии почему-то не подхватывался в командной строке. У меня не было времени разбираться я сделал алиасы команд.
alias ansible-playbook="$HOME/.pyenv/versions/3.10.15/bin/ansible-playbook"
alias ansible="$HOME/.pyenv/versions/3.10.15/bin/ansible"
Как и в предыдущем случае: если временно в выполняем в терминале, если постоянно добавляем в файл ~/.zshrc
Если у кого есть более изящный способ пишите в комментарии. А если найду сам пришлю вам.
2.7K views15:06