Update Hot Chocolate implementation #133
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Benchmark | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
env: | |
K6_VERSION: v0.44.1 | |
PORT: 50000 | |
jobs: | |
http: | |
name: http | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Run | |
run: yarn tsx benchmark/servers/http.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY | |
express: | |
name: express | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Run | |
run: yarn tsx benchmark/servers/express.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY | |
fastify: | |
name: fastify | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Run | |
run: yarn tsx benchmark/servers/fastify.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY | |
koa: | |
name: koa | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Run | |
run: yarn tsx benchmark/servers/koa.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY | |
uWebSockets: | |
name: uWebSockets | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Run | |
run: yarn tsx benchmark/servers/uWebSockets.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY | |
deno: | |
name: deno | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Set up deno | |
uses: denoland/setup-deno@v1 | |
with: | |
deno-version: 1.x | |
- name: Set up deno cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/.deno | |
~/.cache/deno | |
key: ${{ runner.os }}-deno-${{ hashFiles('**/yarn.lock') }} | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Build | |
run: yarn run build:esm | |
- name: Cache | |
run: deno cache benchmark/servers/deno.ts | |
- name: Run | |
run: deno run -A benchmark/servers/deno.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY | |
bun: | |
name: bun | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Set up node | |
uses: actions/setup-node@v3 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: Set up bun | |
uses: oven-sh/setup-bun@v1 | |
with: | |
bun-version: latest | |
- name: Install | |
run: yarn install --immutable | |
- name: Download k6 | |
run: | | |
curl https://github.com/grafana/k6/releases/download/${{ env.K6_VERSION }}/k6-${{ env.K6_VERSION }}-linux-amd64.tar.gz -L | tar xvz --strip-components 1 | |
- name: Run | |
run: bun run benchmark/servers/bun.ts & | |
- name: Benchmark | |
run: ./k6 run benchmark/k6.mjs --summary-export summary.json | |
- name: Summary | |
run: | | |
echo '```json' >> $GITHUB_STEP_SUMMARY | |
cat summary.json >> $GITHUB_STEP_SUMMARY | |
echo -e '\n```' >> $GITHUB_STEP_SUMMARY |