MySQLTuner-perl/.github/workflows/generate_mariadb_examples.yml
2023-09-04 14:09:34 +00:00

74 lines
2.8 KiB
YAML

# This is a basic workflow to help you get started with Actions
name: Compile MT examples for MariaDB
# Controls when the workflow will run
on:
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# A workflow run is made up of one or more jobs that can run sequentially or in parallel
jobs:
mysql_examples:
# This workflow contains a single job called "build"
strategy:
matrix:
MARIADB_VERSION: [10.2, 10.3, 10.4, 10.5, 10.6, 10.7, 10.8, 10.9]
# The type of runner that the job will run on
runs-on: ubuntu-latest
# Steps represent a sequence of tasks that will be executed as part of the job
steps:
- name: Setup MySQL Tuner repository
uses: actions/checkout@v4
- name: Set up MySQL
uses: shogo82148/actions-setup-mysql@v1
with:
distribution: 'mariadb'
root-password: "root"
mysql-version: "${{ matrix.MARIADB_VERSION }}"
- name: Injecting credentials
run: |
echo -e "[client]\nuser=root\npassword=root\nhost=127.0.0.1\nprotocol=TCP" > $HOME/.my.cnf
- name: Cloning test_db dataset
run: |
git clone https://github.com/datacharmer/test_db.git
- name: Test database is Up and Running
run: |
sleep 5s
sudo netstat -ltpn
mysql -e 'select version();'
- name: Injecting test_db dataset
run: |
cd test_db
mysql -e 'CREATE DATABASE data;'
mysql data< ./employees.sql
cd -
rm -rf test_db
# Runs a single command using the runners shell
- name: Json Run verbose mode with dumpdir result
run: |
mkdir -p ./examples/github/result/mariadb/${{ matrix.MARIADB_VERSION }}
sudo perl ./mysqltuner.pl --user=root --pass=root --protocol tcp --verbose --dumpdir=./examples/github/result/mariadb/${{ matrix.MARIADB_VERSION }} --json | tee -a ./examples/github/result/mariadb/${{ matrix.MARIADB_VERSION }}/result.json
- name: Standard Run verbose mode without dumpdir result
run: |
sudo perl ./mysqltuner.pl --user=root --pass=root --protocol tcp --verbose | tee -a ./examples/github/result/mariadb/${{ matrix.MARIADB_VERSION }}/result.txt
- name: Adding examples to Git
run: |
git add ./examples/github/result/mariadb/${{ matrix.MARIADB_VERSION }}/* || true
- name: Run the Action Commit
uses: devops-infra/action-commit-push@master
with:
github_token: "${{ secrets.GITHUB_TOKEN }}"
add_timestamp: true
commit_prefix: "[AUTO]"
commit_message: "Updates MariaDb result examples (via Actions)"
force: false
target_branch: examples-mariadb-${{ matrix.MARIADB_VERSION }}