1
0
Fork 0
mirror of https://github.com/TheLartians/ModernCppStarter.git synced 2025-08-30 13:41:13 +02:00

feat: add release action

This commit is contained in:
Alexandre Tolstenko 2022-12-02 10:58:14 -05:00
parent f530172a7e
commit 5c1538f56e
2 changed files with 63 additions and 0 deletions

58
.github/workflows/release.yml vendored Normal file
View file

@ -0,0 +1,58 @@
name: Release
on:
push:
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: zip
uses: thedoctor0/zip-release@main
with:
type: zip
filename: ${{ matrix.os }}.zip
directory: build/out/
- name: ls
run: ls
- name: ls
run: ls build
- name: ls
run: ls build/out
- uses: ncipollo/release-action@v1
with:
allowUpdates: true
artifacts: build/out/${{ matrix.os }}.zip
tag: latest

View file

@ -18,6 +18,11 @@ if(PROJECT_SOURCE_DIR STREQUAL PROJECT_BINARY_DIR)
)
endif()
# ---- Set output directories ----
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/out)
set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/out)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/out)
# ---- Add dependencies via CPM ----
# see https://github.com/TheLartians/CPM.cmake for more info