Skip to content

Add initial basic load testing #17

Add initial basic load testing

Add initial basic load testing #17

Workflow file for this run

name: Load Test
on:
### BEGIN: REMOVE BEFORE MERGING
pull_request:
branches:
- develop
push:
branches:
- develop
### END: REMOVE BEFORE MERGING
workflow_dispatch:
env:
AERIE_USERNAME: "aerie"
AERIE_PASSWORD: "aerie"
HASURA_GRAPHQL_ADMIN_SECRET: "aerie"
HASURA_GRAPHQL_JWT_SECRET: '{ "type": "HS256", "key": "oursupersecretsupersecurekey1234567890" }'
POSTGRES_USER: "postgres"
POSTGRES_PASSWORD: "postgres"
jobs:
load-test:
runs-on: ubuntu-latest
environment: load-test
steps:
- name: Checkout Repo
uses: actions/checkout@v3
- name: Setup Java
uses: actions/setup-java@v3
with:
distribution: "temurin"
java-version: "19"
- name: Validate Gradle Wrapper
uses: gradle/wrapper-validation-action@v1
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Assemble
run: ./gradlew assemble --parallel
- name: Start Services
run: |
docker compose up -d --build --quiet-pull
docker images
docker ps -a
- name: Sleep for 1 min
shell: bash
run: sleep 1m
- name: Run load test
run: |
cd load-tests
./load-test.sh
- name: Upload Load Test Results
if: always()
uses: actions/upload-artifact@v3
with:
name: Load Test Results
path: "**/load-tests/load-report.*"
- name: Stop Services
if: always()
run: |
docker ps -a
docker compose down
docker ps -a
- name: Prune
if: always()
run: docker volume prune -fa