summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--manifests/requirements.pp10
-rw-r--r--tests/requirements.pp5
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',
+}