name: build-upload on: workflow_dispatch: push: jobs: check_date: runs-on: ubuntu-latest name: Check latest commit outputs: should_run: ${{ steps.should_run.outputs.should_run }} steps: - uses: actions/checkout@v3 - name: print latest_commit run: echo ${{ github.sha }} - id: should_run continue-on-error: true name: check latest commit is less than a day if: ${{ github.event_name == 'schedule' }} run: test -z $(git rev-list --after="24 hours" ${{ github.sha }}) && echo "::set-output name=should_run::false" create-nightly-html5: needs: check_date if: ${{ needs.check_date.outputs.should_run != 'false'}} runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 with: submodules: 'recursive' token: ${{ secrets.GH_RO_PAT }} - uses: ./.github/actions/setup-haxeshit - name: Build game run: | sudo apt-get update sudo apt-get install -y libx11-dev xorg-dev libgl-dev libxi-dev libxext-dev libasound2-dev libxinerama-dev libxrandr-dev libgl1-mesa-dev haxelib run lime build html5 -release --times ls - uses: ./.github/actions/upload-itch with: butler-key: ${{ secrets.BUTLER_API_KEY}} build-dir: export/release/html5/bin target: html5 create-nightly-win: needs: check_date if: ${{ needs.check_date.outputs.should_run != 'false'}} runs-on: windows-latest permissions: contents: write actions: write steps: - uses: actions/checkout@v3 with: submodules: 'recursive' token: ${{ secrets.GH_RO_PAT }} - uses: ./.github/actions/setup-haxeshit - name: Build game run: | haxelib run lime build windows -release -DNO_REDIRECT_ASSETS_FOLDER dir - uses: ./.github/actions/upload-itch with: butler-key: ${{ secrets.BUTLER_API_KEY}} build-dir: export/release/windows/bin target: win test-unit-win: needs: create-nightly-win runs-on: windows-latest permissions: contents: write actions: write steps: - uses: actions/checkout@v3 with: submodules: 'recursive' token: ${{ secrets.GH_RO_PAT }} - uses: ./.github/actions/setup-haxeshit - name: Run unit tests run: | cd ./tests/unit/ ./start-win-native.bat