diff --git a/.github/workflows/docker-test.yml b/.github/workflows/docker-test.yml index 59218e7..2e1e321 100644 --- a/.github/workflows/docker-test.yml +++ b/.github/workflows/docker-test.yml @@ -99,8 +99,9 @@ jobs: run: | echo "Waiting for OpenVPN server to install and start..." for i in {1..60}; do - # Use pgrep -x to match exactly "openvpn" process, not "apt-get install openvpn" - if docker exec openvpn-server pgrep -x openvpn > /dev/null 2>&1; then + # Use pgrep -f to match openvpn running with server.conf, not transient + # processes like "openvpn --genkey" that run during installation + if docker exec openvpn-server pgrep -f "openvpn.*server.conf" > /dev/null 2>&1; then echo "OpenVPN server is running!" break fi @@ -111,7 +112,7 @@ jobs: done # Final check - if ! docker exec openvpn-server pgrep -x openvpn > /dev/null 2>&1; then + if ! docker exec openvpn-server pgrep -f "openvpn.*server.conf" > /dev/null 2>&1; then echo "ERROR: OpenVPN server failed to start" docker logs openvpn-server exit 1