summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--manifests/pip.pp11
2 files changed, 12 insertions, 1 deletions
diff --git a/README.md b/README.md
index 816610d..aafff6a 100644
--- a/README.md
+++ b/README.md
@@ -32,6 +32,8 @@ Installs and manages packages from pip.
**virtualenv** — virtualenv to run pip in.
+**url** — URL to install from. Default: none
+
**proxy** — Proxy server to use for outbound connections. Default: none
python::pip { 'flask':
diff --git a/manifests/pip.pp b/manifests/pip.pp
index 9762c10..3a8ec1b 100644
--- a/manifests/pip.pp
+++ b/manifests/pip.pp
@@ -10,6 +10,9 @@
# [*virtualenv*]
# virtualenv to run pip in.
#
+# [*url*]
+# URL to install from. Default: none
+#
# [*proxy*]
# Proxy server to use for outbound connections. Default: none
#
@@ -27,6 +30,7 @@
define python::pip (
$virtualenv,
$ensure = present,
+ $url = false,
$proxy = false
) {
@@ -45,10 +49,15 @@ define python::pip (
default => "^${name}==",
}
+ $source = $url ? {
+ false => $name,
+ default => "${url}#egg=${name}",
+ }
+
case $ensure {
present: {
exec { "pip_install_${name}":
- command => "${virtualenv}/bin/pip install ${proxy_flag} ${name}",
+ command => "${virtualenv}/bin/pip install ${proxy_flag} ${source}",
unless => "${virtualenv}/bin/pip freeze | grep -i -e ${grep_regex}",
}
}