Skip to content

build-and-deploy-executables #82

build-and-deploy-executables

build-and-deploy-executables #82

name: build-and-deploy-executables
on:
workflow_dispatch: # workflow can be run manually from the actions tab
schedule:
- cron: '0 3 * * 0' # run workflow at 3am each sunday
jobs:
build:
runs-on: ${{ matrix.os }}
env:
CMAKE_BUILD_TYPE: "${{ matrix.build_type }}"
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v3
- run: ./build.sh
- run: |
if test -f "cocor.exe"; then
mv cocor.exe ./cocor.${{ matrix.os }}-${{ matrix.build_type }}.exe
else
mv cocor ./cocor.${{ matrix.os }}-${{ matrix.build_type }}
fi
- uses: actions/upload-artifact@v3
with:
name: cocor-executables
path: cocor.${{ matrix.os }}-${{ matrix.build_type }}*
if-no-files-found: error
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
build_type: [debug, release]
tag-wip:
runs-on: ubuntu-latest
permissions: write-all
needs: build
steps:
- uses: actions/checkout@v3
- uses: rickstaa/action-create-tag@v1
with:
tag: "wip"
message: "temporary: work in progress"
force_push_tag: true
deploy-executables-wip:
runs-on: ubuntu-latest
permissions: write-all
needs: tag-wip
steps:
- uses: actions/download-artifact@v3
with:
name: cocor-executables
- uses: ncipollo/release-action@v1
with:
tag: "wip"
name: "work in progress"
body: |
## Working on binary stream extensions
Rules for reading binary input chunks
prerelease: true
allowUpdates: true
removeArtifacts: true
artifacts: "*"