Skip dotnet build in CI (needs Dalamud hooks not in runner image)
CI / validate (push) Successful in 27s
CI / validate (push) Successful in 27s
Replace failing build step with restore + manifest validation. Full build requires /home/runner/.xlcore/dalamud/Hooks/dev/ which only exists on machines with Dalamud installed (XIVLauncher etc.). README documents how to enable build-CI in downstream repos.
This commit is contained in:
+14
-6
@@ -1,5 +1,13 @@
|
|||||||
name: CI
|
name: CI
|
||||||
|
|
||||||
|
# Dalamud-Plugin-CI: Restore + Manifest-Validation only.
|
||||||
|
# Full build (`dotnet build`) is intentionally OFF in this template because
|
||||||
|
# Dalamud.NET.Sdk needs a local Dalamud installation at /home/runner/.xlcore/dalamud/Hooks/dev/
|
||||||
|
# which doesn't exist on a fresh CI runner. To enable build-CI on your downstream repo:
|
||||||
|
# - either set up a step that downloads the Dalamud distribution before build,
|
||||||
|
# - or reuse goatcorp's published action for Dalamud-CI,
|
||||||
|
# - or run build only locally and let CI cover lint/manifest-validation.
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [main]
|
branches: [main]
|
||||||
@@ -7,7 +15,7 @@ on:
|
|||||||
branches: [main]
|
branches: [main]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
validate:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -17,11 +25,11 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
dotnet-version: '9.0.x'
|
dotnet-version: '9.0.x'
|
||||||
|
|
||||||
- name: Restore
|
- name: Restore (validates csproj + NuGet refs resolve)
|
||||||
run: dotnet restore
|
run: dotnet restore
|
||||||
|
|
||||||
- name: Build (Release)
|
- name: Verify YAML manifest exists
|
||||||
run: dotnet build -c Release --no-restore
|
run: test -f PluginNameTemplate.yaml || (echo "::error::Manifest yaml missing" && exit 1)
|
||||||
|
|
||||||
- name: Verify Dalamud manifest exists
|
- name: Verify repo.json is valid JSON
|
||||||
run: test -f bin/Release/PluginNameTemplate/PluginNameTemplate.json
|
run: jq empty repo.json
|
||||||
|
|||||||
Reference in New Issue
Block a user