From 568ae196c4e623a4d0081eddbc0c9aa9f68585b3 Mon Sep 17 00:00:00 2001 From: rajvarun77 <287367605+rajvarun77@users.noreply.github.com> Date: Sun, 31 May 2026 15:39:20 -0400 Subject: [PATCH] ci(test): install mysql-server for handshake integration tests The MySQL auth handshake integration test (added in the mysql codec PR #3310) spins up a throwaway mysqld via the which-then-spawn pattern from test/brpc_redis_unittest.cpp, skipping when the binary is absent. Install mysql-server in both make-based unittest jobs so the test actually runs in CI; symlink mysqld onto PATH and stop the system service so the test owns the default port. Co-Authored-By: Claude Opus 4.8 (1M context) --- .github/workflows/ci-linux.yml | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/.github/workflows/ci-linux.yml b/.github/workflows/ci-linux.yml index 8a36af6024..a7ce0b4a5f 100644 --- a/.github/workflows/ci-linux.yml +++ b/.github/workflows/ci-linux.yml @@ -196,6 +196,17 @@ jobs: cat config.mk cd test make -j ${{env.proc_num}} + - name: install mysql-server + run: | + sudo apt-get update + sudo apt-get install -y mysql-server + # The distro packages mysqld under /usr/sbin; expose it on PATH so + # the handshake integration test's `which mysqld` probe finds it. + # The test spins up its own throwaway instance, so stop the system + # service to free the default port. + sudo ln -sf /usr/sbin/mysqld /usr/local/bin/mysqld + sudo service mysql stop || true + mysqld --version - name: run tests run: | cd test @@ -214,6 +225,17 @@ jobs: cat config.mk cd test make NEED_GPERFTOOLS=0 -j ${{env.proc_num}} + - name: install mysql-server + run: | + sudo apt-get update + sudo apt-get install -y mysql-server + # The distro packages mysqld under /usr/sbin; expose it on PATH so + # the handshake integration test's `which mysqld` probe finds it. + # The test spins up its own throwaway instance, so stop the system + # service to free the default port. + sudo ln -sf /usr/sbin/mysqld /usr/local/bin/mysqld + sudo service mysql stop || true + mysqld --version - name: run tests run: | cd test