1
0
mirror of synced 2025-07-17 17:40:57 +03:00

Proxy test (#2172)

* Add proxy test on CI

* Add Brotli and Zstd dev packages to proxy test workflow

* Fix Docker Compose command for GitHub Actions compatibility

* Add proxy readiness check and netcat dependency

* Use netcat-openbsd instead of virtual netcat package

* Add proxy startup delay and debug logging
This commit is contained in:
yhirose
2025-07-06 22:00:41 -04:00
committed by GitHub
parent af73377611
commit 145fc8b021
3 changed files with 31 additions and 3 deletions

20
.github/workflows/test_proxy.yaml vendored Normal file
View File

@ -0,0 +1,20 @@
name: Proxy Test
on: [push, pull_request]
jobs:
test-proxy:
runs-on: ubuntu-latest
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.event.pull_request.base.repo.full_name
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y build-essential libssl-dev zlib1g-dev libcurl4-openssl-dev libbrotli-dev libzstd-dev netcat-openbsd
- name: Run proxy tests
run: |
cd test && make proxy

2
.gitignore vendored
View File

@ -42,4 +42,4 @@ ipch
*.pyc *.pyc
.* .*
!/.gitattributes !/.gitattributes
!/.travis.yml !/.github

View File

@ -53,12 +53,20 @@ all : test test_split
proxy : test_proxy proxy : test_proxy
@echo "Starting proxy server..." @echo "Starting proxy server..."
cd proxy && \ cd proxy && \
docker-compose up -d docker compose up -d
@echo "Waiting for proxy to be ready..."
@until nc -z localhost 3128 && nc -z localhost 3129; do sleep 1; done
@echo "Proxy servers are ready, waiting additional 5 seconds for full startup..."
@sleep 5
@echo "Checking proxy server status..."
@cd proxy && docker compose ps
@echo "Checking proxy server logs..."
@cd proxy && docker compose logs --tail=20
@echo "Running proxy tests..." @echo "Running proxy tests..."
./test_proxy; \ ./test_proxy; \
exit_code=$$?; \ exit_code=$$?; \
echo "Stopping proxy server..."; \ echo "Stopping proxy server..."; \
docker-compose down; \ cd proxy && docker compose down; \
exit $$exit_code exit $$exit_code
test : test.cc include_httplib.cc ../httplib.h Makefile cert.pem test : test.cc include_httplib.cc ../httplib.h Makefile cert.pem