diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml new file mode 100644 index 0000000..1724cb4 --- /dev/null +++ b/.github/workflows/nightly.yaml @@ -0,0 +1,112 @@ +name: Nightly Releases + +on: + push: + branches: [ dev, ci/nightlies ] + pull_request: + branches: [ dev ] + +jobs: + macbuild: + runs-on: macos-11 + + steps: + - uses: actions/checkout@v2 + + - name: setup environment + uses: flucoma/actions/env@v2 + + - name: build toolkit + uses: flucoma/actions/sc@v2 + + - name: zip release + run: zip -r ../FluCoMa-SC-Mac-nightly.zip FluidCorpusManipulation + working-directory: install + + - uses: actions/upload-artifact@v2 + with: + name: macbuild + path: FluCoMa-SC-Mac-nightly.zip + + winbuild: + runs-on: windows-latest + + steps: + - uses: actions/checkout@v2 + + - name: setup environment + uses: flucoma/actions/env@v2 + + - name: build toolkit + uses: flucoma/actions/sc@v2 + + - name: remove pdb files + run: Remove-Item install -Recurse -Include *.pdb + + - name: zip release + run: Compress-Archive install/FluidCorpusManipulation FluCoMa-SC-Windows-nightly.zip + + - uses: actions/upload-artifact@v2 + with: + name: winbuild + path: FluCoMa-SC-Windows-nightly.zip + + linuxbuild: + runs-on: ubuntu-18.04 + + steps: + - uses: actions/checkout@v2 + + - name: setup environment + uses: flucoma/actions/env@v2 + + - name: build toolkit + uses: flucoma/actions/sc@v2 + + - name: zip release + run: zip -r ../FluCoMa-SC-Linux-nightly.zip FluidCorpusManipulation + working-directory: install + + - uses: actions/upload-artifact@v2 + with: + name: linuxbuild + path: FluCoMa-SC-Linux-nightly.zip + + release: + runs-on: ubuntu-latest + needs: [macbuild, winbuild, linuxbuild] + + steps: + - uses: actions/download-artifact@v2 + with: + name: macbuild + path: . + + - uses: actions/download-artifact@v2 + with: + name: winbuild + path: . + + - uses: actions/download-artifact@v2 + with: + name: linuxbuild + path: . + + - uses: dev-drprasad/delete-tag-and-release@v0.2.0 + with: + delete_release: true # default: false + tag_name: nightly # tag name to delete + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: package and upload + uses: svenstaro/upload-release-action@v2 + with: + release_name: FluCoMa SuperCollider Nightly Build + prerelease: true + body: "This is a nightly build of the FluCoMa SuperCollider package. As such, be warned there may be bugs or other unexpected behaviour. The build hash is ${{ github.sha }}" + repo_token: ${{ secrets.GITHUB_TOKEN }} + file: FluCoMa-SC-*.zip + file_glob: true + tag: nightly + overwrite: true