Skip to content

Bench Mako PR

Bench Mako PR #4

Workflow file for this run

name: Bench Mako PR
on:
workflow_dispatch:
inputs:
prNumber:
description: "PR number"
required: true
type: string
jobs:
create-comment:
runs-on: ubuntu-latest
outputs:
comment-id: ${{ steps.create-comment.outputs.result }}
steps:
- id: create-comment
uses: actions/github-script@v6
with:
github-token: ${{ secrets.MAKO_BOT_ACCESS_TOKEN }}
result-encoding: string
script: |
const url = `${context.serverUrl}//${context.repo.owner}/${context.repo.repo}/actions/runs/${context.runId}`
const urlLink = `[Open](${url})`
const { data: comment } = await github.rest.issues.createComment({
issue_number: context.payload.inputs.prNumber,
owner: context.repo.owner,
repo: 'mako',
body: `⏳ Triggered benchmark: ${urlLink}`
})
return comment.id
bench:
runs-on: ubuntu-latest
needs: [create-comment]
strategy:
matrix:
shardIndex: [1]
shardTotal: [1]
fail-fast: false
outputs:
diff-result: ${{ steps.print-results.outputs.diff-result }}
steps:
- uses: actions/checkout@v4
- name: Init env
uses: ./.github/actions/env
- uses: ./.github/actions/build-mako
with:
path: ${{ env.MAKO_DIR }}
ref: pull/${{ inputs.prNumber }}/head
- name: Setup cargo cache
uses: actions/cache@v3
with:
# ref: https://doc.rust-lang.org/cargo/guide/cargo-home.html#caching-the-cargo-home-in-ci
path: |
~/.cargo/.crates.toml
~/.cargo/.crates2.json
~/.cargo/bin/
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
target/
key: cargo-store-${{ hashFiles('**/Cargo.lock') }}
- name: Run benchmark
run: node bin/cli.js bench --shard ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
- uses: actions/upload-artifact@v4
with:
name: benchmark-artifacts-${{ matrix.shardIndex }}-${{ matrix.shardTotal }}
path: output