Skip to content

Commit 9cdc67d

Browse files
authored
Merge pull request #323 from 0xsequence/V5-EcosystemWallet
V5 Ecosystem Wallet
2 parents 4d32923 + 1d709b6 commit 9cdc67d

File tree

907 files changed

+79063
-3760
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

907 files changed

+79063
-3760
lines changed
Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: Unity Build Automation
2+
3+
on:
4+
pull_request:
5+
types: [opened, synchronize, reopened]
6+
7+
jobs:
8+
test-and-build:
9+
if: github.event_name == 'workflow_dispatch' || github.run_attempt > 1
10+
runs-on: ubuntu-latest
11+
environment: github-pages
12+
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
target:
17+
- mac-desktop
18+
- windows-desktop
19+
- ios
20+
- android
21+
22+
steps:
23+
- uses: actions/checkout@v3
24+
25+
# ✅ Step 2 — Trigger Cloud Build for this target
26+
- name: Trigger Cloud Build
27+
id: trigger
28+
run: |
29+
branch_name="${{ github.head_ref || github.ref_name }}"
30+
31+
build_number=$(curl -s -X POST \
32+
-H "Authorization: Basic ${{ secrets.UNITY_API_KEY }}" \
33+
-H "Content-Type: application/json" \
34+
-d "{\"clean\": true, \"delay\": 0, \"commit\": null, \"headless\": true, \"branch\": \"$branch_name\"}" \
35+
https://build-api.cloud.unity3d.com/api/v1/orgs/6872789246035/projects/5fac262b-e52e-42f7-a9d6-d4464b2ff80e/buildtargets/${{ matrix.target }}/builds \
36+
| jq '.[0].build' )
37+
38+
echo "build_number=$build_number" >> $GITHUB_OUTPUT
39+
40+
# 📡 Step 3 — Poll Cloud Build result
41+
- name: Poll Build Status
42+
run: |
43+
for i in {1..60}; do
44+
status=$(curl -s \
45+
-H "Authorization: Basic ${{ secrets.UNITY_API_KEY }}" \
46+
https://build-api.cloud.unity3d.com/api/v1/orgs/6872789246035/projects/5fac262b-e52e-42f7-a9d6-d4464b2ff80e/buildtargets/${{ matrix.target }}/builds/${{ steps.trigger.outputs.build_number }} | jq -r '.buildStatus')
47+
48+
echo "Status: $status"
49+
50+
if [ "$status" = "success" ]; then exit 0; fi
51+
if [ "$status" = "failed" ]; then exit 1; fi
52+
53+
sleep 60
54+
done
55+
56+
echo "Build timed out"
57+
exit 1
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: Unity Build Automation Release
2+
3+
on:
4+
push:
5+
branches:
6+
- master
7+
8+
jobs:
9+
run-on-merge:
10+
runs-on: ubuntu-latest
11+
environment: github-pages
12+
13+
strategy:
14+
fail-fast: false
15+
matrix:
16+
target:
17+
- ios-production
18+
19+
steps:
20+
- uses: actions/checkout@v3
21+
22+
- name: Trigger Cloud Build
23+
id: trigger
24+
run: |
25+
branch_name="${{ github.head_ref || github.ref_name }}"
26+
27+
build_number=$(curl -s -X POST \
28+
-H "Authorization: Basic ${{ secrets.UNITY_API_KEY }}" \
29+
-H "Content-Type: application/json" \
30+
-d "{\"clean\": true, \"delay\": 0, \"commit\": null, \"headless\": true, \"branch\": \"$branch_name\"}" \
31+
https://build-api.cloud.unity3d.com/api/v1/orgs/6872789246035/projects/5fac262b-e52e-42f7-a9d6-d4464b2ff80e/buildtargets/${{ matrix.target }}/builds \
32+
| jq '.[0].build' )

.github/workflows/unity-tests.yml

Lines changed: 0 additions & 53 deletions
This file was deleted.

.gitignore

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@
1212

1313
# Plugins
1414

15-
/[Aa]ssets/TextMesh Pro/
16-
/[Aa]ssets/TextMesh Pro.meta
15+
# /[Aa]ssets/TextMesh Pro/
16+
# /[Aa]ssets/TextMesh Pro.meta
1717
# MemoryCaptures can get excessive in size.
1818
# They also could contain extremely sensitive data
1919
/[Mm]emoryCaptures/
2020

2121
# Package Manager formatting
22-
/[Aa]ssets/TextMesh Pro
22+
# /[Aa]ssets/TextMesh Pro
2323
/[Aa]ssets/Resources
2424
/[Aa]ssets/Resources.meta
2525
/[Aa]ssets/Samples
@@ -122,5 +122,4 @@ Assets/SequenceSDK/WaaS/Tests/Resources/
122122
# Foundry
123123

124124
/testchain/lib
125-
/testchain/artifacts/*
126125

Assets/CloudBuild.meta

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
#!/bin/bash
2+
3+
set -e
4+
5+
echo "=== TestFlight Upload Script Starting ==="
6+
7+
# Only upload if enabled
8+
if [ "$ENABLE_TESTFLIGHT_UPLOAD" != "TRUE" ]; then
9+
echo "ENABLE_TESTFLIGHT_UPLOAD != TRUE, skipping upload."
10+
exit 0
11+
fi
12+
13+
# Workspace (Unity Cloud Build sets this)
14+
WORKSPACE="${WORKSPACE:-}"
15+
16+
if [ -z "$WORKSPACE" ]; then
17+
echo "ERROR: WORKSPACE environment variable is not set."
18+
exit 1
19+
fi
20+
21+
echo "Workspace: $WORKSPACE"
22+
23+
24+
# ----------------------------
25+
# Locate IPA file
26+
# ----------------------------
27+
28+
IPA_DIR="$WORKSPACE/.build/last/ios-production"
29+
IPA_PATH="$IPA_DIR/build.ipa"
30+
31+
echo "Looking for IPA at: $IPA_PATH"
32+
33+
if [ ! -f "$IPA_PATH" ]; then
34+
echo "IPA not found directly. Searching recursively under workspace..."
35+
IPA_PATH=$(find "$WORKSPACE" -type f -name "*.ipa" | head -n 1)
36+
fi
37+
38+
if [ -z "$IPA_PATH" ]; then
39+
echo "ERROR: No IPA file found anywhere under $WORKSPACE"
40+
exit 1
41+
fi
42+
43+
echo "Using IPA file: $IPA_PATH"
44+
45+
46+
# ----------------------------
47+
# Write the .p8 key to disk
48+
# ----------------------------
49+
50+
if [ -z "$APPSTORE_CONNECT_P8" ]; then
51+
echo "ERROR: APPSTORE_CONNECT_P8 environment variable missing."
52+
exit 1
53+
fi
54+
55+
if [ -z "$APPSTORE_CONNECT_KEY_ID" ]; then
56+
echo "ERROR: APPSTORE_CONNECT_KEY_ID missing."
57+
exit 1
58+
fi
59+
60+
if [ -z "$APPSTORE_CONNECT_ISSUER_ID" ]; then
61+
echo "ERROR: APPSTORE_CONNECT_ISSUER_ID missing."
62+
exit 1
63+
fi
64+
65+
# Replace literal "\n" with real newlines
66+
P8_CONTENT=$(printf "%b" "$APPSTORE_CONNECT_P8")
67+
68+
KEY_DIR="$HOME/.appstoreconnect/private_keys"
69+
KEY_PATH="$KEY_DIR/AuthKey_${APPSTORE_CONNECT_KEY_ID}.p8"
70+
71+
mkdir -p "$KEY_DIR"
72+
73+
echo "Writing App Store Connect private key to:"
74+
echo "$KEY_PATH"
75+
76+
printf "%b" "$P8_CONTENT" > "$KEY_PATH"
77+
78+
79+
# ----------------------------
80+
# Upload using altool
81+
# ----------------------------
82+
83+
echo "Uploading IPA to TestFlight via altool…"
84+
85+
UPLOAD_CMD="xcrun altool --upload-app \
86+
-f \"$IPA_PATH\" \
87+
-t ios \
88+
--apiKey $APPSTORE_CONNECT_KEY_ID \
89+
--apiIssuer $APPSTORE_CONNECT_ISSUER_ID"
90+
91+
echo "Running: $UPLOAD_CMD"
92+
93+
if eval $UPLOAD_CMD; then
94+
echo "=== Upload IPA to Appstore Connect finished successfully ==="
95+
else
96+
echo "=== Upload IPA to Appstore Connect FAILED ==="
97+
exit 1
98+
fi
99+
100+
echo "=== TestFlight Upload Script Completed ==="

Assets/CloudBuild/testflight_upload.sh.meta

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 35 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,36 @@
1-
<?xml version="1.0" encoding="utf-8"?>
2-
<manifest
3-
xmlns:android="http://schemas.android.com/apk/res/android"
4-
xmlns:tools="http://schemas.android.com/tools"
5-
>
6-
<application>
7-
<activity
8-
android:name="com.unity3d.player.UnityPlayerActivity"
9-
android:theme="@style/UnityThemeSelector"
10-
android:exported="true">
11-
<intent-filter>
12-
<action android:name="android.intent.action.MAIN" />
13-
<category android:name="android.intent.category.LAUNCHER" />
14-
</intent-filter>
15-
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
16-
<intent-filter>
17-
<action android:name="android.intent.action.VIEW" />
18-
<category android:name="android.intent.category.DEFAULT" />
19-
<category android:name="android.intent.category.BROWSABLE" />
20-
<data android:scheme="sdk-powered-by-sequence"/>
21-
</intent-filter>
22-
</activity>
23-
</application>
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools">
3+
<application>
4+
<activity android:name="com.unity3d.player.UnityPlayerActivity" android:theme="@style/UnityThemeSelector" android:exported="true">
5+
<intent-filter>
6+
<action android:name="android.intent.action.MAIN" />
7+
<category android:name="android.intent.category.LAUNCHER" />
8+
</intent-filter>
9+
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
10+
<intent-filter>
11+
<action android:name="android.intent.action.VIEW" />
12+
<category android:name="android.intent.category.DEFAULT" />
13+
<category android:name="android.intent.category.BROWSABLE" />
14+
<data android:scheme="comhorizongamesdemounitygame" />
15+
</intent-filter>
16+
<intent-filter>
17+
<action android:name="android.intent.action.VIEW" />
18+
<category android:name="android.intent.category.DEFAULT" />
19+
<category android:name="android.intent.category.BROWSABLE" />
20+
<data android:scheme="sdk-powered-by-sequence" />
21+
</intent-filter>
22+
</activity>
23+
</application>
24+
<queries>
25+
<intent>
26+
<action android:name="android.intent.action.VIEW" />
27+
<category android:name="android.intent.category.BROWSABLE" />
28+
<data android:scheme="http" />
29+
</intent>
30+
<intent>
31+
<action android:name="android.intent.action.VIEW" />
32+
<category android:name="android.intent.category.BROWSABLE" />
33+
<data android:scheme="https" />
34+
</intent>
35+
</queries>
2436
</manifest>

Assets/Plugins/Android/gradleTemplate.properties

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,4 @@ org.gradle.parallel=true
33
android.enableJetifier=true
44
android.useAndroidX=true
55
unityStreamingAssets=**STREAMING_ASSETS**
6-
**ADDITIONAL_PROPERTIES**
7-
8-
android.enableR8=**MINIFY_WITH_R_EIGHT**
6+
**ADDITIONAL_PROPERTIES**

Assets/Plugins/Android/mainTemplate.gradle

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,13 @@ apply plugin: 'com.android.library'
44
dependencies {
55
implementation fileTree(dir: 'libs', include: ['*.jar'])
66
implementation 'androidx.security:security-crypto:1.1.0-alpha03'
7+
implementation 'androidx.browser:browser:1.7.0'
78

89
**DEPS**}
910

1011
android {
12+
namespace "com.unity3d.player"
13+
ndkPath "**NDKPATH**"
1114
compileSdkVersion **APIVERSION**
1215
buildToolsVersion '**BUILDTOOLS**'
1316

0 commit comments

Comments
 (0)