Skip to content

blurry face

blurry face #60

Workflow file for this run

name: Build Geode Mod
on:
workflow_dispatch:
push:
branches:
- "**"
jobs:
build:
strategy:
fail-fast: false
matrix:
config:
- name: Windows
os: windows-latest
build-type: RelWithDebInfo
- name: macOS
os: macos-latest
- name: iOS
os: macos-latest
target: iOS
- name: Android32
os: ubuntu-latest
target: Android32
- name: Android64
os: ubuntu-latest
target: Android64
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
steps:
- uses: actions/checkout@v4
- name: Compile the mod
uses: geode-sdk/build-geode-mod@main
with:
combine: true
export-pdb: true
export-symbols: true
target: ${{ matrix.config.target }}
build-config: ${{ matrix.config.build-type || 'Release'}}
package:
name: Package Builds
runs-on: ubuntu-latest
needs: ["build"]
steps:
- uses: geode-sdk/build-geode-mod/combine@main
id: build
- uses: actions/upload-artifact@v4
with:
name: Build Output
path: ${{ steps.build.outputs.build-output }}
nightly:
name: Nightly Release
runs-on: ubuntu-latest
needs: ["package"]
permissions:
contents: write
steps:
- uses: actions/download-artifact@v4
with:
path: ./artifacts/
- name: Get latest release tag
id: getrelease
run: echo "tag=$(curl -s https://api.github.com/repos/${{ github.event.repository.full_name }}/releases/latest | jq -r '.tag_name // "${{ github.event.repository.default_branch }}"')" >> $GITHUB_OUTPUT
- name: Publish Nightly release
id: publish-nightly
if: ${{ github.ref_name == github.event.repository.default_branch }}
uses: andelf/nightly-release@main
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: nightly
name: "Development Release"
body: |
**Development build for commit ${{ github.sha }}**.
> [`View Current Changes`](${{ github.event.repository.html_url }}/compare/${{ steps.getrelease.outputs.tag }}...nightly)
files: |
./artifacts/Build Output/*.*
- name: Check for Discord webhook URL
id: check-discord
if: ${{ github.ref_name == github.event.repository.default_branch && steps.publish-nightly.outputs.id != '' }}
run: echo "has-nightly-webhook=${{ secrets.NIGHTLY_WEBHOOK != '' }}" >> $GITHUB_OUTPUT
- name: Send Discord webhook
if: ${{ steps.check-discord.outputs.has-nightly-webhook == 'true' }}
uses: BlueWitherer/discord-webhook@main
with:
webhook-url: ${{ secrets.NIGHTLY_WEBHOOK }}
files: |
./artifacts/Build Output/*.geode
embed-title: "[${{ github.event.repository.name }}] Nightly Release"
embed-description: |
**Development build for commit [`${{ github.sha }}`](${{ github.event.repository.html_url}}/commit/${{ github.sha }})**.
> [`View Current Changes`](${{ github.event.repository.html_url }}/compare/${{ steps.getrelease.outputs.tag }}...nightly)
embed-color: "#d29922"
embed-url: ${{ steps.publish-nightly.outputs.url }}
embed-author: ${{ github.actor }}
embed-author-icon: "https://avatars.githubusercontent.com/u/${{ github.actor_id }}?v=4"
embed-thumbnail: "https://raw.githubusercontent.com/${{ github.repository }}/refs/tags/nightly/logo.png"
embed-timestamp: "now"