trying the push thing again #33
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Run benchmark | |
| on: | |
| workflow_dispatch: | |
| push: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref || '' }}-${{ github.base_ref || '' }}-${{ github.ref != 'refs/heads/master' || github.sha }} | |
| cancel-in-progress: true | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| gh_issue_repo: duckdblabs/db-benchmark | |
| # start-aws-machine: | |
| # name: Start aws-small-machine | |
| # runs-on: ubuntu-latest | |
| # env: | |
| # instance_id: XXXXXXXXX | |
| # steps: | |
| # - name: Start EC2 runner | |
| # shell: bash | |
| # env: | |
| # AWS_ACCESS_KEY_ID: ${{secrets.AWS_ACCESS_KEY_ID}} | |
| # AWS_SECRET_ACCESS_KEY: ${{secrets.AWS_SECRET_ACCESS_KEY}} | |
| # AWS_DEFAULT_REGION: us-east-1 | |
| # run: aws ec2 start-instances --instance-id ${{ env.instance_id }} | |
| # - name: Create issue if failure | |
| # shell: bash | |
| # if: ${{ failure() && contains(github.ref_name, 'main') }} | |
| # run: | | |
| # gh issue create --repo ${{ env.gh_issue_repo }} --title "Weekly Regression Test Failure" --body "AWS box with instance-id ${{ env.instance_id }} could not be started" | |
| jobs: | |
| run-benchmark: | |
| name: Regression Tests all solutions | |
| env: | |
| CC: gcc-10 | |
| CXX: g++-10 | |
| GEN: ninja | |
| runs-on: self-hosted | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| ref: add_trigger_to_run_the_benchmark | |
| - name: run mount | |
| shell: bash | |
| run: | | |
| ./_setup_utils/mount.sh | |
| # TODO: Remove this. | |
| - name: checkout correct branch | |
| shell: bash | |
| working-directory: /var/lib/mount/db-benchmark-metal | |
| run: | | |
| git checkout add_trigger_to_run_the_benchmark | |
| - name: small modification | |
| shell: bash | |
| working-directory: /var/lib/mount/db-benchmark-metal | |
| run: | | |
| echo "small change" >> time.csv | |
| # - name: Install or Upgrade all solutions | |
| # shell: bash | |
| # working-directory: /var/lib/mount/db-benchmark-metal | |
| # run: | | |
| # python3 _setup_utils/install_all_solutions.py all --exclude clickhouse | |
| # # installing/updating clickhouse needs sudo priviledges | |
| # sudo python3 _setup_utils/install_all_solutions.py clickhouse | |
| # - name: Modify run.conf to only have new versions | |
| # shell: bash | |
| # working-directory: /var/lib/mount/db-benchmark-metal | |
| # run: | | |
| # git diff --name-only **/VERSION > updated_solutions.txt | |
| # sed -i 's/\/VERSION/ /g' updated_solutions.txt | |
| # tr --delete '\n' < updated_solutions.txt > updated_solutions_no_newlines.txt | |
| # export new_solutions=`cat updated_solutions_no_newlines.txt` | |
| # echo "New benchmarks are " $new_solutions | |
| # sed -i "s/export RUN_SOLUTIONS=.*/export RUN_SOLUTIONS=\"${new_solutions}\"/g" run.conf | |
| # - name: Run the benchmark | |
| # shell: bash | |
| # working-directory: /var/lib/mount/db-benchmark-metal | |
| # run: | | |
| # ncores=`python3 -c 'import multiprocessing as mp; print(mp.cpu_count())'` | |
| # if [ $ncores -eq 16 ]; then export MACHINE_TYPE="c6id.4xlarge"; fi | |
| # if [ $ncores -eq 32 ]; then export MACHINE_TYPE="c6id.4xlarge"; fi | |
| # if [ $ncores -eq 128 ]; then export MACHINE_TYPE="c6id.metal"; fi | |
| # MACHINE_TYPE=$MACHINE_TYPE ./_run/run_small_medium.sh | |
| - name: name new branch | |
| shell: bash | |
| run: | | |
| echo "new_branch_name=results-`date +%Y-%m-%d-%Hh%Mm`" >> $GITHUB_ENV | |
| echo ${{ env.new_branch_name }} | |
| - name: Commit updates | |
| shell: bash | |
| working-directory: /var/lib/mount/db-benchmark-metal | |
| run: | | |
| git config --global user.email "" | |
| git config --global user.name "github-actions[bot]" | |
| git add time.csv logs.csv **/VERSION | |
| git add run.conf | |
| git commit -m "new_results" | |
| - name: Push changes | |
| uses: ad-m/github-push-action@master | |
| with: | |
| github_token: ${{ secrets.GITHUB_TOKEN }} | |
| branch: ${{ env.new_branch_name }} | |
| - name: Create Archive | |
| if: always() | |
| shell: bash | |
| working-directory: /var/lib/mount/db-benchmark-metal | |
| run: | | |
| mkdir -p out | |
| echo "guarantee not empty dir" > out/guarantee.txt | |
| zip -r out-dir.zip out/ | |
| - uses: actions/upload-artifact@v4 | |
| if: always() | |
| with: | |
| name: out-dir.zip | |
| path: /var/lib/mount/db-benchmark-metal/out-dir.zip | |
| if-no-files-found: error | |
| # shutdown: | |
| # name: shut down | |
| # if: always() | |
| # runs-on: ubuntu-latest | |
| # needs: | |
| # - start-runner | |
| # - run-benchmark | |
| # steps: | |
| # - name: shutdown | |
| # shell: bash | |
| # env: | |
| # AWS_ACCESS_KEY_ID: ${{secrets.AWS_ACCESS_KEY_ID}} | |
| # AWS_SECRET_ACCESS_KEY: ${{secrets.AWS_SECRET_ACCESS_KEY}} | |
| # AWS_DEFAULT_REGION: us-east-1 | |
| # run: aws ec2 stop-instances --instance-id ${{ env.instance_id }} | |