ansible - 将 ansible 功能限制为旧版本?
问题描述
在我的工作环境中,我已经升级到了比同事更新的 ansible 版本。偶然地,我一直在使用他们的版本还没有的功能。
有没有办法在我这边阻止这种情况,因为我强迫 ansible 假装它实际上是一个旧版本?
解决方案
您可以使用 python 虚拟环境来处理多个 ansible 版本。我使用pyenv来管理 virtualenvs。以下是在 Linux 上使用 bash 的方法:
安装 pyenv:
如果您不想要默认路径,您可以根据自己的喜好更改路径。
git clone https://github.com/pyenv/pyenv.git ${HOME}/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ${HOME}/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ${HOME}/.bashrc
echo 'if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init -)"; fi' >> ${HOME}/.bashrc
为用户安装 pyenv virtualenv:
git clone https://github.com/pyenv/pyenv-virtualenv.git ${HOME}/.pyenv/plugins/pyenv-virtualenv
echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.bashrc
export PYENV_VIRTUALENV_DISABLE_PROMPT=1
为当前 shell 初始化 pyenv 环境
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
在一个 virtualenv 中安装旧版 ansible:
pyenv virtualenv old_env
pyenv activate old_env
pip install ansible==2.4
在其他 virtualenv 中安装更新的 ansible:
pyenv virtualenv new_env
pyenv activate new_env
pip install ansible==2.7
日常使用:
您可以随时在 virtualenvs 之间切换。例如切换到旧的 ansible virtualenv 并检查 ansible 版本,你可以这样做:
pyenv activate old_env
ansible --version
推荐阅读
- markdown - MARKDOWN 粗体字
- swift - DateFormatter: dateFormat 毫秒 Swift
- javascript - 如何增加 3 的数量限制,即 000
- vba - 如何单击日期选择器硒 VBA?
- wpf - Wpf 应用程序在启动时不启动
- swift - Swift 编译器错误:数学方程上的“表达式太复杂”
- javascript - 如何删除所需属性的 HTML5 表单验证默认错误消息
- uploadcare - 如何在 Uploadcare Widget 中实现 minDimensions
- php - 我想刷新表单提交页面,但不要在 Laravel 中再次重新提交
- maven - Maven 和 jenkins 'mvn' 未被识别为内部或外部命令、可运行程序或批处理文件