Module: VagrantPlugins::Ventriloquist::Cap::Debian::Python
- Defined in:
- lib/ventriloquist/cap/platforms/debian/python.rb
Class Method Summary collapse
Class Method Details
.pyenv_install(machine) ⇒ Object
6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/ventriloquist/cap/platforms/debian/python.rb', line 6 def self.pyenv_install(machine) machine.communicate.tap do |comm| if ! comm.test('test -d $HOME/.pyenv') machine.env.ui.info('Installing pyenv dependencies') # TODO: Use capability comm.sudo('sudo apt-get install -y build-essential libreadline-dev libssl-dev libsqlite3-dev libbz2-dev') machine.env.ui.info('Installing pyenv') comm.execute " git clone git://github.com/yyuu/pyenv.git $HOME/.pyenv\n echo 'export PYENV_ROOT=\"$HOME/.pyenv\"' >> ~/.profile\n echo 'export PATH=\"$PYENV_ROOT/bin:$PATH\"' >> ~/.profile\n echo 'eval \"$(pyenv init -)\"' >> ~/.profile\n INSTALL\n end\n end\nend\n" |
.pyenv_install_python(machine, version) ⇒ Object
24 25 26 27 28 29 30 31 32 |
# File 'lib/ventriloquist/cap/platforms/debian/python.rb', line 24 def self.pyenv_install_python(machine, version) if ! machine.communicate.test("pyenv versions | grep #{version}") machine.env.ui.info("Installing Python #{version}") machine.communicate.execute("pyenv install #{version}") machine.communicate.execute("pyenv global #{version}") else machine.env.ui.info("Skipping Python '#{version}' installation") end end |