feat: add GitHub Actions workflow for release automation and package creation

This commit is contained in:
Marvin
2026-04-20 05:10:44 +02:00
parent eb292b63e5
commit 3ba5a8d1ed
+71
View File
@@ -0,0 +1,71 @@
name: Release
on:
workflow_dispatch:
inputs:
version_override:
description: 'Version override (optional, e.g., 1.0.0.42)'
required: false
type: string
push:
tags:
- 'v*'
env:
DOTNET_VERSION: '8.0'
jobs:
build:
name: Build gregExtractor
runs-on: windows-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: ${{ env.DOTNET_VERSION }}
- name: Restore dependencies
run: dotnet restore gregExtractor.csproj
- name: Build Release
run: dotnet publish gregExtractor.csproj -c Release -o ./publish/extractor --self-contained false
- name: Create Release Package
shell: pwsh
run: |
$ver = "${{ github.run_number }}"
if ("${{ github.event.inputs.version_override }}") { $ver = "${{ github.event.inputs.version_override }}" }
if ("${{ github.ref }}".StartsWith("refs/tags/v")) { $ver = "${{ github.ref }}".Replace("refs/tags/v", "") }
$zipName = "gregExtractor-1.0.0.$ver-pre-win-x64.zip"
Compress-Archive -Path "./publish/extractor/*" -DestinationPath "./$zipName" -Force
echo "zip_name=$zipName" >> $env:GITHUB_ENV
- name: Upload Release Asset
uses: softprops/action-gh-release@v2
with:
draft: true
prerelease: true
files: ${{ env.zip_name }}
tag_name: v${{ github.run_number }}
name: gregExtractor v1.0.0.${{ github.run_number }}-pre
body: |
## gregExtractor v1.0.0.${{ github.run_number }}-pre
IL2CPP Assembly Analysis Tool for Data Center modding.
### Usage
1. Extract to folder
2. Run gregExtractor.exe
3. Select IL2CPP Assemblies folder (MelonLoader/Il2CppAssemblies)
4. Export categorized hooks
### Features
- IL2CPP Dummy-DLL analysis via Mono.Cecil
- Automatic hook categorization
- JSON export for gregCore mod
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}