[GitHub Actions] Releases, minor changes

Formatting fixes.
Add comment about SSE2 builds not working on non-AVX(2) CPUs.
Don't build tests.
 Prepare artifacts:
  Switch to PowerShell.
  Rename xenia.exe to xenia-canary.exe.
 Add Releases:
  This allows GitHub Actions to have a link to the latest artifacts like AppVeyor, except not slow as fuck.
  Currently AVX-only since users will get confused which one to download (this is also why vfs-dump isn't included in the zip), and I don't know how to use the upload_url from another job configuration.
  Releases won't be created for PRs.

You can download the latest Release from here: https://github.com/xenia-canary/xenia-canary/releases/latest/download/xenia-canary.zip
This commit is contained in:
Margen67 2019-11-20 19:35:06 -08:00 committed by illusion98
parent a717775898
commit 099a07b248
1 changed files with 48 additions and 19 deletions

View File

@ -5,33 +5,33 @@ on:
branches-ignore:
- 'gh-pages'
paths-ignore:
- '.github/CONTRIBUTING.md'
- '.github/FUNDING.md'
- '.github/ISSUE_TEMPLATE.md'
- 'docs/**'
- '.appveyor.yml'
- '.travis.yml'
- 'LICENSE'
- 'README.md'
- '.github/CONTRIBUTING.md'
- '.github/FUNDING.md'
- '.github/ISSUE_TEMPLATE.md'
- 'docs/**'
- '.appveyor.yml'
- '.travis.yml'
- 'LICENSE'
- 'README.md'
pull_request:
branches-ignore:
- 'gh-pages'
paths-ignore:
- '.github/CONTRIBUTING.md'
- '.github/FUNDING.md'
- '.github/ISSUE_TEMPLATE.md'
- 'docs/**'
- '.appveyor.yml'
- '.travis.yml'
- 'LICENSE'
- 'README.md'
- '.github/CONTRIBUTING.md'
- '.github/FUNDING.md'
- '.github/ISSUE_TEMPLATE.md'
- 'docs/**'
- '.appveyor.yml'
- '.travis.yml'
- 'LICENSE'
- 'README.md'
jobs:
build:
runs-on: windows-latest
strategy:
matrix:
cpu_arch: [SSE2, AVX, AVX2, AVX512]
cpu_arch: [SSE2, AVX, AVX2, AVX512] # SSE2 BUILDS WON'T WORK ON NON-AVX(2) CPUs!
steps:
- uses: actions/checkout@master
@ -39,15 +39,44 @@ jobs:
run: .\xb setup
- name: Build
run: .\xb build --cpu_arch=${{matrix.cpu_arch}} --target=src\xenia-app --target=tests\xenia-cpu-ppc-tests --target=src\xenia-vfs-dump
run: .\xb build --cpu_arch=${{matrix.cpu_arch}} --target=src\xenia-app --target=src\xenia-vfs-dump
- name: Prepare artifacts
run: |
robocopy build\bin\Windows\Release artifacts xenia.exe xenia-vfs-dump.exe
ren build\bin\Windows\Release\xenia.exe xenia-canary.exe
robocopy build\bin\Windows\Release artifacts xenia*.exe
robocopy . artifacts LICENSE
$LastExitCode = 0
cd artifacts
7z a ..\xenia-canary.zip LICENSE xenia-canary.exe
- uses: actions/upload-artifact@master
with:
name: xenia-canary-${{matrix.cpu_arch}}
path: artifacts
- name: Create Release
if: github.event.action != 'pull_request' && matrix.cpu_arch == 'AVX'
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
with:
tag_name: tag-${{github.sha}}
release_name: xenia-canary-${{github.sha}}
body: |
Changes in this Release
- First Change
- Second Change
- name: Upload Release Asset
if: github.event.action != 'pull_request' && matrix.cpu_arch == 'AVX'
id: upload-release-asset
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
with:
upload_url: ${{steps.create_release.outputs.upload_url}}
asset_path: ./xenia-canary.zip
asset_name: xenia-canary.zip
asset_content_type: application/zip