GitHub Action for NwPluginAPI or LabAPI based plugin development. Performs project build, runs tests and uploads artifacts with zipped dependencies.
Important
This action does not provide a .NET environment! You need to setup it on your own before running this action.
Warning
Testing capabilities are limited on Linux environments. Running tests for your project may require additional setup.
Name of main plugin assembly/project to package. This input is required!
Name of game files references environment variable used in the project. Triggers game files download when set. Default: $null.
Depot downloader version to use for game files download. Takes effect only when refs-variable is set. Check version compatibility table below for valid values. Default: 3.4.0.
Whether or not the tests should be run for the project. Default: true.
Amount of initial test runs. Takes effect only when refs-variable is set and run-tests is set to true. Default: 3.
List of assembly/project names to add into dependencies.zip file. Default: @().
Binary files path pattern to use, $ is replaced with assembly/project name. Default: /$/bin/Release/net48/$.
Other non-project assemblies/files to add into dependencies.zip file (full paths). Default: @().
Project build configuration. Consider changing bin-path input value alongside this. Default: Release.
| Action version | Supported depot downloader versions |
|---|---|
| 2.x.x | >= 2.6.0 |
| < 2.0.0 | < 2.6.0 |
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Build, test and upload artifacts
uses: Pogromca-SCP/build-nwapi-plugin@v2
with:
plugin-name: MyPluginjobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Build, test and upload artifacts
uses: Pogromca-SCP/build-nwapi-plugin@v2
with:
plugin-name: MyPlugin
refs-variable: SL_REFERENCES # Name of your environment variable used to reference SCP:SL filesjobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Build, test and upload artifacts
uses: Pogromca-SCP/build-nwapi-plugin@v2
with:
plugin-name: MyPlugin
dependencies: MyPlugin.CoreLib,MyPlugin.Utils
bin-path: /$/bin/Release/$ # Adjust bin path to match your project configurationjobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Build, test and upload artifacts
uses: Pogromca-SCP/build-nwapi-plugin@v2
with:
plugin-name: MyPlugin
includes: MyPlugin/bin/Harmony0.dll,README.md # Any file type can be addedjobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
dotnet-version: 8.0.x
- name: Build and upload artifacts
uses: Pogromca-SCP/build-nwapi-plugin@v2
with:
plugin-name: MyPlugin
run-tests: false