47 lines
1.2 KiB
Diff
47 lines
1.2 KiB
Diff
|
From 4060d4cd24ac0fbcf83c1521553921d76c070a57 Mon Sep 17 00:00:00 2001
|
||
|
From: Bo Maryniuk <bo@suse.de>
|
||
|
Date: Fri, 21 Sep 2018 17:31:39 +0200
|
||
|
Subject: [PATCH] Do not load pip state if there is no 3rd party
|
||
|
dependencies
|
||
|
|
||
|
Safe import 3rd party dependency
|
||
|
---
|
||
|
salt/modules/pip.py | 13 ++++++++++++-
|
||
|
1 file changed, 12 insertions(+), 1 deletion(-)
|
||
|
|
||
|
diff --git a/salt/modules/pip.py b/salt/modules/pip.py
|
||
|
index c4de0c2984..a60bdca0bb 100644
|
||
|
--- a/salt/modules/pip.py
|
||
|
+++ b/salt/modules/pip.py
|
||
|
@@ -96,6 +96,12 @@ import salt.utils.url
|
||
|
import salt.utils.versions
|
||
|
from salt.exceptions import CommandExecutionError, CommandNotFoundError
|
||
|
|
||
|
+try:
|
||
|
+ import pkg_resources
|
||
|
+except ImportError:
|
||
|
+ pkg_resources = None
|
||
|
+
|
||
|
+
|
||
|
# This needs to be named logger so we don't shadow it in pip.install
|
||
|
logger = logging.getLogger(__name__) # pylint: disable=invalid-name
|
||
|
|
||
|
@@ -114,7 +120,12 @@ def __virtual__():
|
||
|
entire filesystem. If it's not installed in a conventional location, the
|
||
|
user is required to provide the location of pip each time it is used.
|
||
|
"""
|
||
|
- return "pip"
|
||
|
+ if pkg_resources is None:
|
||
|
+ ret = False, 'Package dependency "pkg_resource" is missing'
|
||
|
+ else:
|
||
|
+ ret = "pip"
|
||
|
+
|
||
|
+ return ret
|
||
|
|
||
|
|
||
|
def _pip_bin_env(cwd, bin_env):
|
||
|
--
|
||
|
2.39.2
|
||
|
|
||
|
|