kgeisz opened a new pull request, #8714: URL: https://github.com/apache/hbase/pull/8714
https://issues.apache.org/jira/browse/HBASE-30437 ## Summary The changes in the pull request make it so the Read-Replica integration tests are run within a Docker container test environment. The Docker container environment is build using the Dockerfile at `dev-support/docker/Dockerfile`. With this new setup, the user should be able to checkout the HBase repo (or this branch) and start the Read-Replica integration tests with: `bash dev-support/read-replica/hbase_nightly_read_replica_test.sh`. The goal is for this to work both with Jenkins and on a user's local machine. The following is done when this script is run: 1. Build a Docker image using `dev-support/docker/Dockerfile`. This will be the test environment. 2. Start the env container, which invokes `dev-support/read-replica/run_read_replica_integration_tests.sh`. This script then executed the original integration test flow, which includes the following steps: 3. Clone the HBase repo to `dev-support/read-replica` so it can be used to build a read-replica image. 4. Copy protobuf 5. Create Python env and install dependencies 6. Compile protobuf 7. Build hbase-docker image for the HBase Read-Replica container setup 8. Run the integration tests with `pytest` ## Change Details 1. Adds `docker`, `docker compose` and `python-venv` to `dev-support/docker/Dockerfile` 2. Adds `run_read_replica_integration_tests.sh`, which runs the integration tests. It is meant to be run within the test env container. (This is what `hbase_nightly_read_replica_test.sh` was originally doing). 3. Refactors `hbase_nightly_read_replica_test.sh` to build a test environment Docker image using `dev-support/docker/Dockerfile`. After, it calls `run_read_replica_integration_tests.sh`. 4. Adds a `-d|--dev` option to `hbase_nightly_read_replica_test.sh`. With this, the image is built and the container is run, but `run_read_replica_integration_tests.sh` is not executed. This allows the user to explore the container and/or run `run_read_replica_integration_tests.sh` multiple times or in specific ways. 5. Adds `-k` option to both `run_read_replica_integration_tests.sh` and `hbase_nightly_read_replica_test.sh`. With this, users can run specific tests in a `pytest` style. (See [pytest docs](https://docs.pytest.org/en/stable/example/markers.html#using-k-expr-to-select-tests-based-on-their-name)). -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
