Skip to content

Remove passlib dependency from infra/ansible when ansible #313

Description

@martyngigg

For a while bcrypt has been pinned to be compatible with passlib. Notes from requirements.txt:

# Pinned bcrypt to avoid seeing the following warning. It's not an error but looks
# too much like one. Fixed required in passlib: https://foss.heptapod.net/python-libs/passlib/-/issues/190
# Once this passlib issue is fixed upgrade passlib version and move brcypt to latest
# (trapped) error reading bcrypt version
#Traceback (most recent call last):
#  File ".../lib/pythonX.XX/site-packages/passlib/handlers/bcrypt.py", line 620, in _load_backend_mixin
#    version = _bcrypt.__about__.__version__
#
# bcrypt 5.0.0 gives a fresh issue with passlib: https://github.com/ansible/ansible/issues/85919
#
# Waiting for https://github.com/ansible/ansible/pull/85970 to land in a released version of ansible
# to remove passlib completely.

passlib looks unmaintained and Ansible supports an internal crypt module. This is in ansible-core>=2.21 but no released version of the main ansible package yet supports it. When a new release of ansible supports ansible-core >= 2.21 update both core and main ansible packages and remove the passlib requirement.

To test this issue you can try the command:

ansible-playbook -i inventories/dev/inventory-dev.ini -l trino -t trino --start-at-task="Ensure Trino passwords are available" --step site.yml

It should complete with no warnings.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    technical debtTasks to deliver a more robust solution to a quick fix required for speed of implementation

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions