From 9fd63c2f9384a08b05050156fd576bb0b45cbb0b Mon Sep 17 00:00:00 2001 From: Joaquin Franco Date: Fri, 7 Jun 2024 01:07:17 +0900 Subject: [PATCH] fix: add load-testing in CI --- .github/workflows/load-testing.yaml | 55 +++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 .github/workflows/load-testing.yaml diff --git a/.github/workflows/load-testing.yaml b/.github/workflows/load-testing.yaml new file mode 100644 index 0000000..eddd3b8 --- /dev/null +++ b/.github/workflows/load-testing.yaml @@ -0,0 +1,55 @@ +name: Load Testing + +on: + push: + branches: + - main + pull_request: + workflow_dispatch: + +jobs: + run-load-testing: + runs-on: ubuntu-latest + services: + docker: + image: docker:19.03.12 + options: --privileged + volumes: + - /var/run/docker.sock:/var/run/docker.sock + strategy: + fail-fast: false + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Install go + uses: actions/setup-go@v5 + with: + go-version-file: './api/go.mod' + + - name: Install Just + uses: extractions/setup-just@v2 + + - name: Set up prerequisites + run: | + sudo apt-get update + sudo apt-get install -y docker-compose + + - name: Start services with Docker Compose + run: just docker-up + + - name: Wait for services to be ready + run: | + echo "Waiting for services to start..." + sleep 30 + + - name: Install Apache Benchmark + run: sudo apt-get install -y apache2-utils + + - name: Run Load Test + run: | + ab -n 1000 -c 10 http://localhost/ + + - name: Shutdown Docker Compose + run: just docker-down