Skip to content

[misc] renamed imageimporterexported to imageimporter since we only i… #1849

[misc] renamed imageimporterexported to imageimporter since we only i…

[misc] renamed imageimporterexported to imageimporter since we only i… #1849

Workflow file for this run

name: build
on:
push:
paths-ignore:
- '**.md'
- 'funding.yml'
- '.gitignore'
- '.gitattributes'
- '.github/images'
- '.github/ISSUE_TEMPLATE'
- '**/*.hlsl'
pull_request:
paths-ignore:
- '**.md'
- 'funding.yml'
- '.gitignore'
- '.gitattributes'
- '.github/images'
- '.github/ISSUE_TEMPLATE'
- '**/*.hlsl'
jobs:
build:
strategy:
matrix:
include:
- api: vulkan
configuration: Release
- api: vulkan
configuration: Debug
- api: d3d12
configuration: Release
runs-on: "windows-latest"
env:
msbuild_path: C:\Program Files\Microsoft Visual Studio\2022\Enterprise\MSBuild\Current\Bin\
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.9'
- name: Install Python dependencies
run: python -m pip install requests tqdm
- name: Generate project files
shell: python
env:
API: ${{ matrix.api }}
run: |
import subprocess
import os
api = os.environ["API"]
subprocess.run(f"python generate_vs2022_{api}.py ci")
- name: Build
shell: cmd
run: '"%msbuild_path%\MSBuild.exe" /p:Platform=Windows /p:Configuration=${{ matrix.configuration }} /m spartan.sln'
- name: Create artifacts
if: github.event_name != 'pull_request' && matrix.api == 'vulkan'
shell: cmd
run: |
echo "Creating artifacts for ${{ matrix.api }} - ${{ matrix.configuration }}"
IF "${{ matrix.configuration }}" == "Release" (
echo "Creating binaries-only archive for Release..."
build_scripts\7z.exe a -bb1 spartan_vulkan_release.7z .\binaries\7z.exe .\binaries\dxcompiler.dll .\binaries\download_assets.py .\binaries\file_utilities.py .\binaries\fmod.dll .\binaries\data .\binaries\spartan_${{ matrix.api }}.exe
) ELSE (
echo "Creating binaries-only archive for Debug..."
build_scripts\7z.exe a -bb1 spartan_vulkan_debug.7z .\binaries\7z.exe .\binaries\dxcompiler.dll .\binaries\download_assets.py .\binaries\file_utilities.py .\binaries\fmodL.dll .\binaries\data .\binaries\spartan_${{ matrix.api }}_debug.exe
)
echo "Artifact creation completed for ${{ matrix.api }} - ${{ matrix.configuration }}"
- name: Upload artifact
if: github.event_name != 'pull_request' && matrix.api == 'vulkan'
uses: actions/upload-artifact@v4
with:
name: spartan_vulkan_${{ matrix.configuration == 'Release' && 'release' || 'debug' }}
path: spartan_vulkan_${{ matrix.configuration == 'Release' && 'release' || 'debug' }}.7z
release:
if: github.event_name != 'pull_request'
runs-on: "ubuntu-latest"
needs: build
permissions:
contents: write
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download vulkan release build
uses: actions/download-artifact@v4
with:
name: spartan_vulkan_release
path: spartan_vulkan_release.7z
- name: Download vulkan debug build
uses: actions/download-artifact@v4
with:
name: spartan_vulkan_debug
path: spartan_vulkan_debug.7z
- name: Publish release
uses: "marvinpinto/action-automatic-releases@latest"
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest"
prerelease: true
title: "Development Build"
files: |
spartan_vulkan_release.7z
spartan_vulkan_debug.7z
- name: Set environment file for release
run: echo "GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}" >> $GITHUB_ENV