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

Migrate to clients test image #3415

Merged
merged 37 commits into from
Nov 21, 2024
Merged

Conversation

uglide
Copy link
Contributor

@uglide uglide commented Oct 15, 2024

This change introduces a new test matrix based on Redis versions 7.4, 7.2, and 6.2. The new workflows are Redis 8.0 ready, but 8.0 should be added to test matrix as a separate PR to address broken tests and fix incompatibility with 8.0.
By default, we start integration jobs only to test a change on all Redis versions with Python 3.8 and 3.12. On success, all other compatibility test runs kick in to do full validation.

@uglide uglide requested a review from vladvildanov October 15, 2024 13:51
@uglide
Copy link
Contributor Author

uglide commented Oct 15, 2024

CC: @ggivo

uglide added 17 commits October 22, 2024 18:55
- Use clients-testing image for standalone and cluster
- Remove hardcoded TLS certificates and keys
- Remove stunnel
- Remove Cluster docker and configs
- Reduce copy paste by using reusable action for running tests
- Gain better control of tests matrix

Add missing actions checkout

More fixes in integration workflow

Another attempt to fix matrix
- Automatically map Redis version to Redis Stack version and use it for testing module commands
- Remove Graph commands from execution by default
- Include more Redis versions to the test matrix
@uglide uglide force-pushed the migrate_to_clients_test_image branch from 425b0fb to 2cf798f Compare October 22, 2024 16:56
@uglide uglide force-pushed the migrate_to_clients_test_image branch from 2cf798f to 0daf73b Compare October 22, 2024 16:59
@uglide uglide marked this pull request as ready for review October 24, 2024 15:21
@vladvildanov vladvildanov merged commit 3d45064 into master Nov 21, 2024
33 checks passed
@vladvildanov vladvildanov deleted the migrate_to_clients_test_image branch November 21, 2024 09:32
vladvildanov added a commit that referenced this pull request Dec 6, 2024
* Migrate to clients test image (#3415)

* Migrate to client-testing image

- Use clients-testing image for standalone and cluster
- Remove hardcoded TLS certificates and keys
- Remove stunnel
- Remove Cluster docker and configs

* Fix migration bugs

* Create reusable action to run tests

- Reduce copy paste by using reusable action for running tests
- Gain better control of tests matrix

Add missing actions checkout

More fixes in integration workflow

Another attempt to fix matrix

* Reorg test matrix

* Fix jobs names and execution order

* Execute standalone and cluster test simultaneously

* Streamline test execution

- Automatically map Redis version to Redis Stack version and use it for testing module commands
- Remove Graph commands from execution by default
- Include more Redis versions to the test matrix

* More fixes to integration job

* Move python compatibility tests to a separate task

* Improve run-tests action

* Add missing pytest marks for TS tests

* Fix cluster configuration

* Debug cluster tests

* Fix Cluster TLS port

* Move current redis version to env var

* Fix ssl tests

* Show CLUSTER NODES on fail

* Fix integration workflow bugs

* Add workarounds for IPv6 bug in tests

* Use hostname instead of hardcoded IPv4 loopback

* Fix bug in _get_client

* Fix run-tests action

* Fix imports

* Add missing version guards in search tests

* Add compatibility for Redis < 7

* Add missing version guard in search tests

* Fix run-tests

* Add missing tls-auth-clients option

* Skip module tests when Redis < 7 and RESP3 is enabled

* Fix async test_moved_redirection_on_slave_with_default

The test was broken for a while after migrating to all-in-one container with Cluster

* Cleanup test after debugging

* Use correct profile in install_and_test.sh

* Use matrix to execute hiredis<=3.0.0 tests

* Fix hiredis job

* Fix pytest command in install_and_test.sh

* Use 7.4.1 as default version in docker-compose.yml

* Fix uvloop-tests

* Fixed unsecured tempfile.mktemp() command usage (#3446)

* Fixed unsecured tempfile.mktemp() command usage

* Added proper tuple handling

* Fixed bug with SLOWLOG GET response parsing from Redis Enterprise (#3441)

* Fixed issue with invoking _close() on closed event loop (#3438)

* Fixed issue with invoking _close() on closed event loop

* Removed unused import

* Revert weakref changes

* Codestyle fix

* Added test coverage

* Codestyle fixes

* Codestyle fixes

* Removed failure check that fails in 3.12

* Codestyle fixes

* Codestyle fixes

* Fixing randomly failing test (#3437)

* Fixing randomly failing test

* Always rounding up to avoid randomly failing tests

* Always rounding up to avoid randomly failing tests

---------

Co-authored-by: Vladyslav Vildanov <117659936+vladvildanov@users.noreply.github.com>

* Updated package version

---------

Co-authored-by: Igor Malinovskiy <u.glide@gmail.com>
Co-authored-by: Ilian Iliev <ilian@ilian.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants