Skip to content

Add cassandra-stress sample benchmark and workflow #1

Add cassandra-stress sample benchmark and workflow

Add cassandra-stress sample benchmark and workflow #1

Workflow file for this run

name: ycsb
on:
push:
branches: [main]
paths:
- 'frameworks/database/ycsb/**'
- '.github/workflows/ycsb.yml'
pull_request:
paths:
- 'frameworks/database/ycsb/**'
- '.github/workflows/ycsb.yml'
workflow_dispatch:
permissions:
contents: read
concurrency:
group: ycsb-${{ github.ref }}
cancel-in-progress: true
jobs:
benchmark:
runs-on: ubuntu-latest
services:
redis:
image: redis:7
ports:
- 6379:6379
options: >-
--health-cmd "redis-cli ping"
--health-interval 10s
--health-timeout 5s
--health-retries 5
defaults:
run:
working-directory: frameworks/database/ycsb
steps:
- uses: actions/checkout@v4
- name: Set up Java
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: '11'
- name: Download and extract YCSB 0.17.0 (Redis binding)
run: |
curl -L -O https://github.com/brianfrankcooper/YCSB/releases/download/0.17.0/ycsb-redis-binding-0.17.0.tar.gz
tar xzf ycsb-redis-binding-0.17.0.tar.gz
./ycsb-0.17.0/bin/ycsb --version || true
- name: Run sample benchmark
run: ./run.sh
- name: Upload output as artifact
uses: actions/upload-artifact@v4
with:
name: ycsb-output
path: |
frameworks/database/ycsb/output-load.txt
frameworks/database/ycsb/output-run.txt
if-no-files-found: error