Files
dolt/.github/workflows/performance-benchmarks-email-report.yaml
T
Maximilian Hoffman 08167dfd5d Redo import perf (#4689)
* import perf harness prog

* more test isolation

* rework common dep

* fix server driver

* delete old files, fix readme

* more readme fixes

* batching edits

* edits

* skip import tests by def

* GA starter

* rename

* fix arg name

* change input name again

* remove espaced character from input desc

* fix env definition

* fix env definition

* fix workflow_dispatch name

* CI test files

* remove os spec

* runs on

* different set variable

* defaults

* defaults

* remove local GMS

* edits

* run bench from go/ directory

* dropped def equals

* go run, not go build

* fix output command name

* configure dolt

* fix query file path

* fix query file path

* switch query and inputs

* fix format <<EOF

* reformat yaml

* debug output

* more debug output

* fix echo -> cat

* fix to json flag

* fix yaml spacing

* yaml spacing

* yaml spacing

* revert html spacing

* json format

* env var expansion

* echo not cat

* another json string printing error

* no echo

* log template

* no template string

* wrong parameter, template should be templateName

* remove console.log

* pass file, not string, to ses

* rely on preexisting template? email action interface

* fix yaml

* fix html print

* fix html header

* change ci script

* fix sql-server connection pass

* mysql no password, setup default db

* put password back

* missed port for default database

* expanded CI tests

* shorter test file

* extend ci tests

* change default query

* try to push to dolthub

* modify push to dolthub

* duplicate test names

* typo

* dolt-action version

* invalid param for dolt_action

* specify feature branch

* specify main branch dolt-action

* -b flag first

* dont need -q flag for batch EOF

* combine results and dolthub push

* missing curly brace

* no auth

* new creds

* new cred fun

* use the cred key

* try again

* log table

* move push out of batch

* more logging

* new vs old branch

* fix branch rule

* more test

* all tests

* smaller tests

* smaller tests

* double env: key

* fix yaml error

* more yaml errors

* more yaml errors

* [ga-format-pr] Run go/utils/repofmt/format_repo.sh and go/Godeps/update.sh

* linting fixes, remove other import nightly

* linting

* go vet

* licenses

* fix compile errorrs

* warn don't panic on init()

* [ga-format-pr] Run go/utils/repofmt/format_repo.sh and go/Godeps/update.sh

* no external package

* [ga-format-pr] Run go/utils/repofmt/format_repo.sh and go/Godeps/update.sh

* unused dep

* [ga-format-pr] Run go/utils/repofmt/format_repo.sh and go/Godeps/update.sh

* Revert perf scripts

* refactor to repo dispatch

Co-authored-by: max-hoffman <max-hoffman@users.noreply.github.com>
2022-11-10 12:56:43 -08:00

60 lines
2.3 KiB
YAML

name: Benchmark Dolt vs MySQL
on:
repository_dispatch:
types: [ release-dolt ]
workflow_dispatch:
inputs:
version:
description: 'SemVer format release tag, i.e. 0.24.5'
required: true
default: ''
email:
description: 'Email address to receive results'
required: true
default: ''
jobs:
set-version-actor:
name: Set Version and Actor
runs-on: ubuntu-22.04
outputs:
version: ${{ steps.set-vars.outputs.version }}
actor: ${{ steps.set-vars.outputs.actor }}
actor_email: ${{ steps.set-vars.outputs.actor_email }}
steps:
- name: Set variables
id: set-vars
run: |
echo "version=$VERSION" >> $GITHUB_OUTPUT
echo "actor=$ACTOR" >> $GITHUB_OUTPUT
echo "actor_email=$ACTOR_EMAIL" >> $GITHUB_OUTPUT
env:
VERSION: ${{ github.event.inputs.version || github.event.client_payload.version }}
ACTOR: ${{ github.event.client_payload.actor || github.actor }}
ACTOR_EMAIL: ${{ github.event.inputs.email }}
benchmark-dolt-mysql:
runs-on: ubuntu-22.04
needs: set-version-actor
name: Trigger Benchmark Latency and Benchmark Import K8s Workflows
steps:
- uses: peter-evans/repository-dispatch@v2.0.0
with:
token: ${{ secrets.REPO_ACCESS_TOKEN }}
event-type: benchmark-latency
client-payload: '{"from_server": "mysql", "from_version": "8.0.28", "to_server": "dolt", "to_version": "${{ needs.set-version-actor.outputs.version }}", "mode": "release", "actor": "${{ needs.set-version-actor.outputs.actor }}", "actor_email": "${{ needs.set-version-actor.outputs.actor_email }}", "template_script": "./.github/scripts/performance-benchmarking/get-mysql-dolt-job-json.sh"}'
- uses: peter-evans/repository-dispatch@v2.0.0
with:
token: ${{ secrets.REPO_ACCESS_TOKEN }}
event-type: benchmark-import
client-payload: |
{
"email_recipient": "${{ secrets.PERF_REPORTS_EMAIL_ADDRESS }}",
"version": "${{ github.sha }}",
"run_file": "ci.yaml",
"report": "three_way_compare.sql",
"commit_to_branch": "main",
"actor": "${{ github.actor }}"
}