mirror of
https://github.com/dolthub/dolt.git
synced 2026-05-05 02:45:34 -05:00
/.github/workflows/ci-performance-benchmarks-release.yaml: iterating on workflow with workflow and repository dispatch triggers
This commit is contained in:
@@ -1,59 +1,81 @@
|
||||
on:
|
||||
repository_dispatch:
|
||||
types: [ release-dolt ]
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
version:
|
||||
description: 'SemVer format release tag, i.e. 0.23.4'
|
||||
required: true
|
||||
default: ''
|
||||
|
||||
jobs:
|
||||
benchmark-release-mysql:
|
||||
set-version-actor:
|
||||
name: Set Version and Actor
|
||||
runs-on: ubuntu-18.04
|
||||
name: Benchmark Dolt Release vs MySQL 8
|
||||
outputs:
|
||||
version: ${{ steps.set-vars.outputs.version }}
|
||||
actor: ${{ steps.set-vars.outputs.actor }}
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Configure AWS Credentials
|
||||
uses: aws-actions/configure-aws-credentials@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: Install aws-iam-authenticator
|
||||
- name: Set variables
|
||||
id: set-vars
|
||||
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: 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
|
||||
echo "Setting version: $VERSION"
|
||||
echo "Setting actor: $ACTOR"
|
||||
|
||||
echo "::set-output name=version::$VERSION"
|
||||
echo "::set-output name=actor::$ACTOR"
|
||||
env:
|
||||
CONFIG: ${{ secrets.CORP_KUBECONFIG }}
|
||||
- name: Run benchmarks
|
||||
id: run-benchmarks
|
||||
run: ./.github/scripts/performance-benchmarking/run-benchmarks.sh
|
||||
env:
|
||||
FROM_SERVER: 'mysql'
|
||||
FROM_VERSION: '8.0.22'
|
||||
TO_SERVER: 'dolt'
|
||||
TO_VERSION: ${{ github.event.inputs.version }}
|
||||
MODE: 'release'
|
||||
ACTOR: ${{ github.actor }}
|
||||
KUBECONFIG: "./kubeconfig"
|
||||
TEMPLATE_SCRIPT: "./.github/scripts/performance-benchmarking/get-mysql-dolt-job-json.sh"
|
||||
- name: Get benchmark results
|
||||
id: get-results
|
||||
run: |
|
||||
echo "Get benchmark results here: $KEY"
|
||||
aws s3api get-object --bucket=performance-benchmarking-github-actions-results --key="$KEY" results.log
|
||||
env:
|
||||
KEY: ${{ steps.run-benchmarks.outputs.object-key }}
|
||||
- name: Send Email
|
||||
uses: ./.github/actions/ses-email-action
|
||||
with:
|
||||
region: us-west-2
|
||||
version: ${{ github.event.inputs.version }}
|
||||
toAddresses: '["dustin@dolthub.com"]'
|
||||
dataFile: ${{ format('{0}/results.log', github.workspace) }}
|
||||
VERSION: ${{ github.event.inputs.version || github.event.client_payload.version }}
|
||||
ACTOR: ${{ github.event.client_payload.actor || github.actor }}
|
||||
|
||||
# benchmark-release-mysql:
|
||||
# runs-on: ubuntu-18.04
|
||||
# name: Benchmark Dolt Release vs MySQL 8
|
||||
# steps:
|
||||
# - uses: actions/checkout@v2
|
||||
# - name: Configure AWS Credentials
|
||||
# uses: aws-actions/configure-aws-credentials@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: 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: 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 benchmarks
|
||||
# id: run-benchmarks
|
||||
# run: ./.github/scripts/performance-benchmarking/run-benchmarks.sh
|
||||
# env:
|
||||
# FROM_SERVER: 'mysql'
|
||||
# FROM_VERSION: '8.0.22'
|
||||
# TO_SERVER: 'dolt'
|
||||
# TO_VERSION: ${{ github.event.inputs.version }}
|
||||
# MODE: 'release'
|
||||
# ACTOR: ${{ github.actor }}
|
||||
# KUBECONFIG: "./kubeconfig"
|
||||
# TEMPLATE_SCRIPT: "./.github/scripts/performance-benchmarking/get-mysql-dolt-job-json.sh"
|
||||
# - name: Get benchmark results
|
||||
# id: get-results
|
||||
# run: |
|
||||
# echo "Get benchmark results here: $KEY"
|
||||
# aws s3api get-object --bucket=performance-benchmarking-github-actions-results --key="$KEY" results.log
|
||||
# env:
|
||||
# KEY: ${{ steps.run-benchmarks.outputs.object-key }}
|
||||
# - name: Send Email
|
||||
# uses: ./.github/actions/ses-email-action
|
||||
# with:
|
||||
# region: us-west-2
|
||||
# version: ${{ github.event.inputs.version }}
|
||||
# toAddresses: '["dustin@dolthub.com"]'
|
||||
# dataFile: ${{ format('{0}/results.log', github.workspace) }}
|
||||
|
||||
Reference in New Issue
Block a user