Skip to content

Commit

Permalink
CI Testing
Browse files Browse the repository at this point in the history
  • Loading branch information
dashodanger committed Aug 16, 2024
1 parent 58fcacb commit 2224b65
Show file tree
Hide file tree
Showing 2 changed files with 107 additions and 5 deletions.
73 changes: 73 additions & 0 deletions .github/workflows/cmake-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: CMake-Release

on:
release:
types: [prereleased]

env:
# Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.)
BUILD_TYPE: Release
# The number of days to retain artifacts
RETENTION_DAYS: 30

jobs:
build-win32:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Download w64devkit
run: invoke-webrequest https://github.com/skeeto/w64devkit/releases/download/v1.23.0/w64devkit-i686-1.23.0.zip -outfile ${{github.workspace}}\w64devkit.zip
- name: Extract w64devkit
run: expand-archive -path ${{github.workspace}}\w64devkit.zip -destinationpath ${{github.workspace}}
- name: Set environment variables and build
run: |
$env:Path = "${{github.workspace}}\w64devkit\bin;" + $env:Path
cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -DCMAKE_C_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -G "MinGW Makefiles"
cmake --build build --config ${{env.BUILD_TYPE}}
strip ${{github.workspace}}\obsidian.exe
- uses: actions/upload-artifact@v4
with:
name: obsidian-win32
path: |
addons
data
engines
games
language
modules
ports
scripts
theme
tools
obsidian.exe
retention-days: ${{env.RETENTION_DAYS}}
build-win64:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Download w64devkit
run: invoke-webrequest https://github.com/skeeto/w64devkit/releases/download/v1.23.0/w64devkit-1.23.0.zip -outfile ${{github.workspace}}\w64devkit.zip
- name: Extract w64devkit
run: expand-archive -path ${{github.workspace}}\w64devkit.zip -destinationpath ${{github.workspace}}
- name: Set environment variables and build
run: |
$env:Path = "${{github.workspace}}\w64devkit\bin;" + $env:Path
cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -DCMAKE_C_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -G "MinGW Makefiles"
cmake --build build --config ${{env.BUILD_TYPE}}
strip ${{github.workspace}}\obsidian.exe
- uses: actions/upload-artifact@v4
with:
name: obsidian-win64
path: |
addons
data
engines
games
language
modules
ports
scripts
theme
tools
obsidian.exe
retention-days: ${{env.RETENTION_DAYS}}
39 changes: 34 additions & 5 deletions .github/workflows/cmake.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,43 @@ on:
branches: [ obsidian ]

jobs:
build-win64:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Download w64devkit
run: invoke-webrequest https://github.com/skeeto/w64devkit/releases/download/v1.23.0/w64devkit-1.23.0.zip -outfile ${{github.workspace}}\w64devkit.zip
- name: Extract w64devkit
run: expand-archive -path ${{github.workspace}}\w64devkit.zip -destinationpath ${{github.workspace}}
- name: Set environment variables and build
run: |
$env:Path = "${{github.workspace}}\w64devkit\bin;" + $env:Path
cmake -B build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}} -DCMAKE_CXX_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -DCMAKE_C_FLAGS="-isystem ${{github.workspace}}\w64devkit\include" -G "MinGW Makefiles"
cmake --build build --config ${{env.BUILD_TYPE}}
strip ${{github.workspace}}\obsidian.exe
- uses: actions/upload-artifact@v4
with:
name: obsidian-win64
path: |
addons
data
engines
games
language
modules
ports
scripts
theme
tools
obsidian.exe
build-linux:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
# You can convert this to a matrix build if you need cross-platform coverage.
# See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Install dependencies
run: |
Expand All @@ -34,9 +63,9 @@ jobs:
run: cmake --install build/dist

- name: Upload artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: linux-x64
name: obsidian-linux-x64
path: install
build-macos:
# The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
Expand All @@ -45,7 +74,7 @@ jobs:
runs-on: macos-latest

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: Configure CMake
# Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
Expand All @@ -60,7 +89,7 @@ jobs:
run: cmake --install build/dist

- name: Upload artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: obsidian-macos
path: install

0 comments on commit 2224b65

Please sign in to comment.