File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 44#
55# === Parameters
66#
7+ # [*requirements*]
8+ # Path to the requirements file. Defaults to the resource name
9+ #
710# [*virtualenv*]
811# virtualenv to run pip in. Default: system-wide
912#
2326# Ashley Penney
2427#
2528define python::requirements (
26- $virtualenv = ' system' ,
27- $proxy = false
29+ $requirements = $name,
30+ $virtualenv = ' system' ,
31+ $proxy = false
2832) {
2933
30- $requirements = $name
31-
3234 $pip_env = $virtualenv ? {
3335 ' system' => ' `which pip`' ,
3436 default => " ${virtualenv} /bin/pip" ,
4143
4244 $req_crc = " ${requirements} .sha1"
4345
44- file { $requirements:
45- ensure => present ,
46- mode => ' 0644' ,
47- owner => ' root' ,
48- group => ' root' ,
49- replace => false ,
50- content => ' # Puppet will install and/or update pip packages listed here' ,
46+ # This will ensure multiple python::virtualenv definitions can share the
47+ # the same requirements file.
48+ if !defined (File [$requirements ]) {
49+ file { $requirements:
50+ ensure => present ,
51+ mode => ' 0644' ,
52+ owner => ' root' ,
53+ group => ' root' ,
54+ replace => false ,
55+ content => ' # Puppet will install and/or update pip packages listed here' ,
56+ }
5157 }
5258
5359 # SHA1 checksum to detect changes
Original file line number Diff line number Diff line change 7676 }
7777
7878 if $requirements {
79- exec { "python_requirements_initial_install_${requirements}" :
79+ exec { "python_requirements_initial_install_${requirements}_${venv_dir} " :
8080 command => " ${venv_dir} /bin/pip install ${proxy_flag} --requirement ${requirements} " ,
8181 refreshonly => true ,
8282 timeout => 1800,
8383 subscribe => Exec[" python_virtualenv_${venv_dir} " ],
8484 }
8585
86- python::requirements { $requirements:
87- virtualenv => $venv_dir ,
88- proxy => $proxy ,
89- require => Exec[" python_virtualenv_${venv_dir} " ],
86+ python::requirements { "${requirements}_${venv_dir}" :
87+ requirements => $requirements ,
88+ virtualenv => $venv_dir ,
89+ proxy => $proxy ,
90+ require => Exec[" python_virtualenv_${venv_dir} " ],
9091 }
9192 }
9293
You can’t perform that action at this time.
0 commit comments