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: