diff options
author | Sergey Stankevich <sergey@stankevi.ch> | 2013-04-19 05:52:13 -0700 |
---|---|---|
committer | Sergey Stankevich <sergey@stankevi.ch> | 2013-04-19 05:52:13 -0700 |
commit | 4d8d040186d45556f5ba37ba311c0ec06e94499b (patch) | |
tree | 9b665692654bf2192f841f909f7c6be5c1f14bd6 | |
parent | a209fb9a0e6bc6100df0ebc3323e1ec8eab80bbc (diff) | |
parent | 8e99e56af8b85923aa146d2d0ef4e7b2f92b3471 (diff) |
Merge pull request #8 from salimane/pr_python_requirements_cwd
python::requirements Error: Parameter cwd failed on Exec for virtualenv=system
-rw-r--r-- | manifests/requirements.pp | 10 | ||||
-rw-r--r-- | tests/requirements.pp | 5 |
2 files changed, 13 insertions, 2 deletions
diff --git a/manifests/requirements.pp b/manifests/requirements.pp index 22988e5..cae32bf 100644 --- a/manifests/requirements.pp +++ b/manifests/requirements.pp @@ -31,6 +31,11 @@ define python::requirements ( $proxy = false ) { + $cwd = $virtualenv ? { + 'system' => '/', + default => "${virtualenv}/bin/pip", + } + $pip_env = $virtualenv ? { 'system' => '`which pip`', default => "${virtualenv}/bin/pip", @@ -46,7 +51,7 @@ define python::requirements ( # This will ensure multiple python::virtualenv definitions can share the # the same requirements file. if !defined(File[$requirements]) { - file { $requirements: + file { $requirements: ensure => present, mode => '0644', owner => 'root', @@ -64,8 +69,9 @@ define python::requirements ( } exec { "python_requirements_update_${name}": + provider => shell, command => "${pip_env} install ${proxy_flag} -Ur ${requirements}", - cwd => $virtualenv, + cwd => $cwd, refreshonly => true, timeout => 1800, subscribe => Exec["python_requirements_check_${name}"], diff --git a/tests/requirements.pp b/tests/requirements.pp index a57093f..9a954fa 100644 --- a/tests/requirements.pp +++ b/tests/requirements.pp @@ -8,3 +8,8 @@ python::requirements { '/var/www/project1/requirements.txt': virtualenv => '/var/www/project1', proxy => 'http://proxy.domain.com:3128', } + +python::requirements { '/var/www/project1/requirements.txt': + virtualenv => 'system', + proxy => 'http://proxy.domain.com:3128', +} |