# This is a basic workflow to help you get started with Actions name: Compile MT examples # 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: MYSQL_VERSION: [5.7, 8.0] # 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@v3 - name: Set up MySQL uses: mirromutth/mysql-action@v1.1 with: mysql root password: "root" mysql version: "${{ matrix.MYSQL_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/mysql/${{ matrix.MYSQL_VERSION }} sudo perl ./mysqltuner.pl --user=root --pass=root --protocol tcp --verbose --dumpdir=./examples/github/result/mysql/${{ matrix.MYSQL_VERSION }} --json | tee -a ./examples/github/result/mysql/${{ matrix.MYSQL_VERSION }}/result.json - name: Standard Run verbose mode with dumpdir result run: | sudo perl ./mysqltuner.pl --user=root --pass=root --protocol tcp --verbose | tee -a ./examples/github/result/mysql/${{ matrix.MYSQL_VERSION }}/result.txt - name: Adding examples to Git run: | git add ./examples/github/result/mysql/${{ matrix.MYSQL_VERSION }}/* sleep $[ ( $RANDOM % 10 ) + 1 ]s - name: Run the Action uses: devops-infra/action-commit-push@master with: github_token: "${{ secrets.GITHUB_TOKEN }}" add_timestamp: false commit_prefix: "[AUTO]" commit_message: "Updates result examples (via Actions)" force: false target_branch: master