ansible role to install miniconda, Python-agnostic binary package manager.
Available role variables are listed below, along with default values:
miniconda_python: 3
miniconda_version: "3.16.0"
miniconda_installer: Miniconda{{ "3" if miniconda_python == 3 or miniconda_version not in miniconda_oldversions else "" }}-{{ miniconda_version }}-{{ miniconda_systems[ansible_system] }}-{{ miniconda_architecture[ansible_architecture] }}.sh
miniconda_installer_checksum: ""
miniconda_prefix: "{{ ansible_env.HOME }}/miniconda{{ miniconda_python if miniconda_python == 3 else '' }}"
miniconda_manage_dependencies: True
miniconda_update_conda: False
miniconda_env: ""miniconda_python is a variable to specify python version miniconda based on.
default: 3: install and use python3 based miniconda.
miniconda_version is a variable to specify version of miniconda.
default: "3.16.0".
miniconda_installer is a variable to specify the miniconda installer filename.
default: defined by variables miniconda_python,miniconda_version and facts ansible_system,ansible_architecture
miniconda_installer_checksum is a variable to checksum for miniconda_installer.
default: "", do not check the digest.
miniconda_prefix is a variable to specify install prefix for miniconda.
default: ~/miniconda or ~/miniconda3, it depends on miniconda_python.
miniconda_manage_dependencies is a variable to specify wheather install tar and bzip or not,
these are required to run miniconda_installer.
default: True, install tar and bzip.
miniconda_update_conda is a variable to specify wheather to run conda update conda or not.
default: False, do not update conda.
miniconda_env_create_opts is a variable to specify extra options for the conda env create task
default: "-q", quiet mode (is recommended to ensure the create works)
miniconda_env_update_opts is a variable to specify extra options for the conda env update task
default: "", no additional opts
useful to set '--prune' (remove installed packages not defined in environment)
miniconda_env is a variable to specify conda environment to create.
default: "", nothing will be created.
its format is exactly same as conda env spec file, for example:
miniconda_env:
name: stats
channels:
- javascript
dependencies:
- python=3.4 # or 2.7 if you are feeling nostalgic
- bokeh=0.9.2
- numpy=1.9.*
- nodejs=0.10.*
- flask
- pip:
- Flask-Testingyou can install/update default environment by setting root to miniconda_env.name.
If you run this role with gather_facts: no, manually setting the following variables is required:
ansible_system: choice of['Linux', 'Darwin']ansible_architecture: choice of['x86_64', 'i386', 'armv7l', 'armv6l', 'ppc64le'], checkminiconda_versionand availability in miniconda installer archiveansible_pkg_mgr: package system, e.g,aptoryum,dnf, etc.
- hosts: servers
roles:
- role: uchida.miniconda
miniconda_python: 2
miniconda_prefix: /opt/miniconda
miniconda_env:
name: scipy
dependencies:
- python=2
- numpy=1.9
- scipy=0.14.0
- matplotlib=1.4.0