From 18d252f3fd6a9eb5be25ab6cddcb45f9796c07a3 Mon Sep 17 00:00:00 2001 From: coffeegoddd Date: Fri, 22 Jul 2022 17:21:07 -0700 Subject: [PATCH] /.github/workflows/k8s-nightly-performance-benchmarks-email-report.yaml: factor jobs out of nightly perf emails --- ...y-performance-benchmarks-email-report.yaml | 93 +++---------------- 1 file changed, 14 insertions(+), 79 deletions(-) diff --git a/.github/workflows/k8s-nightly-performance-benchmarks-email-report.yaml b/.github/workflows/k8s-nightly-performance-benchmarks-email-report.yaml index 6652371e83..b0aa3c29ef 100644 --- a/.github/workflows/k8s-nightly-performance-benchmarks-email-report.yaml +++ b/.github/workflows/k8s-nightly-performance-benchmarks-email-report.yaml @@ -8,85 +8,20 @@ on: jobs: perf: runs-on: ubuntu-18.04 - name: Benchmark Performance - strategy: - matrix: - dolt_fmt: [ "__LD_1__", "__DOLT_1__" ] + name: Benchmark Latency, Correctness, and Imports steps: - - name: Checkout - uses: actions/checkout@v2 - - uses: azure/setup-kubectl@v2.0 + - uses: peter-evans/repository-dispatch@v1 with: - version: 'v1.23.6' - - name: Install aws-iam-authenticator - run: | - curl -o aws-iam-authenticator https://amazon-eks.s3.us-west-2.amazonaws.com/1.18.8/2020-09-18/bin/linux/amd64/aws-iam-authenticator && \ - chmod +x ./aws-iam-authenticator && \ - sudo cp ./aws-iam-authenticator /usr/local/bin/aws-iam-authenticator - aws-iam-authenticator version - - name: Configure AWS Credentials - uses: aws-actions/configure-aws-credentials@v1 + token: ${{ secrets.REPO_ACCESS_TOKEN }} + event-type: benchmark-latency + client-payload: '{"from_server": "mysql", "from_version": "8.0.28", "to_server": "dolt", "to_version": "${{ github.sha }}", "mode": "nightly", "actor": "${{ github.actor }}", "template_script": "./.github/scripts/performance-benchmarking/get-mysql-dolt-job-json.sh"}' + - uses: peter-evans/repository-dispatch@v1 with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: us-west-2 - - name: Create and Auth kubeconfig - run: | - echo "$CONFIG" > kubeconfig - KUBECONFIG=kubeconfig kubectl config set-credentials github-actions-dolt --exec-api-version=client.authentication.k8s.io/v1alpha1 --exec-command=aws-iam-authenticator --exec-arg=token --exec-arg=-i --exec-arg=eks-cluster-1 - KUBECONFIG=kubeconfig kubectl config set-context github-actions-dolt-context --cluster=eks-cluster-1 --user=github-actions-dolt --namespace=performance-benchmarking - KUBECONFIG=kubeconfig kubectl config use-context github-actions-dolt-context - env: - CONFIG: ${{ secrets.CORP_KUBECONFIG }} - - name: Run Sysbench benchmarks - run: ./.github/scripts/performance-benchmarking/run-benchmarks.sh - env: - FROM_SERVER: 'mysql' - FROM_VERSION: '8.0.28' - TO_SERVER: 'dolt' - TO_VERSION: ${{ github.sha }} - MODE: 'nightly' - ACTOR: ${{ github.actor }} - REPO_ACCESS_TOKEN: ${{ secrets.REPO_ACCESS_TOKEN }} - KUBECONFIG: "./kubeconfig" - NOMS_BIN_FORMAT: ${{ matrix.dolt_fmt }} - TEMPLATE_SCRIPT: "./.github/scripts/performance-benchmarking/get-mysql-dolt-job-json.sh" - - name: Run Tpcc benchmarks - run: ./.github/scripts/performance-benchmarking/run-benchmarks.sh - env: - FROM_SERVER: 'mysql' - FROM_VERSION: '8.0.28' - TO_SERVER: 'dolt' - TO_VERSION: ${{ github.sha }} - MODE: 'nightly' - ACTOR: ${{ github.actor }} - REPO_ACCESS_TOKEN: ${{ secrets.REPO_ACCESS_TOKEN }} - KUBECONFIG: "./kubeconfig" - NOMS_BIN_FORMAT: ${{ matrix.dolt_fmt }} - WITH_TPCC: 'true' - TEMPLATE_SCRIPT: "./.github/scripts/performance-benchmarking/get-mysql-dolt-job-json.sh" - - name: Run correctness - run: ./.github/scripts/sql-correctness/run-correctness.sh - env: - TO_VERSION: ${{ github.sha }} - MODE: 'nightly' - ACTOR: ${{ github.actor }} - ACTOR_EMAIL: 'max@dolthub.com' - REPO_ACCESS_TOKEN: ${{ secrets.REPO_ACCESS_TOKEN }} - KUBECONFIG: "./kubeconfig" - NOMS_BIN_FORMAT: ${{ matrix.dolt_fmt }} - TEMPLATE_SCRIPT: "./.github/scripts/sql-correctness/get-dolt-correctness-job-json.sh" - - name: Run Import Benchmarks - run: ./.github/scripts/import-benchmarking/run-benchmarks.sh - env: - FROM_SERVER: "dolt" - FROM_VERSION: ${{ needs.set-version-actor.outputs.version }} - TO_SERVER: "mysql" - TO_VERSION: '8.0.28' - MODE: 'release' - ACTOR: ${{ needs.set-version-actor.outputs.actor }} - ACTOR_EMAIL: ${{ needs.set-version-actor.outputs.actor_email }} - REPO_ACCESS_TOKEN: ${{ secrets.REPO_ACCESS_TOKEN }} - KUBECONFIG: "./kubeconfig" - NOMS_BIN_FORMAT: "__LD_1__" - TEMPLATE_SCRIPT: "./.github/scripts/import-benchmarking/get-mysql-dolt-job-json.sh" + token: ${{ secrets.REPO_ACCESS_TOKEN }} + event-type: sql-correctness + client-payload: '{"to_version": "${{ github.sha }}", "mode": "nightly", "actor": "${{ github.actor }}", "actor_email": "max@dolthub.com", "template_script": "./.github/scripts/sql-correctness/get-dolt-correctness-job-json.sh"}' + - uses: peter-evans/repository-dispatch@v1 + with: + token: ${{ secrets.REPO_ACCESS_TOKEN }} + event-type: benchmark-import + client-payload: '{"from_server": "dolt", "from_version": "${{ github.sha }}", "to_server": "mysql", "to_version": "8.0.28", "mode": "nightly", "actor": "${{ github.actor }}", "actor_email": "vinai@dolthub.com", "template_script": "./.github/scripts/import-benchmarking/get-mysql-dolt-job-json.sh"}'