summaryrefslogtreecommitdiff
path: root/manifests/requirements.pp
diff options
context:
space:
mode:
authorNeil Saunders <neil@zeebox.com>2013-12-19 17:43:51 +0000
committerNeil Saunders <neil@zeebox.com>2013-12-19 17:43:51 +0000
commit071cc312167d3722bff723191fec229a071a03f4 (patch)
tree6d075a55b19d8706e209a5abaa5632c74b6046fd /manifests/requirements.pp
parentc2a96f8dd40d75c6cf15518010e0a00889df6690 (diff)
Adding forcerefresh parameter
Diffstat (limited to 'manifests/requirements.pp')
-rw-r--r--manifests/requirements.pp12
1 files changed, 9 insertions, 3 deletions
diff --git a/manifests/requirements.pp b/manifests/requirements.pp
index ee44fa4..5fa6eb9 100644
--- a/manifests/requirements.pp
+++ b/manifests/requirements.pp
@@ -27,6 +27,11 @@
# [*environment*]
# Additional environment variables required to install the packages. Default: none
#
+# [*forceupdate*]
+# Run a pip install requirements even if we don't receive an event from the
+# requirements file - Useful for when the requirements file is written as part of a
+# resource other than file (E.g vcsrepo)
+#
# === Examples
#
# python::requirements { '/var/www/project1/requirements.txt':
@@ -47,7 +52,8 @@ define python::requirements (
$group = 'root',
$proxy = false,
$src = false,
- $environment = []
+ $environment = [],
+ $forceupdate = false,
) {
if $virtualenv == 'system' and ($owner != 'root' or $group != 'root') {
@@ -56,7 +62,7 @@ define python::requirements (
$cwd = $virtualenv ? {
'system' => '/',
- default => "${virtualenv}",
+ default => $virtualenv,
}
$pip_env = $virtualenv ? {
@@ -91,7 +97,7 @@ define python::requirements (
exec { "python_requirements${name}":
provider => shell,
command => "${pip_env} --log ${cwd}/pip.log install ${proxy_flag} ${src_flag} -r ${requirements}",
- refreshonly => true,
+ refreshonly => !$forceupdate,
timeout => 1800,
user => $owner,
subscribe => File[$requirements],