Skip to content

Remove passlib dependency from infra/ansible when ansible #313

@martyngigg

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.

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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions