Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for Redis forks to Redis cache, lookup and modules #9640

Open
1 task done
chriscroome opened this issue Jan 27, 2025 · 9 comments
Open
1 task done

Add support for Redis forks to Redis cache, lookup and modules #9640

chriscroome opened this issue Jan 27, 2025 · 9 comments
Labels
feature This issue/PR relates to a feature request module module plugins plugin (any type)

Comments

@chriscroome
Copy link

chriscroome commented Jan 27, 2025

Summary

The Ansible Community.Mysql Collection supports MySQL and the MariaDB fork, could support for Redis forks, specifically Redict and Valkey be considered for the the Ansible Redis cache, lookup and modules?

These two forks are of particular interest to me since they are packaged by Debian (Redict, Valkey) and RedHat (Redict, Valkey) and they each have a key feature, Redict is CopyLeft and Valkey appears to have the most backing.

Issue Type

Feature Idea

Component Name

redis

Additional Information

I haven't tried using all the existing Redis cache, lookup or modules with either Redict or Valkey but the community.general.redis_info module seems to work fine with Valkey so perhaps all that is needed is an update to the documentation to say that the forks can be used?

The redis-py Python interface to Redis is is developed and maintained by Redis Inc so if changes are required here there is probably not much hope that it will support any forks?

Code of Conduct

  • I agree to follow the Ansible Code of Conduct
@ansibullbot
Copy link
Collaborator

Files identified in the description:

If these files are incorrect, please update the component name section of the description or use the !component bot command.

click here for bot help

@ansibullbot
Copy link
Collaborator

cc @slok
click here for bot help

@ansibullbot ansibullbot added feature This issue/PR relates to a feature request module module plugins plugin (any type) labels Jan 27, 2025
@felixfontein
Copy link
Collaborator

!component +plugins/modules/redis_data_incr.py
!component +plugins/modules/redis_data_info.py
!component +plugins/modules/redis_data.py
!component +plugins/modules/redis_info.py
!component +plugins/cache/redis.py
!component +plugins/module_utils/redis.py
!component +plugins/lookup/redis.py

@ansibullbot
Copy link
Collaborator

Files identified in the description:

If these files are incorrect, please update the component name section of the description or use the !component bot command.

click here for bot help

@ansibullbot
Copy link
Collaborator

@felixfontein
Copy link
Collaborator

Redict doesn't seem to have a Python client, but Valkey has valkey-py (https://github.com/valkey-io/valkey-py), a fork of redis-py.

I guess as long as the functionality from redis-py used by the modules/plugins works fine with Valkey, they are already compatible. Supporting both redis-py and valkey-py is also possible to implement, but requires some effort (and should better have some testing).

@chriscroome
Copy link
Author

Thanks @felixfontein currently Debian doesn't appear to have valkey-py packaged, perhaps for now just documenting what works and what doesn't would be a step in the right direction.

@felixfontein
Copy link
Collaborator

Sure, feel free to create PRs for that :)

@chriscroome
Copy link
Author

Thanks @felixfontein but I don't feel qualified to do that.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature This issue/PR relates to a feature request module module plugins plugin (any type)
Projects
None yet
Development

No branches or pull requests

3 participants