Commit 1322e01a by e0d

Role for creating virtualenvs based on provided parameters.

parent 1eec3be3
---
# virtualenv
#
# Overview:
#
# Creates the edX standard virtual env associated with
# a particular service account. The name of the account, the
# path to the accounts home directory and the name of the
# virtualenv are provided as parameters.
#
# Dependencies:
#
# * common
#
# Example play:
#
# roles:
# - common
# - role: virtualenv
# virtualenv_user: "{{ user }}"
# virtualenv_base: "{{ user_home }}"
# virtualenv_name: "{{ name }}"
#
# Parameters:
#
# * virtualenv_user
# * virtualenv_base
# * virtualenv_name
#
- fail: virtualenv_user required for role
when: virtualenv_user is not defined
- fail: virtualenv_base required for role
when: virtualenv_base is not defined
- fail: virtualenv_name required for role
when: virtualenv_name is not defined
- name: virtualenv | install pre-requisities
apt: pkg={{item}} install_recommends=yes state=present update_cache=yes
with_items: virtualenv_apt_pkgs
tags:
- pre_install
- install
- name: virtualenv | pip install virtualenv
pip: name=virtualenv state=latest
with_items: virtualenv_python_pkgs
tags:
- venv_base
- install
- name: virtualenv | create virtualenv directory
file:
path="{{ virtualenv_base }}/{{ virtualenv_name }}" owner={{ virtualenv_user }}
group={{ virtualenv_user }} mode=2775 state=directory
sudo: yes
sudo_user: "{{ virtualenv_user }}"
tags:
- venv_base
- install
- name: virtualenv | create the virtualenv directory initial contents
command:
/usr/local/bin/virtualenv "{{ virtualenv_base }}/{{ virtualenv_name }}" --distribute
creates="{{ virtualenv_base }}/{{ virtualenv_name }}/bin/activate"
sudo: yes
sudo_user: "{{ virtualenv_user }}"
tags:
- venv_base
- install
- name: virtualenv | pip install gunicorn
pip:
name=gunicorn virtualenv="{{ virtualenv_base }}/{{ virtualenv_name }}"
state=present
sudo: yes
sudo_user: "{{ virtualenv_user }}"
tags:
- gunicorn
- install
\ No newline at end of file
---
virtualenv_apt_pkgs:
- python2.7
- python-pip
- python2.7-dev
virtualenv_python_pkgs:
- virtualenv
- virtualenvwrapper
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment