# This is a basic workflow to help you get started with Actions name: Windows build # Controls when the action will run. Triggers the workflow on push or pull request # events but only for the master branch on: [push, pull_request] # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: # This workflow contains a single job called "build" build: name: VS 2017 # The type of runner that the job will run on runs-on: windows-2016 # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v2 - name: Fetch Git tags shell: cmd run: git fetch --prune --unshallow --tags - name: Initialize Build Environment shell: cmd run: powershell -ExecutionPolicy Bypass -NoProfile -File .\build.ps1 Init # Runs a single command using the runners shell - name: Build shell: cmd run: powershell -ExecutionPolicy Bypass -NoProfile -File .\build.ps1 Build - name: Prepare Files For Packaging shell: powershell run: | $fb2kFiles = @( "ext_libs/*.dll", "ext_libs/libspeex/*.dll", "Release/foo_input_vgmstream.dll", "README.md" ) $cliFiles = @( "ext_libs/*.dll", "ext_libs/libspeex/*.dll", "Release/in_vgmstream.dll", "Release/test.exe", "Release/xmp-vgmstream.dll", "COPYING", "README.md" ) $fb2kPdbFiles = @( "Release/foo_input_vgmstream.pdb" ) $cliPdbFiles = @( "Release/in_vgmstream.pdb", "Release/test.pdb", "Release/xmp-vgmstream.pdb" ) Compress-Archive $cliFiles Release/test.zip -Force Compress-Archive $fb2kFiles Release/foo_input_vgmstream.zip -Force Move-Item Release/foo_input_vgmstream.zip Release/foo_input_vgmstream.fb2k-component -Force Compress-Archive $cliPdbFiles Release/test.pdb.zip -Force Compress-Archive $fb2kPdbFiles Release/foo_input_vgmstream.pdb.zip -Force mkdir tmp/cli mkdir tmp/fb2k mkdir tmp/cli-p mkdir tmp/fb2k-p Copy-Item $cliFiles tmp/cli/ -Recurse -Force Copy-Item $fb2kFiles tmp/fb2k/ -Recurse -Force Copy-Item $cliPdbFiles tmp/cli-p/ -Recurse -Force Copy-Item $fb2kPdbFiles tmp/fb2k-p/ -Recurse -Force - name: Upload foobar2000 Component Artifact uses: actions/upload-artifact@v2 with: name: foo_input_vgmstream.fb2k-component path: ${{github.workspace}}\tmp\fb2k - name: Upload CLI Tools Artifact uses: actions/upload-artifact@v2 with: name: test path: ${{github.workspace}}\tmp\cli - name: Upload foobar2000 Component Debug Symbols Artifact uses: actions/upload-artifact@v2 with: name: foo_input_vgmstream.pdb path: ${{github.workspace}}\tmp\fb2k-p - name: Upload CLI Tools Debug Symbols Artifact uses: actions/upload-artifact@v2 with: name: test.pdb path: ${{github.workspace}}\tmp\cli-p - name: Upload Artifacts to S3 if: github.event_name != 'pull_request' working-directory: ${{github.workspace}} shell: powershell env: AWS_DEFAULT_REGION: us-west-1 AWS_ACCESS_KEY_ID: ${{secrets.AWS_ACCESS_KEY_ID}} AWS_SECRET_ACCESS_KEY: ${{secrets.AWS_SECRET_ACCESS_KEY}} run: | aws s3 cp Release\test.zip s3://vgmstream-builds/${{github.sha}}/windows/ --acl public-read aws s3 cp Release\foo_input_vgmstream.fb2k-component s3://vgmstream-builds/${{github.sha}}/windows/ --acl public-read aws s3 cp Release\test.pdb.zip s3://vgmstream-builds/${{github.sha}}/windows/ --acl public-read aws s3 cp Release\foo_input_vgmstream.pdb.zip s3://vgmstream-builds/${{github.sha}}/windows/ --acl public-read echo ${{github.sha}} | tee latest_id git describe --always | tee latest_ver aws s3 cp latest_id s3://vgmstream-builds/ --acl public-read aws s3 cp latest_ver s3://vgmstream-builds/ --acl public-read - name: Web Request Action uses: Satak/webrequest-action@v1.2.3 if: github.event_name != 'pull_request' with: url: https://vgmstream-builds.losno.co/callFupa?secret=${{ secrets.FUPA_UPDATER_SECRET }}