You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
3.2 KiB

name: CI Build
on: [push, pull_request]
jobs:
windows-build:
strategy:
matrix:
cfg:
- {
os: windows-2022,
generator: Visual Studio 17 2022,
cmake-arch: Win32,
python-arch: x86,
str: windows-x86,
blender-url: "https://github.com/Hoikas/blender2.7/releases/download/blender2.79_20221113/blender-2.79.0-git20221114.f970f178c093-windows32.zip",
}
- {
os: windows-2022,
generator: Visual Studio 17 2022,
cmake-arch: x64,
python-arch: x64,
str: windows-x64,
blender-url: "https://github.com/Hoikas/blender2.7/releases/download/blender2.79_20221113/blender-2.79.0-git20221114.f970f178c093-windows64.zip",
}
env:
CMAKE_GENERATOR: ${{ matrix.cfg.generator }}
CMAKE_GENERATOR_PLATFORM: ${{ matrix.cfg.cmake-arch }}
runs-on: ${{ matrix.cfg.os }}
steps:
- name: Checkout
uses: actions/checkout@v3
with:
path: korman
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: "3.7"
architecture: ${{ matrix.cfg.python-arch }}
- name: Download Blender
run: |
curl --location "${{ matrix.cfg.blender-url }}" --output blender.zip
mkdir blender
7z x blender.zip -oblender -bsp1
- name: Build Standalone Korman
run: |
$BlenderSubDir = Split-Path -LeafBase $([System.URI]"${{ matrix.cfg.blender-url }}").Segments[-1]
korman/build.ps1 `
-Modern `
-BlenderDir "${{ github.workspace }}/blender/$BlenderSubDir" `
-NoInstaller -NoBlender
- name: Upload Standalone Korman
uses: actions/upload-artifact@v3
with:
name: korman-standalone-${{ matrix.cfg.str }}
path: build/package
- name: Build Korman+Blender Bundle
if: startsWith(github.ref, 'refs/tags')
run: |
Remove-Item -Recurse -Force build/package
korman/build.ps1 -Modern
- name: Upload Korman+Blender Bundle
if: startsWith(github.ref, 'refs/tags')
uses: actions/upload-artifact@v3
with:
name: korman-blender-${{ matrix.cfg.str }}
path: build/package
publish:
if: startsWith(github.ref, 'refs/tags')
needs: [windows-build]
runs-on: windows-latest
steps:
- name: Checkout Korman
uses: actions/checkout@v3
with:
path: korman
- name: Download Artifacts
id: download
uses: actions/download-artifact@v3
with:
path: artifacts
- name: Publish Release
run: |
korman/release.ps1 `
-Repository "${{ github.repository }}" `
-Token "${{ secrets.GITHUB_TOKEN }}" `
-UploadDir "${{ steps.download.outputs.download-path }}" `
-SubDirs @{
"korman-standalone-windows-x86" = "standalone"
"korman-standalone-windows-x64" = "standalone"
"korman-blender-windows-x86" = "bundled"
"korman-blender-windows-x64" = "bundled"
}