name: Release on: push: tags: - '*' branches: - master - main pull_request: branches: - master - main env: CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules jobs: build: runs-on: ${{ matrix.os }} strategy: matrix: os: [ ubuntu-latest, windows-latest, macos-latest ] steps: - uses: actions/checkout@v2 - uses: actions/cache@v2 with: path: "**/cpm_modules" key: ${{ matrix.os }}-${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }} - name: configure run: cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release - name: build run: cmake --build build -j4 --config Release - name: Get current date id: date run: echo "::set-output name=date::$(date +'%Y-%m-%d')" - name: zip uses: thedoctor0/zip-release@main with: type: zip filename: ${{ matrix.os }}.zip directory: build/out/ - uses: ncipollo/release-action@v1 with: allowUpdates: true artifacts: build/out/${{ matrix.os }}.zip tag: nightly-${{ steps.date.outputs.date }}