Role Detail

gforcada.compile-python

Install all dependencies and compile any version of Python
Downloads
42
Type Ansible
Minimum Ansible Version 2.0
Installation $ ansible-galaxy install gforcada.compile-python
Tags
development
python
Last Commit
Last Imported
Version History
Version Release Date
1.2
1.1.1
1.1.0
1.0.2
1.0.1
1.0
0.6.1
0.6
0.5.1
0.5
0.4
0.3
0.2
0.1
OS Platforms
Platform Version
Ubuntu trusty
Ubuntu xenial
Last 10 Imports
Completed Status
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS
SUCCESS

Compile python

Usually you don't want to mess with system packages, specially if the package in question is python.

Distributions usually patch python in a way that may not work together with your app.

On those occasions rather than replacing the version provided by your distribution is usually better to compile your own.

And that's what this ansible playbook is for!

Installs all necessary tools to build and install Python and then installs any given version of Python.

So far Python 2.4, 2.6, 2.7 and 3.5 are supported, plus installing system dependencies to install (not done in this role):

  • pillow
  • lxml

Adding support for other version should be trivial, pull requests welcome.

For ease of usage an easy to remember symlink is provided for each python version, i.e. /srv/python27, /srv/python35 and so on.

Requirements

None

Role Variables

  • python_24: true/false (defaults to false)
  • python_26: true/false (defaults to false)
  • python_27: true/false (defaults to true)
  • python_35: true/false (defaults to true)
  • pillow: true/false (defaults to false)
  • lxml: true/false (defaults to false)

Dependencies

Ubuntu 14.04 (trusty) Ubuntu 16.04 (xenial)

Note

to run the role on xenial one first needs to ssh into the virtual machine and install python, i.e.: sudo apt-get install python.

Example Playbook

- hosts: servers
  roles:
    - gforcada.compile-python
  vars:
    - python_26: true
    - python_27: true
    - python_35: true

There is an example Vagrantfile to test it locally.

License

BSD

Author Information

Gil Forcada Codinachs

Contribute

Code can be found at: https://github.com/gforcada/ansible-compile-python

Please report issues at: https://github.com/gforcada/ansible-compile-python/issues

None