diff --git a/fork_reason b/fork_reason new file mode 100644 index 0000000..adef254 --- /dev/null +++ b/fork_reason @@ -0,0 +1,2 @@ +this was an attempt to fix https://tickets.opscode.com/browse/COOK-3540 +before I realized it was hopeless' diff --git a/providers/pip.rb b/providers/pip.rb index e7010d2..8cfde43 100644 --- a/providers/pip.rb +++ b/providers/pip.rb @@ -108,14 +108,19 @@ def current_installed_version @current_installed_version ||= begin delimeter = /==/ - version_check_cmd = "#{which_pip(new_resource)} freeze | grep -i '^#{new_resource.package_name}=='" - # incase you upgrade pip with pip! - if new_resource.package_name.eql?('pip') - delimeter = /\s/ - version_check_cmd = "pip --version" + if new_resource.package_name.match(/^[^\[]+\[.+\]$/).nil? + version_check_cmd = "#{which_pip(new_resource)} freeze | grep -i '^#{new_resource.package_name}=='" + + # in case you upgrade pip with pip! + if new_resource.package_name.eql?('pip') + delimeter = /\s/ + version_check_cmd = "pip --version" + end + result = shell_out(version_check_cmd) + (result.exitstatus == 0) ? result.stdout.split(delimeter)[1].strip : nil + else + nil end - result = shell_out(version_check_cmd) - (result.exitstatus == 0) ? result.stdout.split(delimeter)[1].strip : nil end end