ci: Split avx2 and non-avx2 windows builds (#4522)

* ci: Split avx2 and non-avx2 windows builds

* ci: Improve workflow naming

* ci: Avoid bleeding-edge emojis 🪟

* ci: Don't include debug symbol artifacts by default
This commit is contained in:
Tyler Wilding 2021-07-06 21:23:04 -04:00 committed by GitHub
parent 6dd90aeaef
commit 811f9c52c6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 21 additions and 14 deletions

View File

@ -1,4 +1,4 @@
name: Validate GameDB
name: 📝 Validate GameDB
on:
push:

View File

@ -1,4 +1,4 @@
name: Linux Build
name: 🐧 Linux Builds
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
@ -60,7 +60,7 @@ jobs:
detail: -avx2-nopch
experimental: false
name: ${{ matrix.os }}-${{ matrix.platform }}-${{ matrix.compiler }}${{ matrix.detail }}
name: "${{ matrix.platform }} | ${{ matrix.compiler }} ${{ matrix.detail }}"
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.experimental }}
# Set some sort of timeout in the event of run-away builds. We are limited on concurrent jobs so, get rid of them.

View File

@ -1,4 +1,4 @@
name: MacOS Build
name: 🍎 MacOS Builds
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
@ -34,7 +34,7 @@ jobs:
platform: [x64]
experimental: [false]
name: ${{ matrix.os }}-${{ matrix.platform }}
name: ${{ matrix.platform }}
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.experimental }}
# Set some sort of timeout in the event of run-away builds. We are limited on concurrent jobs so, get rid of them.

View File

@ -1,5 +1,5 @@
# Runs steps to triage an incoming Pull Request, for example - applying labels.
name: "Pull Request Triage"
name: 🤔 Pull Request Triage
on:
pull_request_target:
@ -26,4 +26,4 @@ jobs:
Additionally, as per recent changes in Github Actions, your pull request will need to be approved by a maintainer before Github Actions can run against it. [You can find more information about this change here.](https://github.blog/2021-04-22-github-actions-update-helping-maintainers-combat-bad-actors/)
Please be patient until this happens. In the meantime if you'd like to confirm the builds are passing, you have the option of opening a PR on your own fork, just make sure your fork's master branch is up to date!
pr-labels: "First Time Contribution"
pr-labels: "First Time Contribution"

View File

@ -1,4 +1,4 @@
name: Windows Build
name: 🖥️ Windows Builds
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the master branch
@ -38,9 +38,10 @@ jobs:
matrix:
os: [windows-2019]
platform: [Win32, x64]
config: [Release, Release AVX2]
experimental: [false]
name: ${{ matrix.os }}-${{ matrix.platform }}
name: "${{ matrix.platform }} | ${{ matrix.config }}"
runs-on: ${{ matrix.os }}
continue-on-error: ${{ matrix.experimental }}
# Set some sort of timeout in the event of run-away builds. We are limited on concurrent jobs so, get rid of them.
@ -74,17 +75,18 @@ jobs:
env:
# Set to 'true' to retain the .pdb / .exp / .lib, etc files which can be useful for repro'ing issues that only occur in the compiled .exe
RetainDebuggingArtifacts: ${{ github.event.inputs.retainDebugArtifacts == 'true' }}
run: msbuild "buildbot.xml" /m /v:n /t:ReleaseAll /p:Platform=${{ matrix.platform }}
run: msbuild "PCSX2_suite.sln" /m /v:m /p:Configuration="${{ matrix.config }}" /p:Platform="${{ matrix.platform }}"
- name: Prepare Artifact Metadata
id: artifact-metadata
shell: bash
run: |
ARCH=$([ "${{ matrix.platform }}" == Win32 ] && echo "32bit" || echo "64bit")
SIMD=$([ "${{ matrix.config }}" == Release ] && echo "SSE4" || echo "AVX2")
ARTIFACT_NAME=""
if [ ${{ github.event_name }} == "pull_request" ]; then
PR_SHA=$(git rev-parse --short "${{ github.event.pull_request.head.sha }}")
ARTIFACT_NAME="PCSX2-${ARCH}"
ARTIFACT_NAME="PCSX2-${ARCH}-${SIMD}"
if [ ! -z "${{ github.event.pull_request.number }}" ]; then
PR_NUM=${{ github.event.pull_request.number }}
ARTIFACT_NAME="${ARTIFACT_NAME}-pr[${PR_NUM}]"
@ -96,7 +98,7 @@ jobs:
fi
else
SHA=$(git rev-parse --short "$GITHUB_SHA")
ARTIFACT_NAME="PCSX2-${ARCH}-sha[${SHA}"
ARTIFACT_NAME="PCSX2-${ARCH}-${SIMD}-sha[${SHA}"
fi
TRIMMED_ARTIFACT_NAME=$(printf "%.199s]" "$ARTIFACT_NAME")
echo "name=$TRIMMED_ARTIFACT_NAME"
@ -106,6 +108,11 @@ jobs:
shell: bash
working-directory: ./bin
run: |
retainDebugArtifacts=$([ "${{ github.event.inputs.retainDebugArtifacts }}" == "true" ] && echo "true" || echo "false")
if [ "${retainDebugArtifacts}" == "false" ]; then
ls ./
rm -f *.bsc *.exp *.ilk *.iobj *.ipdb *.lib *.pdb
fi
shopt -s extglob dotglob
mkdir "${{ steps.artifact-metadata.outputs.name }}"
mv !("${{ steps.artifact-metadata.outputs.name }}") "${{ steps.artifact-metadata.outputs.name }}"

View File

@ -1,7 +1,7 @@
# PCSX2
![Windows Build](https://github.com/PCSX2/pcsx2/workflows/Windows%20Build/badge.svg)
![Linux Build](https://github.com/PCSX2/pcsx2/workflows/Linux%20Build/badge.svg)
![Windows Build Status](https://img.shields.io/github/workflow/status/PCSX2/pcsx2/%F0%9F%96%A5%EF%B8%8F%20Windows%20Builds/master?label=Windows%20Builds)
![Linux Build Status](https://img.shields.io/github/workflow/status/PCSX2/pcsx2/%F0%9F%90%A7%20Linux%20Builds/master?label=Linux%20Builds)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/1f7c0d75fec74d6daa6adb084e5b4f71)](https://www.codacy.com/gh/PCSX2/pcsx2/dashboard?utm_source=github.com&utm_medium=referral&utm_content=PCSX2/pcsx2&utm_campaign=Badge_Grade)
[![Discord Server](https://img.shields.io/discord/309643527816609793?color=%235CA8FA&label=PCSX2%20Discord&logo=discord&logoColor=white)](https://discord.com/invite/TCz3t9k)