From 68bb5b15ee402d5755fdfc7162306e7983d922bc Mon Sep 17 00:00:00 2001
From: Forest Anderson <14791619+AngelOnFira@users.noreply.github.com>
Date: Wed, 13 Mar 2024 22:08:14 +0000
Subject: [PATCH] ci: Build plugin asset (#21)
---
.github/workflows/release-please.yml | 18 ++++++++++++++++++
Assets/Rivet/Editor/ExportPlugin.cs | 18 ++++++++++++++++++
Assets/Rivet/Editor/ExportPlugin.cs.meta | 11 +++++++++++
3 files changed, 47 insertions(+)
create mode 100644 Assets/Rivet/Editor/ExportPlugin.cs
create mode 100644 Assets/Rivet/Editor/ExportPlugin.cs.meta
diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml
index 2808e3f..c5b1f19 100644
--- a/.github/workflows/release-please.yml
+++ b/.github/workflows/release-please.yml
@@ -14,6 +14,24 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: google-github-actions/release-please-action@v4
+ id: release
with:
token: ${{ secrets.GITHUB_TOKEN }}
release-type: simple
+
+ - uses: game-ci/unity-builder@v2
+ if: ${{ steps.release.outputs.release_created }}
+ env:
+ UNITY_SERIAL: ${{ secrets.UNITY_SERIAL }}
+ UNITY_EMAIL: ${{ secrets.UNITY_EMAIL }}
+ UNITY_PASSWORD: ${{ secrets.UNITY_PASSWORD }}
+ with:
+ unityVersion: 2022.3.19f1
+ buildMethod: ExportPackage.Export
+ customImage: "unityci/editor:ubuntu-2022.3.19f1-base-3"
+
+ - name: Upload Release Artifact
+ if: ${{ steps.release.outputs.release_created }}
+ env:
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ run: gh release upload ${{ steps.release.outputs.tag_name }} Rivet.unitypackage
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/ExportPlugin.cs b/Assets/Rivet/Editor/ExportPlugin.cs
new file mode 100644
index 0000000..2415839
--- /dev/null
+++ b/Assets/Rivet/Editor/ExportPlugin.cs
@@ -0,0 +1,18 @@
+using System.Linq;
+using UnityEditor;
+
+///
+/// Represents a class that exports a package containing assets related to the Rivet plugin.
+///
+public class ExportPackage
+{
+ ///
+ /// Exports the assets related to the Rivet plugin as a Unity package.
+ ///
+ public static void Export()
+ {
+ string[] projectContent = AssetDatabase.GetAllAssetPaths();
+ var assetsToExport = projectContent.Where(path => path.StartsWith("Assets/Rivet")).ToArray();
+ AssetDatabase.ExportPackage(assetsToExport, "Rivet.unitypackage", ExportPackageOptions.Recurse);
+ }
+}
\ No newline at end of file
diff --git a/Assets/Rivet/Editor/ExportPlugin.cs.meta b/Assets/Rivet/Editor/ExportPlugin.cs.meta
new file mode 100644
index 0000000..8605280
--- /dev/null
+++ b/Assets/Rivet/Editor/ExportPlugin.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 54ef17bce8e7748758018b7081a61f0f
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: