2 Commits
Author SHA1 Message Date
ShrinkSDK Automation 098c4b098f fix(installer): support Unity 2022 package resolution
Publish UPM package / publish (push) Successful in 17s
2026-08-26 03:44:51 +08:00
ShrinkSDK Automation deea36068c ci: install Git in package publisher 2026-08-26 03:09:52 +08:00
11 changed files with 81 additions and 26 deletions
+11 -1
View File
@@ -15,6 +15,16 @@ jobs:
env:
NODE_AUTH_TOKEN: ${{ secrets.SHRINKSDK_PACKAGE_TOKEN }}
steps:
- name: Install Git
shell: bash
run: |
set -eu
if ! command -v git >/dev/null 2>&1; then
apt-get update
DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends git ca-certificates
rm -rf /var/lib/apt/lists/*
fi
- name: Fetch tagged revision
shell: bash
run: |
@@ -23,7 +33,7 @@ jobs:
test -n "$ref"
git init .
git remote add origin "https://git.crash.work/ShrinkSDK/Installer.git"
git fetch --depth=1 origin "$ref"
git fetch --depth=1 --tags origin "$ref"
git checkout --detach FETCH_HEAD
- name: Validate immutable release version
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: eac67073f2eb71043bb104ae8931248b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 87984663a86071f408003b68afa18e0c
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+6 -23
View File
@@ -14,7 +14,6 @@ namespace ShrinkSDK.Installer
{
private AddRequest? _addRequest;
private ListRequest? _listRequest;
private ResolveRequest? _resolveRequest;
private ShrinkSdkPackageEntry? _pendingInstall;
private int _selectedPackageIndex;
private string _status = "Ready";
@@ -70,27 +69,10 @@ namespace ShrinkSDK.Installer
EditorGUILayout.HelpBox(_status, _statusType);
}
private bool IsBusy => _resolveRequest != null || _addRequest != null || _listRequest != null;
private bool IsBusy => _addRequest != null || _listRequest != null;
private void Update()
{
if (_resolveRequest != null && _resolveRequest.IsCompleted)
{
var request = _resolveRequest;
_resolveRequest = null;
if (request.Status != StatusCode.Success)
{
SetStatus("Registry resolve failed: " + request.Error.message, MessageType.Error);
return;
}
if (_pendingInstall != null)
{
_addRequest = Client.Add(_pendingInstall.PackageSpecifier);
SetStatus("Installing " + _pendingInstall.PackageSpecifier, MessageType.Info);
}
}
if (_addRequest != null && _addRequest.IsCompleted)
{
var request = _addRequest;
@@ -129,8 +111,8 @@ namespace ShrinkSDK.Installer
{
ShrinkSdkManifestStore.EnsureShrinkSdkRegistry();
_pendingInstall = null;
_resolveRequest = Client.Resolve();
SetStatus("Registry configuration written. Resolving packages.", MessageType.Info);
Client.Resolve();
SetStatus("Registry configuration written. Unity is resolving packages.", MessageType.Info);
}
catch (Exception exception)
{
@@ -143,9 +125,10 @@ namespace ShrinkSDK.Installer
try
{
ShrinkSdkManifestStore.EnsureShrinkSdkRegistry();
Client.Resolve();
_pendingInstall = entry;
_resolveRequest = Client.Resolve();
SetStatus("Resolving registry for " + entry.PackageSpecifier, MessageType.Info);
_addRequest = Client.Add(entry.PackageSpecifier);
SetStatus("Installing " + entry.PackageSpecifier, MessageType.Info);
}
catch (Exception exception)
{
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 87b0b212685b2564eaa5586bb567bfab
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c7a718e89696b5d499781f9b04f63c27
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+11
View File
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 7a785469a5003c64ba3c5a7663d703fb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+1 -1
View File
@@ -9,5 +9,5 @@ The installer does not copy templates into `Assets`, does not store credentials,
## Bootstrap URL
```text
https://git.crash.work/ShrinkSDK/Installer.git#v0.1.0
https://git.crash.work/ShrinkSDK/Installer.git#v0.1.1
```
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: cce500f16cff60c4a975bb202bc57b0c
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "com.cneicy.shrink-installer",
"version": "0.1.0",
"version": "0.1.1",
"displayName": "ShrinkSDK Installer",
"description": "ShrinkSDK registry bootstrapper and fixed-version package installer.",
"unity": "2022.3",
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c41475e2d6261484695ef0f146b55a01
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: