diff --git a/manifests/install.pp b/manifests/install.pp index 5ed143e..304e21a 100644 --- a/manifests/install.pp +++ b/manifests/install.pp @@ -113,12 +113,11 @@ system => true, } + $upgrade_pip_command = "${venv_dir}/bin/pip3 install --upgrade pip" if $install_dependencies_from_filesystem { - $install_requirements_command = "${venv_dir}/bin/pip3 install -r requirements.txt --no-index --find-links ${python_dependency_path}" - $install_local_requirements_command = "${venv_dir}/bin/pip3 install -r local_requirements.txt --no-index --find-links ${python_dependency_path}" + $install_requirements_command = "${venv_dir}/bin/pip3 install -r requirements.txt -r local_requirements.txt --no-index --find-links ${python_dependency_path}" } else { - $install_requirements_command = "${venv_dir}/bin/pip3 install -r requirements.txt" - $install_local_requirements_command = "${venv_dir}/bin/pip3 install -r local_requirements.txt" + $install_requirements_command = "${venv_dir}/bin/pip3 install -r requirements.txt -r local_requirements.txt" } archive { $local_tarball: @@ -129,7 +128,7 @@ extract_path => $install_root, creates => $software_directory_with_version, cleanup => true, - notify => Exec['install python requirements'], + notify => Exec['upgrade pip'], } exec { 'netbox permission': @@ -154,7 +153,7 @@ file_line { 'napalm': path => "${software_directory}/local_requirements.txt", line => 'napalm', - notify => Exec['install local python requirements'], + notify => Exec['install python requirements'], require => File['local_requirements'] } } @@ -163,7 +162,7 @@ file_line { 'django_storages': path => "${software_directory}/local_requirements.txt", line => 'django-storages', - notify => Exec['install local python requirements'], + notify => Exec['install python requirements'], require => File['local_requirements'] } } @@ -172,7 +171,7 @@ file_line { 'ldap': path => "${software_directory}/local_requirements.txt", line => 'django-auth-ldap', - notify => Exec['install local python requirements'], + notify => Exec['install python requirements'], require => File['local_requirements'] } } @@ -184,23 +183,23 @@ cwd => '/tmp', unless => "/usr/bin/grep '^[\\t ]*VIRTUAL_ENV=[\\\\'\\\"]*${venv_dir}[\\\"\\\\'][\\t ]*$' ${venv_dir}/bin/activate", } - ~>exec { 'install python requirements': + ~>exec { 'upgrade pip': cwd => $software_directory, path => [ "${venv_dir}/bin", '/usr/bin', '/usr/sbin' ], environment => ["VIRTUAL_ENV=${venv_dir}"], provider => shell, user => $user, - command => $install_requirements_command, + command => $upgrade_pip_command, onlyif => "/usr/bin/grep '^[\\t ]*VIRTUAL_ENV=[\\\\'\\\"]*${venv_dir}[\\\"\\\\'][\\t ]*$' ${venv_dir}/bin/activate", refreshonly => true, } - ~>exec { 'install local python requirements': + ~>exec { 'install python requirements': cwd => $software_directory, path => [ "${venv_dir}/bin", '/usr/bin', '/usr/sbin' ], environment => ["VIRTUAL_ENV=${venv_dir}"], provider => shell, user => $user, - command => $install_local_requirements_command, + command => $install_requirements_command, onlyif => "/usr/bin/grep '^[\\t ]*VIRTUAL_ENV=[\\\\'\\\"]*${venv_dir}[\\\"\\\\'][\\t ]*$' ${venv_dir}/bin/activate", refreshonly => true, }