question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Broken dependency from pip's sh module

See original GitHub issue

Hey guys,

there seem to be a fresh version of https://pypi.org/project/sh/ released 15h ago (at the time of writing this), which is a minor bump (despite being ~3 years in develop, but let’s shelve that for now). The thing is it breaks molecule converge (and possibly other tasks as well). Or at least in the instances/config I’m using it in.

The case in question is trying to run DO provisioner using 2.x branch of molecule. More details as per the ticket’s template.

When force-installed the previous version: pip install sh==1.12.14 it worked just fine. Not sure if that’s an issue of of molecule or that said package, but reporting here, since so far it seem like we’re maybe trying to pass a variable in a format that is not well formatted, given the error message. But that’s just a hunch.

Issue Type

  • Bug report

Molecule and Ansible details

molecule==2.22
ansible==2.9.0

Molecule installation method: pip

Ansible installation method (one of): pip

Desired Behavior

molecule provisioning ran OK

Actual Behaviour

  'env': value u'/[a project]/provisioning/.env.yml' of env key 'MOLECULE_ENV_FILE' must be a str

please note I do not have the .env.yml file anywhere added explicitly in my provisioning folder (or subfolders for that matter).

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Comments:8 (6 by maintainers)

github_iconTop GitHub Comments

4reactions
markgoddardcommented, Apr 28, 2020

A Python 2 fix would be nice.

4reactions
apatardcommented, Apr 28, 2020

fwiw, I’ve noticed that molecule’s molecule/test/conftest.py:run_command is broken with this new version of sh.py, breaking molecule’s testsuite. The error message is different but forcing sh == 1.12.14 makes it work again.

Read more comments on GitHub >

github_iconTop Results From Across the Web

Dependency Resolution - pip documentation v22.3.1
The process of determining which version of a dependency to install is known as dependency resolution. This behaviour can be disabled by passing...
Read more >
Dependency Management with Pip, Python's Package Manager
One way to avoid dependency conflicts is to use an alternative Python package manager, like conda, poetry or ActiveState's State Tool. While all ......
Read more >
Python Pip Error When Installing Dependencies - Stack Overflow
Posting this answer here specifically for people that use Manjaro Linux (where the use of pip is not recommended as it can break...
Read more >
Using Python's pip to Manage Your Projects' Dependencies
Finding pip on Your System; Running pip as a Module; Using pip in a ... look at the package's metadata by using the...
Read more >
How to use pip (Install, update, uninstall packages) - nkmk note
The license and dependencies are displayed. $ pip show pip Name: pip Version: 18.1 Summary: The PyPA recommended tool for installing Python ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found