name: main on: push: branches-ignore: - 'gh-pages' - 'master' paths-ignore: - '.github/CONTRIBUTING.md' - '.github/FUNDING.md' - '.github/ISSUE_TEMPLATE.md' - 'docs/**' - '.appveyor.yml' - '.azure-pipelines.yml' - '.travis.yml' - 'LICENSE' - 'README.md' pull_request: branches-ignore: - 'gh-pages' - 'master' paths-ignore: - '.github/CONTRIBUTING.md' - '.github/FUNDING.md' - '.github/ISSUE_TEMPLATE.md' - 'docs/**' - '.appveyor.yml' - '.azure-pipelines.yml' - '.travis.yml' - 'LICENSE' - 'README.md' jobs: build: runs-on: windows-latest strategy: matrix: cpu_arch: [SSE2, AVX, AVX2, AVX512] # SSE2 BUILDS WON'T WORK ON NON-AVX(2) CPUs! steps: - uses: actions/checkout@master with: fetch-depth: 0 - name: Setup run: .\xb setup - name: Build run: .\xb build --cpu_arch=${{matrix.cpu_arch}} --target=src\xenia-app --target=src\xenia-vfs-dump - name: Prepare artifacts run: | 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' && github.ref == 'refs/heads/canary' && 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' && github.ref == 'refs/heads/canary' && 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